From a932d19f91c10656cd050c406942a0c507f265a0 Mon Sep 17 00:00:00 2001 From: eazybytes Date: Sat, 13 Jul 2024 15:20:54 +0530 Subject: [PATCH] Thanks for choosing to learn from EazyBytes --- README.md | 20 +- SpringSecurity.postman_collection.json | 3095 ++- .../.gitignore | 0 .../.mvn/wrapper/maven-wrapper.properties | 18 + section1/springsecsection1/mvnw | 250 + section1/springsecsection1/mvnw.cmd | 146 + .../pom.xml | 20 +- .../EazyBankBackendApplication.java | 6 +- .../controller/WelcomeController.java | 6 +- .../src/main/resources/application.properties | 6 + .../EazyBankBackendApplicationTests.java} | 4 +- .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 2 - section1/springsecuritybasic/mvnw | 316 - section1/springsecuritybasic/mvnw.cmd | 188 - .../SpringsecuritybasicApplication.java | 15 - .../src/main/resources/application.properties | 2 - .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section2/springsecsection2/mvnw | 448 +- section2/springsecsection2/mvnw.cmd | 284 +- section2/springsecsection2/pom.xml | 14 +- .../eazybytes/EazyBankBackendApplication.java | 6 +- .../config/ProjectSecurityConfig.java | 34 +- .../controller/AccountController.java | 2 +- .../controller/BalanceController.java | 2 +- .../eazybytes/controller/CardsController.java | 2 +- .../controller/ContactController.java | 2 +- .../eazybytes/controller/LoansController.java | 4 +- .../controller/NoticesController.java | 2 +- .../src/main/resources/application.properties | 8 +- .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section3/springsecsection3/mvnw | 448 +- section3/springsecsection3/mvnw.cmd | 284 +- section3/springsecsection3/pom.xml | 30 +- .../eazybytes/EazyBankBackendApplication.java | 6 +- .../eazybytes/config/EazyBankUserDetails.java | 39 - .../config/ProjectSecurityConfig.java | 79 +- .../controller/AccountController.java | 2 +- .../controller/BalanceController.java | 2 +- .../eazybytes/controller/CardsController.java | 2 +- .../controller/ContactController.java | 2 +- .../eazybytes/controller/LoansController.java | 4 +- .../eazybytes/controller/LoginController.java | 37 - .../controller/NoticesController.java | 2 +- .../java/com/eazybytes/model/Customer.java | 51 - .../src/main/resources/application.properties | 9 +- .../src/main/resources/sql/scripts.sql | 30 - .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section4/springsecsection4/mvnw | 448 +- section4/springsecsection4/mvnw.cmd | 284 +- section4/springsecsection4/pom.xml | 30 +- .../eazybytes/EazyBankBackendApplication.java | 8 +- .../eazybytes/config/EazyBankUserDetails.java | 39 - .../config/EazyBankUserDetailsService.java | 30 + .../config/ProjectSecurityConfig.java | 33 +- .../controller/AccountController.java | 2 +- .../controller/BalanceController.java | 2 +- .../eazybytes/controller/CardsController.java | 2 +- .../controller/ContactController.java | 2 +- .../eazybytes/controller/LoansController.java | 4 +- .../eazybytes/controller/LoginController.java | 44 - .../controller/NoticesController.java | 2 +- .../eazybytes/controller/UserController.java | 41 + .../java/com/eazybytes/model/Customer.java | 46 +- .../repository/CustomerRepository.java | 8 +- .../src/main/resources/application.properties | 15 +- .../src/main/resources/sql/scripts.sql | 28 +- .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section5/springsecsection5/mvnw | 448 +- section5/springsecsection5/mvnw.cmd | 284 +- section5/springsecsection5/pom.xml | 30 +- .../eazybytes/EazyBankBackendApplication.java | 8 +- .../config/EazyBankUserDetailsService.java | 30 + ...BankUsernamePwdAuthenticationProvider.java | 51 - .../config/ProjectSecurityConfig.java | 33 +- .../controller/AccountController.java | 2 +- .../controller/BalanceController.java | 2 +- .../eazybytes/controller/CardsController.java | 2 +- .../controller/ContactController.java | 2 +- .../eazybytes/controller/LoansController.java | 4 +- .../eazybytes/controller/LoginController.java | 44 - .../controller/NoticesController.java | 2 +- .../eazybytes/controller/UserController.java | 41 + .../java/com/eazybytes/model/Customer.java | 46 +- .../repository/CustomerRepository.java | 8 +- .../src/main/resources/application.properties | 15 +- .../src/main/resources/sql/scripts.sql | 28 +- .../bank-app-ui/karma.conf.js | 44 - .../bank-app-ui/package-lock.json | 20539 --------------- .../bank-app-ui/package.json | 44 - .../bank-app-ui/src/app/app.component.spec.ts | 35 - .../account/account.component.spec.ts | 25 - .../balance/balance.component.spec.ts | 25 - .../components/cards/cards.component.spec.ts | 25 - .../header/header.component.spec.ts | 25 - .../components/home/home.component.spec.ts | 23 - .../components/loans/loans.component.spec.ts | 25 - .../components/login/login.component.spec.ts | 25 - .../logout/logout.component.spec.ts | 25 - .../notices/notices.component.spec.ts | 25 - .../src/app/routeguards/auth.routeguard.ts | 23 - .../app/services/login/login.service.spec.ts | 16 - .../src/environments/environment.prod.ts | 3 - .../src/environments/environment.ts | 17 - .../bank-app-ui/src/polyfills.ts | 53 - .../bank-app-ui/src/test.ts | 26 - section6/bank-app-ui/.browserslistrc | 16 - section6/bank-app-ui/.vscode/extensions.json | 4 - section6/bank-app-ui/.vscode/launch.json | 20 - section6/bank-app-ui/.vscode/tasks.json | 42 - section6/bank-app-ui/karma.conf.js | 44 - section6/bank-app-ui/package-lock.json | 20539 --------------- section6/bank-app-ui/package.json | 44 - .../bank-app-ui/src/app/app.component.spec.ts | 35 - .../account/account.component.spec.ts | 25 - .../balance/balance.component.spec.ts | 25 - .../components/cards/cards.component.spec.ts | 25 - .../header/header.component.spec.ts | 25 - .../components/home/home.component.spec.ts | 23 - .../components/loans/loans.component.spec.ts | 25 - .../components/login/login.component.spec.ts | 25 - .../logout/logout.component.spec.ts | 25 - .../notices/notices.component.spec.ts | 25 - .../src/app/routeguards/auth.routeguard.ts | 23 - .../app/services/login/login.service.spec.ts | 16 - .../src/environments/environment.prod.ts | 3 - .../src/environments/environment.ts | 17 - section6/bank-app-ui/src/polyfills.ts | 53 - section6/bank-app-ui/src/test.ts | 26 - .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section6/springsecsection6/mvnw | 448 +- section6/springsecsection6/mvnw.cmd | 284 +- section6/springsecsection6/pom.xml | 30 +- .../eazybytes/EazyBankBackendApplication.java | 6 +- ...ProdUsernamePwdAuthenticationProvider.java | 40 + .../config/EazyBankUserDetailsService.java | 30 + ...BankUsernamePwdAuthenticationProvider.java | 36 +- .../config/ProjectSecurityConfig.java | 60 +- .../config/ProjectSecurityProdConfig.java | 44 + .../constants/ApplicationConstants.java | 8 - .../controller/AccountController.java | 16 +- .../controller/BalanceController.java | 20 +- .../eazybytes/controller/CardsController.java | 18 +- .../controller/ContactController.java | 26 +- .../eazybytes/controller/LoansController.java | 18 +- .../eazybytes/controller/LoginController.java | 60 - .../controller/NoticesController.java | 23 +- .../eazybytes/controller/UserController.java | 41 + .../eazybytes/model/AccountTransactions.java | 113 - .../java/com/eazybytes/model/Accounts.java | 59 - .../main/java/com/eazybytes/model/Cards.java | 103 - .../java/com/eazybytes/model/Contact.java | 79 - .../java/com/eazybytes/model/Customer.java | 79 +- .../main/java/com/eazybytes/model/Loans.java | 103 - .../main/java/com/eazybytes/model/Notice.java | 91 - .../repository/CustomerRepository.java | 8 +- .../src/main/resources/application.properties | 18 +- .../resources/application_prod.properties | 11 + .../src/main/resources/sql/scripts.sql | 175 +- .../eazyschool-end}/.gitignore | 0 .../.mvn/wrapper/MavenWrapperDownloader.java | 117 + .../.mvn/wrapper/maven-wrapper.jar | Bin 0 -> 50710 bytes .../.mvn/wrapper/maven-wrapper.properties | 2 + .../eazyschool-end}/mvnw | 18 +- .../eazyschool-end}/mvnw.cmd | 30 +- section7/eazyschool-end/pom.xml | 66 + .../eazyschool/EazyschoolApplication.java | 6 +- .../config/ProjectSecurityConfig.java | 71 + .../eazyschool/config/WebConfig.java | 16 + .../controller/ContactController.java | 63 + .../controller/DashboardController.java | 24 + .../controller/HolidaysController.java | 47 + .../eazyschool/controller/HomeController.java | 15 + .../controller/LoginController.java | 28 + .../CustomAuthenticationFailureHandler.java | 23 + .../CustomAuthenticationSuccessHandler.java | 24 + .../eazybytes/eazyschool/model/Contact.java | 40 + .../eazybytes/eazyschool/model/Holiday.java | 15 + .../eazyschool/service/ContactService.java | 47 + .../src/main/resources/application.properties | 4 + .../static/assets/css/style-starter.css | 21279 ++++++++++++++++ .../resources/static/assets/images/banner.jpg | Bin 0 -> 242347 bytes .../resources/static/assets/images/banner.png | Bin 0 -> 210492 bytes .../static/assets/images/banner3.jpg | Bin 0 -> 187404 bytes .../resources/static/assets/images/bg1.jpg | Bin 0 -> 53647 bytes .../resources/static/assets/images/bg2.jpg | Bin 0 -> 51561 bytes .../resources/static/assets/images/bg3.jpg | Bin 0 -> 201844 bytes .../resources/static/assets/images/blog1.jpg | Bin 0 -> 56466 bytes .../resources/static/assets/images/blog2.jpg | Bin 0 -> 54765 bytes .../resources/static/assets/images/blog3.jpg | Bin 0 -> 45263 bytes .../resources/static/assets/images/c1.jpg | Bin 0 -> 57402 bytes .../resources/static/assets/images/c2.jpg | Bin 0 -> 57458 bytes .../resources/static/assets/images/c3.jpg | Bin 0 -> 61877 bytes .../resources/static/assets/images/c4.jpg | Bin 0 -> 38884 bytes .../resources/static/assets/images/c5.jpg | Bin 0 -> 49170 bytes .../resources/static/assets/images/c6.jpg | Bin 0 -> 74724 bytes .../resources/static/assets/images/icon-1.png | Bin 0 -> 1524 bytes .../resources/static/assets/images/icon-2.png | Bin 0 -> 741 bytes .../resources/static/assets/images/icon-3.png | Bin 0 -> 940 bytes .../resources/static/assets/images/icon-4.png | Bin 0 -> 1704 bytes .../resources/static/assets/images/image.jpg | Bin 0 -> 103524 bytes .../resources/static/assets/images/img1.jpg | Bin 0 -> 97927 bytes .../resources/static/assets/images/team1.png | Bin 0 -> 66243 bytes .../resources/static/assets/images/team2.png | Bin 0 -> 81358 bytes .../resources/static/assets/images/team3.png | Bin 0 -> 78307 bytes .../resources/static/assets/images/team4.png | Bin 0 -> 85516 bytes .../resources/static/assets/images/testi1.jpg | Bin 0 -> 9009 bytes .../resources/static/assets/images/testi2.jpg | Bin 0 -> 4971 bytes .../resources/static/assets/images/testi3.jpg | Bin 0 -> 8824 bytes .../static/assets/js/bootstrap.min.js | 7 + .../resources/static/assets/js/counter.js | 98 + .../static/assets/js/jquery-3.3.1.min.js | 2 + .../static/assets/js/theme-change.js | 22 + .../static/assets/webfonts/fa-brands-400.eot | Bin 0 -> 136822 bytes .../static/assets/webfonts/fa-brands-400.svg | 3717 +++ .../static/assets/webfonts/fa-brands-400.ttf | Bin 0 -> 136516 bytes .../static/assets/webfonts/fa-brands-400.woff | Bin 0 -> 92136 bytes .../assets/webfonts/fa-brands-400.woff2 | Bin 0 -> 78472 bytes .../static/assets/webfonts/fa-regular-400.eot | Bin 0 -> 34350 bytes .../static/assets/webfonts/fa-regular-400.svg | 801 + .../static/assets/webfonts/fa-regular-400.ttf | Bin 0 -> 34052 bytes .../assets/webfonts/fa-regular-400.woff | Bin 0 -> 16776 bytes .../assets/webfonts/fa-regular-400.woff2 | Bin 0 -> 13588 bytes .../static/assets/webfonts/fa-solid-900.eot | Bin 0 -> 204814 bytes .../static/assets/webfonts/fa-solid-900.svg | 5028 ++++ .../static/assets/webfonts/fa-solid-900.ttf | Bin 0 -> 204528 bytes .../static/assets/webfonts/fa-solid-900.woff | Bin 0 -> 104280 bytes .../static/assets/webfonts/fa-solid-900.woff2 | Bin 0 -> 80252 bytes .../src/main/resources/templates/about.html | 216 + .../src/main/resources/templates/contact.html | 213 + .../src/main/resources/templates/courses.html | 259 + .../main/resources/templates/dashboard.html | 136 + .../src/main/resources/templates/footer.html | 61 + .../src/main/resources/templates/header.html | 65 + .../main/resources/templates/holidays.html | 170 + .../src/main/resources/templates/home.html | 442 + .../src/main/resources/templates/login.html | 151 + .../EazyschoolApplicationTests.java | 4 +- .../eazyschool-start}/.gitignore | 0 .../.mvn/wrapper/MavenWrapperDownloader.java | 117 + .../.mvn/wrapper/maven-wrapper.jar | Bin 0 -> 50710 bytes .../.mvn/wrapper/maven-wrapper.properties | 2 + .../eazyschool-start}/mvnw | 18 +- .../eazyschool-start}/mvnw.cmd | 30 +- section7/eazyschool-start/pom.xml | 66 + .../eazyschool/EazyschoolApplication.java | 13 + .../config/ProjectSecurityConfig.java | 59 + .../eazyschool/config/WebConfig.java | 16 + .../controller/ContactController.java | 63 + .../controller/DashboardController.java | 22 + .../controller/HolidaysController.java | 47 + .../eazyschool/controller/HomeController.java | 15 + .../controller/LoginController.java | 19 + .../eazybytes/eazyschool/model/Contact.java | 40 + .../eazybytes/eazyschool/model/Holiday.java | 15 + .../eazyschool/service/ContactService.java | 47 + .../src/main/resources/application.properties | 4 + .../static/assets/css/style-starter.css | 21279 ++++++++++++++++ .../resources/static/assets/images/banner.jpg | Bin 0 -> 242347 bytes .../resources/static/assets/images/banner.png | Bin 0 -> 210492 bytes .../static/assets/images/banner3.jpg | Bin 0 -> 187404 bytes .../resources/static/assets/images/bg1.jpg | Bin 0 -> 53647 bytes .../resources/static/assets/images/bg2.jpg | Bin 0 -> 51561 bytes .../resources/static/assets/images/bg3.jpg | Bin 0 -> 201844 bytes .../resources/static/assets/images/blog1.jpg | Bin 0 -> 56466 bytes .../resources/static/assets/images/blog2.jpg | Bin 0 -> 54765 bytes .../resources/static/assets/images/blog3.jpg | Bin 0 -> 45263 bytes .../resources/static/assets/images/c1.jpg | Bin 0 -> 57402 bytes .../resources/static/assets/images/c2.jpg | Bin 0 -> 57458 bytes .../resources/static/assets/images/c3.jpg | Bin 0 -> 61877 bytes .../resources/static/assets/images/c4.jpg | Bin 0 -> 38884 bytes .../resources/static/assets/images/c5.jpg | Bin 0 -> 49170 bytes .../resources/static/assets/images/c6.jpg | Bin 0 -> 74724 bytes .../resources/static/assets/images/icon-1.png | Bin 0 -> 1524 bytes .../resources/static/assets/images/icon-2.png | Bin 0 -> 741 bytes .../resources/static/assets/images/icon-3.png | Bin 0 -> 940 bytes .../resources/static/assets/images/icon-4.png | Bin 0 -> 1704 bytes .../resources/static/assets/images/image.jpg | Bin 0 -> 103524 bytes .../resources/static/assets/images/img1.jpg | Bin 0 -> 97927 bytes .../resources/static/assets/images/team1.png | Bin 0 -> 66243 bytes .../resources/static/assets/images/team2.png | Bin 0 -> 81358 bytes .../resources/static/assets/images/team3.png | Bin 0 -> 78307 bytes .../resources/static/assets/images/team4.png | Bin 0 -> 85516 bytes .../resources/static/assets/images/testi1.jpg | Bin 0 -> 9009 bytes .../resources/static/assets/images/testi2.jpg | Bin 0 -> 4971 bytes .../resources/static/assets/images/testi3.jpg | Bin 0 -> 8824 bytes .../static/assets/js/bootstrap.min.js | 7 + .../resources/static/assets/js/counter.js | 98 + .../static/assets/js/jquery-3.3.1.min.js | 2 + .../static/assets/js/theme-change.js | 22 + .../static/assets/webfonts/fa-brands-400.eot | Bin 0 -> 136822 bytes .../static/assets/webfonts/fa-brands-400.svg | 3717 +++ .../static/assets/webfonts/fa-brands-400.ttf | Bin 0 -> 136516 bytes .../static/assets/webfonts/fa-brands-400.woff | Bin 0 -> 92136 bytes .../assets/webfonts/fa-brands-400.woff2 | Bin 0 -> 78472 bytes .../static/assets/webfonts/fa-regular-400.eot | Bin 0 -> 34350 bytes .../static/assets/webfonts/fa-regular-400.svg | 801 + .../static/assets/webfonts/fa-regular-400.ttf | Bin 0 -> 34052 bytes .../assets/webfonts/fa-regular-400.woff | Bin 0 -> 16776 bytes .../assets/webfonts/fa-regular-400.woff2 | Bin 0 -> 13588 bytes .../static/assets/webfonts/fa-solid-900.eot | Bin 0 -> 204814 bytes .../static/assets/webfonts/fa-solid-900.svg | 5028 ++++ .../static/assets/webfonts/fa-solid-900.ttf | Bin 0 -> 204528 bytes .../static/assets/webfonts/fa-solid-900.woff | Bin 0 -> 104280 bytes .../static/assets/webfonts/fa-solid-900.woff2 | Bin 0 -> 80252 bytes .../src/main/resources/templates/about.html | 216 + .../src/main/resources/templates/contact.html | 213 + .../src/main/resources/templates/courses.html | 259 + .../main/resources/templates/dashboard.html | 136 + .../src/main/resources/templates/footer.html | 61 + .../src/main/resources/templates/header.html | 64 + .../main/resources/templates/holidays.html | 170 + .../src/main/resources/templates/home.html | 442 + .../src/main/resources/templates/login.html | 151 + .../EazyschoolApplicationTests.java | 13 + .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section7/springsecsection7/mvnw | 448 +- section7/springsecsection7/mvnw.cmd | 284 +- section7/springsecsection7/pom.xml | 30 +- .../eazybytes/EazyBankBackendApplication.java | 6 +- ...ProdUsernamePwdAuthenticationProvider.java | 40 + .../config/EazyBankUserDetailsService.java | 30 + ...BankUsernamePwdAuthenticationProvider.java | 44 +- .../config/ProjectSecurityConfig.java | 72 +- .../config/ProjectSecurityProdConfig.java | 49 + .../constants/ApplicationConstants.java | 8 - .../controller/AccountController.java | 16 +- .../controller/BalanceController.java | 20 +- .../eazybytes/controller/CardsController.java | 18 +- .../controller/ContactController.java | 26 +- .../eazybytes/controller/LoansController.java | 18 +- .../controller/NoticesController.java | 23 +- .../eazybytes/controller/UserController.java | 41 + .../events/AuthenticationEvents.java | 24 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../eazybytes/model/AccountTransactions.java | 113 - .../java/com/eazybytes/model/Accounts.java | 59 - .../java/com/eazybytes/model/Authority.java | 45 - .../main/java/com/eazybytes/model/Cards.java | 103 - .../java/com/eazybytes/model/Contact.java | 79 - .../java/com/eazybytes/model/Customer.java | 94 +- .../main/java/com/eazybytes/model/Loans.java | 103 - .../main/java/com/eazybytes/model/Notice.java | 91 - .../repository/CustomerRepository.java | 8 +- .../src/main/resources/application.properties | 20 +- .../resources/application_prod.properties | 13 + .../src/main/resources/sql/scripts.sql | 202 +- .../Angular+Project+Setup.pdf | Bin .../eazybank-end}/bank-app-ui/.editorconfig | 0 .../eazybank-end}/bank-app-ui/.gitignore | 0 .../bank-app-ui/.vscode/launch.json | 22 + .../eazybank-end}/bank-app-ui/README.md | 0 .../eazybank-end}/bank-app-ui/angular.json | 26 +- .../bank-app-ui/package-lock.json | 13038 ++++++++++ .../eazybank-end/bank-app-ui/package.json | 44 + .../bank-app-ui/src/app/app-routing.module.ts | 0 .../bank-app-ui/src/app/app.component.css | 0 .../bank-app-ui/src/app/app.component.html | 0 .../bank-app-ui/src/app/app.component.ts | 0 .../bank-app-ui/src/app/app.module.ts | 0 .../components/account/account.component.css | 0 .../components/account/account.component.html | 0 .../components/account/account.component.ts | 0 .../components/balance/balance.component.css | 0 .../components/balance/balance.component.html | 0 .../components/balance/balance.component.ts | 0 .../app/components/cards/cards.component.css | 0 .../app/components/cards/cards.component.html | 0 .../app/components/cards/cards.component.ts | 0 .../components/contact/contact.component.css | 0 .../components/contact/contact.component.html | 0 .../components/contact/contact.component.ts | 0 .../dashboard/dashboard.component.css | 0 .../dashboard/dashboard.component.html | 0 .../dashboard/dashboard.component.ts | 0 .../components/header/header.component.css | 0 .../components/header/header.component.html | 0 .../app/components/header/header.component.ts | 0 .../app/components/home/home.component.css | 0 .../app/components/home/home.component.html | 0 .../src/app/components/home/home.component.ts | 0 .../app/components/loans/loans.component.css | 0 .../app/components/loans/loans.component.html | 0 .../app/components/loans/loans.component.ts | 0 .../app/components/login/login.component.css | 0 .../app/components/login/login.component.html | 0 .../app/components/login/login.component.ts | 3 +- .../components/logout/logout.component.css | 0 .../components/logout/logout.component.html | 0 .../app/components/logout/logout.component.ts | 3 +- .../components/notices/notices.component.css | 0 .../components/notices/notices.component.html | 0 .../components/notices/notices.component.ts | 0 .../src/app/constants/app.constants.ts | 0 .../interceptors/app.request.interceptor.ts | 4 +- .../src/app/model/account.model.ts | 0 .../app/model/account.transactions.model.ts | 0 .../bank-app-ui/src/app/model/cards.model.ts | 0 .../src/app/model/contact.model.ts | 0 .../bank-app-ui/src/app/model/loans.model.ts | 0 .../bank-app-ui/src/app/model/user.model.ts | 0 .../src/app/routeguards/auth.routeguard.ts | 27 + .../services/dashboard/dashboard.service.ts | 3 +- .../src/app/services/login/login.service.ts | 0 .../bank-app-ui/src/assets/.gitkeep | 0 .../bank-app-ui/src/assets/css/bootstrap.css | 0 .../src/assets/css/font-awesome.css | 0 .../src/assets/fonts/FontAwesome.otf | Bin .../src/assets/fonts/fontawesome-webfont.eot | Bin .../src/assets/fonts/fontawesome-webfont.ttf | Bin .../src/assets/fonts/fontawesome-webfont.woff | Bin .../assets/fonts/fontawesome-webfont.woff2 | Bin .../bank-app-ui/src/assets/images/logo.png | Bin .../environments/environment.development.ts | 0 .../src/environments/environment.ts | 0 .../eazybank-end}/bank-app-ui/src/favicon.ico | Bin .../eazybank-end}/bank-app-ui/src/index.html | 1 - .../eazybank-end}/bank-app-ui/src/main.ts | 0 .../eazybank-end}/bank-app-ui/src/styles.css | 0 .../bank-app-ui/tsconfig.app.json | 0 .../eazybank-end}/bank-app-ui/tsconfig.json | 0 .../bank-app-ui/tsconfig.spec.json | 0 .../eazybank-start}/bank-app-ui/.editorconfig | 0 .../eazybank-start}/bank-app-ui/.gitignore | 0 .../eazybank-start}/bank-app-ui/README.md | 2 +- .../eazybank-start}/bank-app-ui/angular.json | 26 +- .../bank-app-ui/package-lock.json | 13038 ++++++++++ .../eazybank-start/bank-app-ui/package.json | 44 + .../bank-app-ui/src/app/app-routing.module.ts | 0 .../bank-app-ui/src/app/app.component.css | 0 .../bank-app-ui/src/app/app.component.html | 0 .../bank-app-ui/src/app/app.component.ts | 0 .../bank-app-ui/src/app/app.module.ts | 0 .../components/account/account.component.css | 0 .../components/account/account.component.html | 0 .../components/account/account.component.ts | 0 .../components/balance/balance.component.css | 0 .../components/balance/balance.component.html | 0 .../components/balance/balance.component.ts | 0 .../app/components/cards/cards.component.css | 0 .../app/components/cards/cards.component.html | 0 .../app/components/cards/cards.component.ts | 0 .../components/contact/contact.component.css | 0 .../components/contact/contact.component.html | 0 .../components/contact/contact.component.ts | 0 .../dashboard/dashboard.component.css | 0 .../dashboard/dashboard.component.html | 0 .../dashboard/dashboard.component.ts | 0 .../components/header/header.component.css | 0 .../components/header/header.component.html | 0 .../app/components/header/header.component.ts | 0 .../app/components/home/home.component.css | 0 .../app/components/home/home.component.html | 0 .../src/app/components/home/home.component.ts | 0 .../app/components/loans/loans.component.css | 0 .../app/components/loans/loans.component.html | 0 .../app/components/loans/loans.component.ts | 0 .../app/components/login/login.component.css | 0 .../app/components/login/login.component.html | 0 .../app/components/login/login.component.ts | 0 .../components/logout/logout.component.css | 0 .../components/logout/logout.component.html | 0 .../app/components/logout/logout.component.ts | 0 .../components/notices/notices.component.css | 0 .../components/notices/notices.component.html | 0 .../components/notices/notices.component.ts | 1 - .../src/app/constants/app.constants.ts | 0 .../interceptors/app.request.interceptor.ts | 0 .../src/app/model/account.model.ts | 0 .../app/model/account.transactions.model.ts | 0 .../bank-app-ui/src/app/model/cards.model.ts | 0 .../src/app/model/contact.model.ts | 0 .../bank-app-ui/src/app/model/loans.model.ts | 0 .../bank-app-ui/src/app/model/user.model.ts | 0 .../src/app/routeguards/auth.routeguard.ts | 27 + .../services/dashboard/dashboard.service.ts | 1 - .../src/app/services/login/login.service.ts | 3 +- .../bank-app-ui/src/assets/.gitkeep | 0 .../bank-app-ui/src/assets/css/bootstrap.css | 0 .../src/assets/css/font-awesome.css | 0 .../src/assets/fonts/FontAwesome.otf | Bin .../src/assets/fonts/fontawesome-webfont.eot | Bin .../src/assets/fonts/fontawesome-webfont.ttf | Bin .../src/assets/fonts/fontawesome-webfont.woff | Bin .../assets/fonts/fontawesome-webfont.woff2 | Bin .../bank-app-ui/src/assets/images/logo.png | Bin .../environments/environment.development.ts | 4 + .../src/environments/environment.ts | 4 + .../bank-app-ui/src/favicon.ico | Bin .../bank-app-ui/src/index.html | 1 - .../eazybank-start}/bank-app-ui/src/main.ts | 5 - .../bank-app-ui/src/styles.css | 0 .../bank-app-ui/tsconfig.app.json | 3 +- .../eazybank-start}/bank-app-ui/tsconfig.json | 7 +- .../bank-app-ui/tsconfig.spec.json | 4 - .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section8/springsecsection8/mvnw | 448 +- section8/springsecsection8/mvnw.cmd | 284 +- section8/springsecsection8/pom.xml | 30 +- .../eazybytes/EazyBankBackendApplication.java | 8 +- ...ProdUsernamePwdAuthenticationProvider.java | 40 + .../config/EazyBankUserDetailsService.java | 30 + ...BankUsernamePwdAuthenticationProvider.java | 44 +- .../config/ProjectSecurityConfig.java | 79 +- .../config/ProjectSecurityProdConfig.java | 76 + .../constants/ApplicationConstants.java | 8 - .../controller/AccountController.java | 12 +- .../controller/BalanceController.java | 12 +- .../eazybytes/controller/CardsController.java | 7 +- .../controller/ContactController.java | 17 +- .../eazybytes/controller/LoansController.java | 12 +- .../controller/NoticesController.java | 19 +- ...ginController.java => UserController.java} | 44 +- .../events/AuthenticationEvents.java | 24 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../filter/AuthoritiesLoggingAfterFilter.java | 27 - .../filter/AuthoritiesLoggingAtFilter.java | 20 - .../eazybytes/filter/CsrfCookieFilter.java | 7 +- .../eazybytes/model/AccountTransactions.java | 79 +- .../java/com/eazybytes/model/Accounts.java | 41 +- .../java/com/eazybytes/model/Authority.java | 45 - .../main/java/com/eazybytes/model/Cards.java | 108 +- .../java/com/eazybytes/model/Contact.java | 51 +- .../java/com/eazybytes/model/Customer.java | 79 +- .../main/java/com/eazybytes/model/Loans.java | 113 +- .../main/java/com/eazybytes/model/Notice.java | 101 +- .../AccountTransactionsRepository.java | 4 +- .../repository/AccountsRepository.java | 7 +- .../eazybytes/repository/CardsRepository.java | 3 +- .../repository/ContactRepository.java | 2 +- .../repository/CustomerRepository.java | 8 +- .../eazybytes/repository/LoanRepository.java | 2 +- .../src/main/resources/application.properties | 20 +- .../resources/application_prod.properties | 13 + .../src/main/resources/sql/scripts.sql | 39 +- section9/bank-app-ui/.browserslistrc | 16 - section9/bank-app-ui/.vscode/extensions.json | 4 - section9/bank-app-ui/.vscode/launch.json | 20 - section9/bank-app-ui/.vscode/tasks.json | 42 - section9/bank-app-ui/karma.conf.js | 44 - section9/bank-app-ui/package-lock.json | 20540 --------------- section9/bank-app-ui/package.json | 45 - .../bank-app-ui/src/app/app.component.spec.ts | 35 - .../account/account.component.spec.ts | 25 - .../balance/balance.component.spec.ts | 25 - .../components/cards/cards.component.spec.ts | 25 - .../header/header.component.spec.ts | 25 - .../components/home/home.component.spec.ts | 23 - .../components/loans/loans.component.spec.ts | 25 - .../components/login/login.component.spec.ts | 25 - .../logout/logout.component.spec.ts | 25 - .../notices/notices.component.spec.ts | 25 - .../src/app/routeguards/auth.routeguard.ts | 23 - .../app/services/login/login.service.spec.ts | 16 - .../src/environments/environment.prod.ts | 3 - .../src/environments/environment.ts | 17 - section9/bank-app-ui/src/polyfills.ts | 53 - section9/bank-app-ui/src/test.ts | 26 - .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section9/springsecsection9/mvnw | 448 +- section9/springsecsection9/mvnw.cmd | 284 +- section9/springsecsection9/pom.xml | 43 +- .../eazybytes/EazyBankBackendApplication.java | 7 +- ...ProdUsernamePwdAuthenticationProvider.java | 40 + .../config/EazyBankUserDetailsService.java | 32 + ...BankUsernamePwdAuthenticationProvider.java | 44 +- .../config/ProjectSecurityConfig.java | 79 +- .../config/ProjectSecurityProdConfig.java | 85 + .../constants/ApplicationConstants.java | 8 - .../constants/SecurityConstants.java | 8 - .../controller/AccountController.java | 12 +- .../controller/BalanceController.java | 12 +- .../eazybytes/controller/CardsController.java | 7 +- .../controller/ContactController.java | 17 +- .../eazybytes/controller/LoansController.java | 12 +- .../controller/NoticesController.java | 19 +- ...ginController.java => UserController.java} | 44 +- .../events/AuthenticationEvents.java | 24 + .../eazybytes/events/AuthorizationEvents.java | 20 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../filter/AuthoritiesLoggingAfterFilter.java | 27 - .../filter/AuthoritiesLoggingAtFilter.java | 20 - .../eazybytes/filter/CsrfCookieFilter.java | 7 +- .../filter/JWTTokenGeneratorFilter.java | 56 - .../filter/JWTTokenValidatorFilter.java | 56 - .../eazybytes/model/AccountTransactions.java | 79 +- .../java/com/eazybytes/model/Accounts.java | 41 +- .../java/com/eazybytes/model/Authority.java | 37 +- .../main/java/com/eazybytes/model/Cards.java | 108 +- .../java/com/eazybytes/model/Contact.java | 51 +- .../java/com/eazybytes/model/Customer.java | 78 +- .../main/java/com/eazybytes/model/Loans.java | 113 +- .../main/java/com/eazybytes/model/Notice.java | 101 +- .../AccountTransactionsRepository.java | 4 +- .../repository/AccountsRepository.java | 7 +- .../eazybytes/repository/CardsRepository.java | 3 +- .../repository/ContactRepository.java | 2 +- .../repository/CustomerRepository.java | 8 +- .../eazybytes/repository/LoanRepository.java | 2 +- .../src/main/resources/application.properties | 20 +- .../resources/application_prod.properties | 13 + .../src/main/resources/sql/scripts.sql | 12 +- section_10/bank-app-ui/.browserslistrc | 16 - .../bank-app-ui/.vscode/extensions.json | 4 - section_10/bank-app-ui/.vscode/launch.json | 20 - section_10/bank-app-ui/.vscode/tasks.json | 42 - section_10/bank-app-ui/karma.conf.js | 44 - section_10/bank-app-ui/package-lock.json | 20539 --------------- section_10/bank-app-ui/package.json | 44 - .../bank-app-ui/src/app/app.component.spec.ts | 35 - .../account/account.component.spec.ts | 25 - .../balance/balance.component.spec.ts | 25 - .../components/cards/cards.component.spec.ts | 25 - .../header/header.component.spec.ts | 25 - .../components/home/home.component.spec.ts | 23 - .../components/loans/loans.component.spec.ts | 25 - .../components/login/login.component.spec.ts | 25 - .../logout/logout.component.spec.ts | 25 - .../notices/notices.component.spec.ts | 25 - .../src/app/routeguards/auth.routeguard.ts | 23 - .../app/services/login/login.service.spec.ts | 16 - .../src/environments/environment.prod.ts | 3 - .../src/environments/environment.ts | 17 - section_10/bank-app-ui/src/polyfills.ts | 53 - section_10/bank-app-ui/src/test.ts | 26 - .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 20 +- section_10/springsecsection_10/mvnw | 448 +- section_10/springsecsection_10/mvnw.cmd | 284 +- section_10/springsecsection_10/pom.xml | 43 +- .../eazybytes/EazyBankBackendApplication.java | 10 +- ...ProdUsernamePwdAuthenticationProvider.java | 40 + .../config/EazyBankUserDetailsService.java | 32 + ...BankUsernamePwdAuthenticationProvider.java | 44 +- .../config/ProjectSecurityConfig.java | 79 +- .../config/ProjectSecurityProdConfig.java | 87 + .../constants/ApplicationConstants.java | 8 - .../constants/SecurityConstants.java | 8 - .../controller/AccountController.java | 12 +- .../controller/BalanceController.java | 12 +- .../eazybytes/controller/CardsController.java | 7 +- .../controller/ContactController.java | 31 +- .../eazybytes/controller/LoansController.java | 14 +- .../eazybytes/controller/LoginController.java | 60 - .../controller/NoticesController.java | 19 +- .../eazybytes/controller/UserController.java | 44 +- .../events/AuthenticationEvents.java | 24 + .../eazybytes/events/AuthorizationEvents.java | 20 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../filter/AuthoritiesLoggingAfterFilter.java | 26 +- .../filter/AuthoritiesLoggingAtFilter.java | 20 +- .../eazybytes/filter/CsrfCookieFilter.java | 7 +- .../filter/JWTTokenGeneratorFilter.java | 56 - .../filter/JWTTokenValidatorFilter.java | 56 - .../filter/RequestValidationBeforeFilter.java | 34 +- .../eazybytes/model/AccountTransactions.java | 79 +- .../java/com/eazybytes/model/Accounts.java | 41 +- .../java/com/eazybytes/model/Authority.java | 37 +- .../main/java/com/eazybytes/model/Cards.java | 108 +- .../java/com/eazybytes/model/Contact.java | 51 +- .../java/com/eazybytes/model/Customer.java | 78 +- .../main/java/com/eazybytes/model/Loans.java | 113 +- .../main/java/com/eazybytes/model/Notice.java | 101 +- .../AccountTransactionsRepository.java | 4 +- .../repository/AccountsRepository.java | 7 +- .../eazybytes/repository/CardsRepository.java | 3 +- .../repository/ContactRepository.java | 2 +- .../repository/CustomerRepository.java | 8 +- .../eazybytes/repository/LoanRepository.java | 6 +- .../src/main/resources/application.properties | 20 +- .../resources/application_prod.properties | 13 + .../src/main/resources/sql/scripts.sql | 12 +- .../bank-app-ui/.editorconfig | 0 .../bank-app-ui/.gitignore | 0 section_11/bank-app-ui/.vscode/launch.json | 15 + .../bank-app-ui/README.md | 2 +- .../bank-app-ui/angular.json | 26 +- section_11/bank-app-ui/package-lock.json | 13038 ++++++++++ section_11/bank-app-ui/package.json | 44 + .../bank-app-ui/src/app/app-routing.module.ts | 0 .../bank-app-ui/src/app/app.component.css | 0 .../bank-app-ui/src/app/app.component.html | 0 .../bank-app-ui/src/app/app.component.ts | 0 .../bank-app-ui/src/app/app.module.ts | 0 .../components/account/account.component.css | 0 .../components/account/account.component.html | 0 .../components/account/account.component.ts | 0 .../components/balance/balance.component.css | 0 .../components/balance/balance.component.html | 0 .../components/balance/balance.component.ts | 0 .../app/components/cards/cards.component.css | 0 .../app/components/cards/cards.component.html | 0 .../app/components/cards/cards.component.ts | 0 .../components/contact/contact.component.css | 0 .../components/contact/contact.component.html | 0 .../components/contact/contact.component.ts | 0 .../dashboard/dashboard.component.css | 0 .../dashboard/dashboard.component.html | 0 .../dashboard/dashboard.component.ts | 0 .../components/header/header.component.css | 0 .../components/header/header.component.html | 0 .../app/components/header/header.component.ts | 0 .../app/components/home/home.component.css | 0 .../app/components/home/home.component.html | 0 .../src/app/components/home/home.component.ts | 0 .../app/components/loans/loans.component.css | 0 .../app/components/loans/loans.component.html | 0 .../app/components/loans/loans.component.ts | 0 .../app/components/login/login.component.css | 0 .../app/components/login/login.component.html | 0 .../app/components/login/login.component.ts | 5 +- .../components/logout/logout.component.css | 0 .../components/logout/logout.component.html | 0 .../app/components/logout/logout.component.ts | 4 +- .../components/notices/notices.component.css | 0 .../components/notices/notices.component.html | 0 .../components/notices/notices.component.ts | 1 - .../src/app/constants/app.constants.ts | 0 .../interceptors/app.request.interceptor.ts | 6 +- .../src/app/model/account.model.ts | 0 .../app/model/account.transactions.model.ts | 0 .../bank-app-ui/src/app/model/cards.model.ts | 0 .../src/app/model/contact.model.ts | 0 .../bank-app-ui/src/app/model/loans.model.ts | 0 .../bank-app-ui/src/app/model/user.model.ts | 0 .../src/app/routeguards/auth.routeguard.ts | 27 + .../services/dashboard/dashboard.service.ts | 3 +- .../src/app/services/login/login.service.ts | 3 +- .../bank-app-ui/src/assets/.gitkeep | 0 .../bank-app-ui/src/assets/css/bootstrap.css | 0 .../src/assets/css/font-awesome.css | 0 .../src/assets/fonts/FontAwesome.otf | Bin .../src/assets/fonts/fontawesome-webfont.eot | Bin .../src/assets/fonts/fontawesome-webfont.ttf | Bin .../src/assets/fonts/fontawesome-webfont.woff | Bin .../assets/fonts/fontawesome-webfont.woff2 | Bin .../bank-app-ui/src/assets/images/logo.png | Bin .../environments/environment.development.ts | 4 + .../src/environments/environment.ts | 4 + .../bank-app-ui/src/favicon.ico | Bin .../bank-app-ui/src/index.html | 0 .../bank-app-ui/src/main.ts | 5 - .../bank-app-ui/src/styles.css | 0 .../bank-app-ui/tsconfig.app.json | 3 +- .../bank-app-ui/tsconfig.json | 7 +- .../bank-app-ui/tsconfig.spec.json | 4 - section_11/springsecsection_11/.gitignore | 33 + .../.mvn/wrapper/maven-wrapper.properties | 18 + section_11/springsecsection_11/mvnw | 250 + section_11/springsecsection_11/mvnw.cmd | 146 + section_11/springsecsection_11/pom.xml | 85 + .../eazybytes/EazyBankBackendApplication.java | 15 + ...ProdUsernamePwdAuthenticationProvider.java | 40 + .../config/EazyBankUserDetailsService.java | 32 + ...BankUsernamePwdAuthenticationProvider.java | 35 + .../config/ProjectSecurityConfig.java | 100 + .../config/ProjectSecurityProdConfig.java | 100 + .../constants/ApplicationConstants.java | 8 + .../controller/AccountController.java | 26 + .../controller/BalanceController.java | 28 + .../eazybytes/controller/CardsController.java | 29 + .../controller/ContactController.java | 31 + .../eazybytes/controller/LoansController.java | 28 + .../controller/NoticesController.java | 19 +- .../eazybytes/controller/UserController.java | 91 + .../events/AuthenticationEvents.java | 24 + .../eazybytes/events/AuthorizationEvents.java | 20 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../filter/AuthoritiesLoggingAfterFilter.java | 29 + .../filter/AuthoritiesLoggingAtFilter.java | 24 + .../eazybytes/filter/CsrfCookieFilter.java | 7 +- .../filter/JWTTokenGeneratorFilter.java | 59 + .../filter/JWTTokenValidatorFilter.java | 65 + .../filter/RequestValidationBeforeFilter.java | 34 +- .../eazybytes/model/AccountTransactions.java | 46 + .../java/com/eazybytes/model/Accounts.java | 32 + .../java/com/eazybytes/model/Authority.java | 22 + .../main/java/com/eazybytes/model/Cards.java | 39 + .../java/com/eazybytes/model/Contact.java | 34 + .../java/com/eazybytes/model/Customer.java | 41 + .../main/java/com/eazybytes/model/Loans.java | 42 + .../com/eazybytes/model/LoginRequestDTO.java | 4 + .../com/eazybytes/model/LoginResponseDTO.java | 4 + .../main/java/com/eazybytes/model/Notice.java | 42 + .../AccountTransactionsRepository.java | 4 +- .../repository/AccountsRepository.java | 7 +- .../eazybytes/repository/CardsRepository.java | 3 +- .../repository/ContactRepository.java | 2 +- .../repository/CustomerRepository.java | 6 +- .../eazybytes/repository/LoanRepository.java | 2 +- .../repository/NoticeRepository.java | 0 .../src/main/resources/application.properties | 15 + .../resources/application_prod.properties | 13 + .../src/main/resources/sql/scripts.sql | 12 +- .../EazyBankBackendApplicationTests.java | 0 .../bank-app-ui/.editorconfig | 0 .../bank-app-ui/.gitignore | 0 section_12/bank-app-ui/.vscode/launch.json | 15 + .../bank-app-ui/README.md | 2 +- .../bank-app-ui/angular.json | 26 +- section_12/bank-app-ui/package-lock.json | 13038 ++++++++++ section_12/bank-app-ui/package.json | 44 + .../bank-app-ui/src/app/app-routing.module.ts | 0 .../bank-app-ui/src/app/app.component.css | 0 .../bank-app-ui/src/app/app.component.html | 0 .../bank-app-ui/src/app/app.component.ts | 0 .../bank-app-ui/src/app/app.module.ts | 0 .../components/account/account.component.css | 0 .../components/account/account.component.html | 0 .../components/account/account.component.ts | 0 .../components/balance/balance.component.css | 0 .../components/balance/balance.component.html | 0 .../components/balance/balance.component.ts | 0 .../app/components/cards/cards.component.css | 0 .../app/components/cards/cards.component.html | 0 .../app/components/cards/cards.component.ts | 0 .../components/contact/contact.component.css | 0 .../components/contact/contact.component.html | 0 .../components/contact/contact.component.ts | 0 .../dashboard/dashboard.component.css | 0 .../dashboard/dashboard.component.html | 0 .../dashboard/dashboard.component.ts | 0 .../components/header/header.component.css | 0 .../components/header/header.component.html | 0 .../app/components/header/header.component.ts | 0 .../app/components/home/home.component.css | 0 .../app/components/home/home.component.html | 0 .../src/app/components/home/home.component.ts | 0 .../app/components/loans/loans.component.css | 0 .../app/components/loans/loans.component.html | 0 .../app/components/loans/loans.component.ts | 0 .../app/components/login/login.component.css | 0 .../app/components/login/login.component.html | 0 .../app/components/login/login.component.ts | 5 +- .../components/logout/logout.component.css | 0 .../components/logout/logout.component.html | 0 .../app/components/logout/logout.component.ts | 4 +- .../components/notices/notices.component.css | 0 .../components/notices/notices.component.html | 0 .../components/notices/notices.component.ts | 1 - .../src/app/constants/app.constants.ts | 0 .../interceptors/app.request.interceptor.ts | 6 +- .../src/app/model/account.model.ts | 0 .../app/model/account.transactions.model.ts | 0 .../bank-app-ui/src/app/model/cards.model.ts | 0 .../src/app/model/contact.model.ts | 0 .../bank-app-ui/src/app/model/loans.model.ts | 0 .../bank-app-ui/src/app/model/user.model.ts | 0 .../src/app/routeguards/auth.routeguard.ts | 27 + .../services/dashboard/dashboard.service.ts | 3 +- .../src/app/services/login/login.service.ts | 3 +- .../bank-app-ui/src/assets/.gitkeep | 0 .../bank-app-ui/src/assets/css/bootstrap.css | 0 .../src/assets/css/font-awesome.css | 0 .../src/assets/fonts/FontAwesome.otf | Bin .../src/assets/fonts/fontawesome-webfont.eot | Bin .../src/assets/fonts/fontawesome-webfont.ttf | Bin .../src/assets/fonts/fontawesome-webfont.woff | Bin .../assets/fonts/fontawesome-webfont.woff2 | Bin .../bank-app-ui/src/assets/images/logo.png | Bin .../environments/environment.development.ts | 4 + .../src/environments/environment.ts | 4 + .../bank-app-ui/src/favicon.ico | Bin .../bank-app-ui/src/index.html | 0 .../bank-app-ui/src/main.ts | 5 - .../bank-app-ui/src/styles.css | 0 .../bank-app-ui/tsconfig.app.json | 3 +- .../bank-app-ui/tsconfig.json | 7 +- .../bank-app-ui/tsconfig.spec.json | 4 - .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 2 - .../config/SpringSecOAUTH2GitHubConfig.java | 31 - .../controller/SecureController.java | 16 - .../src/main/resources/application.properties | 2 - section_12/springsecsection_12/.gitignore | 33 + .../.mvn/wrapper/maven-wrapper.properties | 18 + section_12/springsecsection_12/mvnw | 250 + section_12/springsecsection_12/mvnw.cmd | 146 + section_12/springsecsection_12/pom.xml | 85 + .../eazybytes/EazyBankBackendApplication.java | 17 + ...ProdUsernamePwdAuthenticationProvider.java | 40 + .../config/EazyBankUserDetailsService.java | 32 + ...BankUsernamePwdAuthenticationProvider.java | 35 + .../config/ProjectSecurityConfig.java | 100 + .../config/ProjectSecurityProdConfig.java | 100 + .../constants/ApplicationConstants.java | 8 + .../controller/AccountController.java | 26 + .../controller/BalanceController.java | 28 + .../eazybytes/controller/CardsController.java | 29 + .../controller/ContactController.java | 25 +- .../eazybytes/controller/LoansController.java | 31 + .../controller/NoticesController.java | 32 + .../eazybytes/controller/UserController.java | 91 + .../events/AuthenticationEvents.java | 24 + .../eazybytes/events/AuthorizationEvents.java | 20 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../filter/AuthoritiesLoggingAfterFilter.java | 29 + .../filter/AuthoritiesLoggingAtFilter.java | 24 + .../eazybytes/filter/CsrfCookieFilter.java | 7 +- .../filter/JWTTokenGeneratorFilter.java | 59 + .../filter/JWTTokenValidatorFilter.java | 65 + .../filter/RequestValidationBeforeFilter.java | 34 +- .../eazybytes/model/AccountTransactions.java | 46 + .../java/com/eazybytes/model/Accounts.java | 32 + .../java/com/eazybytes/model/Authority.java | 22 + .../main/java/com/eazybytes/model/Cards.java | 39 + .../java/com/eazybytes/model/Contact.java | 34 + .../java/com/eazybytes/model/Customer.java | 41 + .../main/java/com/eazybytes/model/Loans.java | 42 + .../com/eazybytes/model/LoginRequestDTO.java | 4 + .../com/eazybytes/model/LoginResponseDTO.java | 4 + .../main/java/com/eazybytes/model/Notice.java | 42 + .../AccountTransactionsRepository.java | 4 +- .../repository/AccountsRepository.java | 7 +- .../eazybytes/repository/CardsRepository.java | 3 +- .../repository/ContactRepository.java | 2 +- .../repository/CustomerRepository.java | 8 +- .../eazybytes/repository/LoanRepository.java | 2 +- .../repository/NoticeRepository.java | 0 .../src/main/resources/application.properties | 15 + .../resources/application_prod.properties | 13 + .../src/main/resources/sql/scripts.sql | 192 + .../EazyBankBackendApplicationTests.java | 13 + .../.mvn/wrapper/maven-wrapper.jar | Bin 58727 -> 0 bytes .../.mvn/wrapper/maven-wrapper.properties | 2 - .../config/ProjectSecurityConfig.java | 60 - .../constants/ApplicationConstants.java | 8 - .../eazybytes/controller/LoginController.java | 29 - .../eazybytes/model/AccountTransactions.java | 113 - .../java/com/eazybytes/model/Accounts.java | 59 - .../java/com/eazybytes/model/Authority.java | 45 - .../main/java/com/eazybytes/model/Cards.java | 103 - .../java/com/eazybytes/model/Contact.java | 79 - .../java/com/eazybytes/model/Customer.java | 101 - .../main/java/com/eazybytes/model/Loans.java | 103 - .../main/java/com/eazybytes/model/Notice.java | 91 - .../src/main/resources/application.properties | 7 - section_14/springsecOAUTH2/.gitignore | 33 + .../.mvn/wrapper/maven-wrapper.properties | 19 + section_14/springsecOAUTH2/mvnw | 259 + section_14/springsecOAUTH2/mvnw.cmd | 149 + .../springsecOAUTH2}/pom.xml | 32 +- .../eazybytes/SpringsecOauth2Application.java | 13 + .../config/ProjectSecurityConfig.java | 42 + .../controller/SecureController.java | 22 + .../src/main/resources/application.properties | 11 + .../src/main/resources/static/secure.html | 4 +- .../SpringsecOauth2ApplicationTests.java | 13 + .../Angular+Project+Setup.pdf | Bin section_15/bank-app-ui/.editorconfig | 16 + .../bank-app-ui/.gitignore | 0 .../bank-app-ui/.vscode/launch.json | 0 .../bank-app-ui/.vscode/tasks.json | 0 .../bank-app-ui/README.md | 2 +- .../bank-app-ui/angular.json | 0 .../bank-app-ui/package-lock.json | 0 .../bank-app-ui/package.json | 0 .../bank-app-ui/src/app/app-routing.module.ts | 0 .../bank-app-ui/src/app/app.component.css | 0 .../bank-app-ui/src/app/app.component.html | 0 .../bank-app-ui/src/app/app.component.ts | 0 .../bank-app-ui/src/app/app.module.ts | 0 .../components/account/account.component.css | 0 .../components/account/account.component.html | 0 .../components/account/account.component.ts | 0 .../components/balance/balance.component.css | 0 .../components/balance/balance.component.html | 0 .../components/balance/balance.component.ts | 0 .../app/components/cards/cards.component.css | 0 .../app/components/cards/cards.component.html | 0 .../app/components/cards/cards.component.ts | 0 .../components/contact/contact.component.css | 0 .../components/contact/contact.component.html | 0 .../components/contact/contact.component.ts | 0 .../dashboard/dashboard.component.css | 0 .../dashboard/dashboard.component.html | 0 .../dashboard/dashboard.component.ts | 0 .../components/header/header.component.css | 0 .../components/header/header.component.html | 0 .../app/components/header/header.component.ts | 0 .../app/components/home/home.component.css | 0 .../app/components/home/home.component.html | 0 .../src/app/components/home/home.component.ts | 0 .../app/components/loans/loans.component.css | 0 .../app/components/loans/loans.component.html | 0 .../app/components/loans/loans.component.ts | 0 .../app/components/login/login.component.css | 0 .../app/components/login/login.component.html | 0 .../app/components/login/login.component.ts | 0 .../components/logout/logout.component.css | 0 .../components/logout/logout.component.html | 0 .../app/components/logout/logout.component.ts | 1 - .../components/notices/notices.component.css | 0 .../components/notices/notices.component.html | 0 .../components/notices/notices.component.ts | 1 - .../src/app/constants/app.constants.ts | 0 .../src/app/model/account.model.ts | 0 .../app/model/account.transactions.model.ts | 0 .../bank-app-ui/src/app/model/cards.model.ts | 0 .../src/app/model/contact.model.ts | 0 .../bank-app-ui/src/app/model/loans.model.ts | 0 .../bank-app-ui/src/app/model/user.model.ts | 0 .../src/app/routeguards/auth.route.ts | 0 .../services/dashboard/dashboard.service.ts | 0 .../src/app/services/login/login.service.ts | 3 +- .../bank-app-ui/src/assets/.gitkeep | 0 .../bank-app-ui/src/assets/css/bootstrap.css | 0 .../src/assets/css/font-awesome.css | 0 .../src/assets/fonts/FontAwesome.otf | Bin .../src/assets/fonts/fontawesome-webfont.eot | Bin .../src/assets/fonts/fontawesome-webfont.ttf | Bin .../src/assets/fonts/fontawesome-webfont.woff | Bin .../assets/fonts/fontawesome-webfont.woff2 | Bin .../bank-app-ui/src/assets/images/logo.png | Bin .../environments/environment.development.ts | 4 + .../src/environments/environment.ts | 4 + .../bank-app-ui/src/favicon.ico | Bin .../bank-app-ui/src/index.html | 0 .../bank-app-ui/src/main.ts | 5 - .../bank-app-ui/src/styles.css | 0 .../bank-app-ui/tsconfig.app.json | 3 +- .../bank-app-ui/tsconfig.json | 7 +- .../bank-app-ui/tsconfig.spec.json | 4 - section_15/springsecsection_15/.gitignore | 33 + .../.mvn/wrapper/maven-wrapper.properties | 18 + section_15/springsecsection_15/mvnw | 250 + section_15/springsecsection_15/mvnw.cmd | 146 + .../springsecsection_15}/pom.xml | 44 +- .../eazybytes/EazyBankBackendApplication.java | 17 + .../config/KeycloakOpaqueRoleConverter.java | 32 + .../config/KeycloakRoleConverter.java | 15 +- .../config/ProjectSecurityConfig.java | 75 + .../config/ProjectSecurityProdConfig.java | 63 + .../constants/ApplicationConstants.java | 5 + .../controller/AccountController.java | 24 +- .../controller/BalanceController.java | 25 +- .../eazybytes/controller/CardsController.java | 24 +- .../controller/ContactController.java | 43 + .../eazybytes/controller/LoansController.java | 26 +- .../controller/NoticesController.java | 32 + .../eazybytes/controller/UserController.java | 43 + .../events/AuthenticationEvents.java | 24 + .../eazybytes/events/AuthorizationEvents.java | 20 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../eazybytes/filter/CsrfCookieFilter.java | 7 +- .../eazybytes/model/AccountTransactions.java | 46 + .../java/com/eazybytes/model/Accounts.java | 32 + .../java/com/eazybytes/model/Authority.java | 22 + .../main/java/com/eazybytes/model/Cards.java | 39 + .../java/com/eazybytes/model/Contact.java | 34 + .../java/com/eazybytes/model/Customer.java | 41 + .../main/java/com/eazybytes/model/Loans.java | 42 + .../com/eazybytes/model/LoginRequestDTO.java | 4 + .../com/eazybytes/model/LoginResponseDTO.java | 4 + .../main/java/com/eazybytes/model/Notice.java | 42 + .../AccountTransactionsRepository.java | 4 +- .../repository/AccountsRepository.java | 7 +- .../eazybytes/repository/CardsRepository.java | 3 +- .../repository/ContactRepository.java | 2 +- .../repository/CustomerRepository.java | 14 + .../eazybytes/repository/LoanRepository.java | 6 +- .../repository/NoticeRepository.java | 0 .../src/main/resources/application.properties | 21 + .../resources/application_prod.properties | 15 + .../src/main/resources/sql/scripts.sql | 192 + .../EazyBankBackendApplicationTests.java | 13 + section_16/authserver/.gitignore | 33 + .../.mvn/wrapper/maven-wrapper.properties | 19 + section_16/authserver/mvnw | 259 + section_16/authserver/mvnw.cmd | 149 + section_16/authserver/pom.xml | 86 + .../authserver/AuthserverApplication.java | 13 + .../config/EazyBankUserDetailsService.java | 32 + ...BankUsernamePwdAuthenticationProvider.java | 38 + .../config/ProjectSecurityConfig.java | 212 + .../eazybytes/authserver/model/Authority.java | 21 + .../eazybytes/authserver/model/Customer.java | 41 + .../repository/CustomerRepository.java | 14 + .../src/main/resources/application.properties | 12 + .../AuthserverApplicationTests.java | 13 + section_16/springsecsection_16/.gitignore | 33 + .../.mvn/wrapper/maven-wrapper.properties | 18 + section_16/springsecsection_16/mvnw | 250 + section_16/springsecsection_16/mvnw.cmd | 146 + section_16/springsecsection_16/pom.xml | 89 + .../eazybytes/EazyBankBackendApplication.java | 17 + .../config/KeycloakOpaqueRoleConverter.java | 32 + .../config/KeycloakRoleConverter.java | 30 + .../config/ProjectSecurityConfig.java | 75 + .../config/ProjectSecurityProdConfig.java | 63 + .../constants/ApplicationConstants.java | 5 + .../controller/AccountController.java | 36 + .../controller/BalanceController.java | 38 + .../eazybytes/controller/CardsController.java | 37 + .../controller/ContactController.java | 43 + .../eazybytes/controller/LoansController.java | 39 + .../controller/NoticesController.java | 32 + .../eazybytes/controller/UserController.java | 43 + .../events/AuthenticationEvents.java | 24 + .../eazybytes/events/AuthorizationEvents.java | 20 + .../CustomAccessDeniedHandler.java | 32 + .../CustomBasicAuthenticationEntryPoint.java | 32 + .../eazybytes/filter/CsrfCookieFilter.java | 23 + .../eazybytes/model/AccountTransactions.java | 46 + .../java/com/eazybytes/model/Accounts.java | 32 + .../java/com/eazybytes/model/Authority.java | 22 + .../main/java/com/eazybytes/model/Cards.java | 39 + .../java/com/eazybytes/model/Contact.java | 34 + .../java/com/eazybytes/model/Customer.java | 41 + .../main/java/com/eazybytes/model/Loans.java | 42 + .../com/eazybytes/model/LoginRequestDTO.java | 4 + .../com/eazybytes/model/LoginResponseDTO.java | 4 + .../main/java/com/eazybytes/model/Notice.java | 42 + .../AccountTransactionsRepository.java | 15 + .../repository/AccountsRepository.java | 12 + .../eazybytes/repository/CardsRepository.java | 16 + .../repository/ContactRepository.java | 12 + .../repository/CustomerRepository.java | 14 + .../eazybytes/repository/LoanRepository.java | 17 + .../repository/NoticeRepository.java | 17 + .../src/main/resources/application.properties | 21 + .../resources/application_prod.properties | 15 + .../src/main/resources/sql/scripts.sql | 192 + .../EazyBankBackendApplicationTests.java | 13 + 1139 files changed, 136115 insertions(+), 96202 deletions(-) rename section1/{springsecuritybasic => springsecsection1}/.gitignore (100%) create mode 100644 section1/springsecsection1/.mvn/wrapper/maven-wrapper.properties create mode 100755 section1/springsecsection1/mvnw create mode 100644 section1/springsecsection1/mvnw.cmd rename section1/{springsecuritybasic => springsecsection1}/pom.xml (78%) rename {section_13/springsecsection_13/src/main/java/com/eazybytes => section1/springsecsection1/src/main/java/com/eazybytes/springsecsection1}/EazyBankBackendApplication.java (58%) rename section1/{springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic => springsecsection1/src/main/java/com/eazybytes/springsecsection1}/controller/WelcomeController.java (58%) create mode 100644 section1/springsecsection1/src/main/resources/application.properties rename section1/{springsecuritybasic/src/test/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplicationTests.java => springsecsection1/src/test/java/com/eazybytes/springsecsection1/EazyBankBackendApplicationTests.java} (63%) delete mode 100644 section1/springsecuritybasic/.mvn/wrapper/maven-wrapper.jar delete mode 100644 section1/springsecuritybasic/.mvn/wrapper/maven-wrapper.properties delete mode 100755 section1/springsecuritybasic/mvnw delete mode 100644 section1/springsecuritybasic/mvnw.cmd delete mode 100644 section1/springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplication.java delete mode 100644 section1/springsecuritybasic/src/main/resources/application.properties delete mode 100644 section2/springsecsection2/.mvn/wrapper/maven-wrapper.jar delete mode 100644 section3/springsecsection3/.mvn/wrapper/maven-wrapper.jar delete mode 100644 section3/springsecsection3/src/main/java/com/eazybytes/config/EazyBankUserDetails.java delete mode 100644 section3/springsecsection3/src/main/java/com/eazybytes/controller/LoginController.java delete mode 100644 section3/springsecsection3/src/main/java/com/eazybytes/model/Customer.java delete mode 100644 section3/springsecsection3/src/main/resources/sql/scripts.sql delete mode 100644 section4/springsecsection4/.mvn/wrapper/maven-wrapper.jar delete mode 100644 section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetails.java create mode 100644 section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java delete mode 100644 section4/springsecsection4/src/main/java/com/eazybytes/controller/LoginController.java create mode 100644 section4/springsecsection4/src/main/java/com/eazybytes/controller/UserController.java delete mode 100644 section5/springsecsection5/.mvn/wrapper/maven-wrapper.jar create mode 100644 section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java delete mode 100644 section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java delete mode 100644 section5/springsecsection5/src/main/java/com/eazybytes/controller/LoginController.java create mode 100644 section5/springsecsection5/src/main/java/com/eazybytes/controller/UserController.java delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/karma.conf.js delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/package-lock.json delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/package.json delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/routeguards/auth.routeguard.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/app/services/login/login.service.spec.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.prod.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/polyfills.ts delete mode 100644 section6/00_UI_Initial Code/bank-app-ui/src/test.ts delete mode 100644 section6/bank-app-ui/.browserslistrc delete mode 100644 section6/bank-app-ui/.vscode/extensions.json delete mode 100644 section6/bank-app-ui/.vscode/launch.json delete mode 100644 section6/bank-app-ui/.vscode/tasks.json delete mode 100644 section6/bank-app-ui/karma.conf.js delete mode 100644 section6/bank-app-ui/package-lock.json delete mode 100644 section6/bank-app-ui/package.json delete mode 100644 section6/bank-app-ui/src/app/app.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/account/account.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/balance/balance.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/cards/cards.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/header/header.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/home/home.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/loans/loans.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/login/login.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/logout/logout.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/components/notices/notices.component.spec.ts delete mode 100644 section6/bank-app-ui/src/app/routeguards/auth.routeguard.ts delete mode 100644 section6/bank-app-ui/src/app/services/login/login.service.spec.ts delete mode 100644 section6/bank-app-ui/src/environments/environment.prod.ts delete mode 100644 section6/bank-app-ui/src/environments/environment.ts delete mode 100644 section6/bank-app-ui/src/polyfills.ts delete mode 100644 section6/bank-app-ui/src/test.ts delete mode 100644 section6/springsecsection6/.mvn/wrapper/maven-wrapper.jar create mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java create mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java create mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/constants/ApplicationConstants.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/controller/LoginController.java create mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/controller/UserController.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/model/AccountTransactions.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/model/Accounts.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/model/Cards.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/model/Contact.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/model/Loans.java delete mode 100644 section6/springsecsection6/src/main/java/com/eazybytes/model/Notice.java create mode 100644 section6/springsecsection6/src/main/resources/application_prod.properties rename {section_12/springsecOAUTH2GitHub => section7/eazyschool-end}/.gitignore (100%) create mode 100644 section7/eazyschool-end/.mvn/wrapper/MavenWrapperDownloader.java create mode 100644 section7/eazyschool-end/.mvn/wrapper/maven-wrapper.jar create mode 100644 section7/eazyschool-end/.mvn/wrapper/maven-wrapper.properties rename {section_12/springsecOAUTH2GitHub => section7/eazyschool-end}/mvnw (94%) mode change 100755 => 100644 rename {section_13/springsecsection_13 => section7/eazyschool-end}/mvnw.cmd (84%) create mode 100644 section7/eazyschool-end/pom.xml rename section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplication.java => section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java (54%) create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationFailureHandler.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationSuccessHandler.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Contact.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Holiday.java create mode 100644 section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/service/ContactService.java create mode 100644 section7/eazyschool-end/src/main/resources/application.properties create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/css/style-starter.css create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/banner.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/banner.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/banner3.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/bg1.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/bg2.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/bg3.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/blog1.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/blog2.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/blog3.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/c1.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/c2.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/c3.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/c4.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/c5.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/c6.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/icon-1.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/icon-2.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/icon-3.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/icon-4.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/image.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/img1.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/team1.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/team2.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/team3.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/team4.png create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/testi1.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/testi2.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/images/testi3.jpg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/js/bootstrap.min.js create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/js/counter.js create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/js/jquery-3.3.1.min.js create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/js/theme-change.js create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.eot create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.svg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.ttf create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.woff create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.woff2 create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.eot create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.svg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.ttf create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.woff create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.woff2 create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.eot create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.svg create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.ttf create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.woff create mode 100644 section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.woff2 create mode 100644 section7/eazyschool-end/src/main/resources/templates/about.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/contact.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/courses.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/dashboard.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/footer.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/header.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/holidays.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/home.html create mode 100644 section7/eazyschool-end/src/main/resources/templates/login.html rename section_12/springsecOAUTH2GitHub/src/test/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplicationTests.java => section7/eazyschool-end/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java (62%) rename {section_13/springsecsection_13 => section7/eazyschool-start}/.gitignore (100%) create mode 100644 section7/eazyschool-start/.mvn/wrapper/MavenWrapperDownloader.java create mode 100644 section7/eazyschool-start/.mvn/wrapper/maven-wrapper.jar create mode 100644 section7/eazyschool-start/.mvn/wrapper/maven-wrapper.properties rename {section_13/springsecsection_13 => section7/eazyschool-start}/mvnw (94%) mode change 100755 => 100644 rename {section_12/springsecOAUTH2GitHub => section7/eazyschool-start}/mvnw.cmd (84%) create mode 100644 section7/eazyschool-start/pom.xml create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Contact.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Holiday.java create mode 100644 section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/service/ContactService.java create mode 100644 section7/eazyschool-start/src/main/resources/application.properties create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/css/style-starter.css create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/banner.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/banner.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/banner3.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/bg1.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/bg2.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/bg3.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/blog1.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/blog2.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/blog3.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/c1.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/c2.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/c3.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/c4.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/c5.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/c6.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/icon-1.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/icon-2.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/icon-3.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/icon-4.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/image.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/img1.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/team1.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/team2.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/team3.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/team4.png create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/testi1.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/testi2.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/images/testi3.jpg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/js/bootstrap.min.js create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/js/counter.js create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/js/jquery-3.3.1.min.js create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/js/theme-change.js create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.eot create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.svg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.ttf create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.woff create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.woff2 create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.eot create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.svg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.ttf create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.woff create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.woff2 create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.eot create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.svg create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.ttf create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.woff create mode 100644 section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.woff2 create mode 100644 section7/eazyschool-start/src/main/resources/templates/about.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/contact.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/courses.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/dashboard.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/footer.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/header.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/holidays.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/home.html create mode 100644 section7/eazyschool-start/src/main/resources/templates/login.html create mode 100644 section7/eazyschool-start/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java delete mode 100644 section7/springsecsection7/.mvn/wrapper/maven-wrapper.jar create mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java create mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java create mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/constants/ApplicationConstants.java create mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/controller/UserController.java create mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/model/AccountTransactions.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/model/Accounts.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/model/Authority.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/model/Cards.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/model/Contact.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/model/Loans.java delete mode 100644 section7/springsecsection7/src/main/java/com/eazybytes/model/Notice.java create mode 100644 section7/springsecsection7/src/main/resources/application_prod.properties rename {section6 => section8}/Angular+Project+Setup.pdf (100%) rename {section6 => section8/eazybank-end}/bank-app-ui/.editorconfig (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/.gitignore (100%) create mode 100644 section8/eazybank-end/bank-app-ui/.vscode/launch.json rename {section_13 => section8/eazybank-end}/bank-app-ui/README.md (100%) rename {section6 => section8/eazybank-end}/bank-app-ui/angular.json (88%) create mode 100644 section8/eazybank-end/bank-app-ui/package-lock.json create mode 100644 section8/eazybank-end/bank-app-ui/package.json rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/app-routing.module.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/app.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/app.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/app.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/app.module.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/account/account.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/account/account.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/account/account.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/balance/balance.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/balance/balance.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/balance/balance.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/cards/cards.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/cards/cards.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/cards/cards.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/contact/contact.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/contact/contact.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/contact/contact.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/dashboard/dashboard.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/dashboard/dashboard.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/dashboard/dashboard.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/header/header.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/header/header.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/header/header.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/home/home.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/home/home.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/home/home.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/loans/loans.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/loans/loans.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/loans/loans.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/login/login.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/login/login.component.html (100%) rename {section6 => section8/eazybank-end}/bank-app-ui/src/app/components/login/login.component.ts (95%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/logout/logout.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/logout/logout.component.html (100%) rename {section6 => section8/eazybank-end}/bank-app-ui/src/app/components/logout/logout.component.ts (80%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/notices/notices.component.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/components/notices/notices.component.html (100%) rename {section_13 => section8/eazybank-end}/bank-app-ui/src/app/components/notices/notices.component.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/constants/app.constants.ts (100%) rename {section6 => section8/eazybank-end}/bank-app-ui/src/app/interceptors/app.request.interceptor.ts (95%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/model/account.model.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/model/account.transactions.model.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/model/cards.model.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/model/contact.model.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/model/loans.model.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/app/model/user.model.ts (100%) create mode 100644 section8/eazybank-end/bank-app-ui/src/app/routeguards/auth.routeguard.ts rename {section9 => section8/eazybank-end}/bank-app-ui/src/app/services/dashboard/dashboard.service.ts (93%) rename {section_13 => section8/eazybank-end}/bank-app-ui/src/app/services/login/login.service.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/.gitkeep (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/css/bootstrap.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/css/font-awesome.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/fonts/FontAwesome.otf (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/assets/images/logo.png (100%) rename {section_13 => section8/eazybank-end}/bank-app-ui/src/environments/environment.development.ts (100%) rename {section_13 => section8/eazybank-end}/bank-app-ui/src/environments/environment.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/favicon.ico (100%) rename {section_10 => section8/eazybank-end}/bank-app-ui/src/index.html (94%) rename {section_13 => section8/eazybank-end}/bank-app-ui/src/main.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-end}/bank-app-ui/src/styles.css (100%) rename {section_13 => section8/eazybank-end}/bank-app-ui/tsconfig.app.json (100%) rename {section_13 => section8/eazybank-end}/bank-app-ui/tsconfig.json (100%) rename {section_13 => section8/eazybank-end}/bank-app-ui/tsconfig.spec.json (100%) rename {section9 => section8/eazybank-start}/bank-app-ui/.editorconfig (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/.gitignore (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/README.md (96%) rename {section_10 => section8/eazybank-start}/bank-app-ui/angular.json (88%) create mode 100644 section8/eazybank-start/bank-app-ui/package-lock.json create mode 100644 section8/eazybank-start/bank-app-ui/package.json rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/app-routing.module.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/app.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/app.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/app.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/app.module.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/account/account.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/account/account.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/account/account.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/balance/balance.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/balance/balance.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/balance/balance.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/cards/cards.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/cards/cards.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/cards/cards.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/contact/contact.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/contact/contact.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/contact/contact.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/dashboard/dashboard.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/dashboard/dashboard.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/dashboard/dashboard.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/header/header.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/header/header.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/header/header.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/home/home.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/home/home.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/home/home.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/loans/loans.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/loans/loans.component.html (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/loans/loans.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/login/login.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/login/login.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-start}/bank-app-ui/src/app/components/login/login.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/logout/logout.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/logout/logout.component.html (100%) rename {section_13 => section8/eazybank-start}/bank-app-ui/src/app/components/logout/logout.component.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/notices/notices.component.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/components/notices/notices.component.html (100%) rename {section6/00_UI_Initial Code => section8/eazybank-start}/bank-app-ui/src/app/components/notices/notices.component.ts (91%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/constants/app.constants.ts (100%) rename {section6/00_UI_Initial Code => section8/eazybank-start}/bank-app-ui/src/app/interceptors/app.request.interceptor.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/model/account.model.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/model/account.transactions.model.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/model/cards.model.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/model/contact.model.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/model/loans.model.ts (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/model/user.model.ts (100%) create mode 100644 section8/eazybank-start/bank-app-ui/src/app/routeguards/auth.routeguard.ts rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/services/dashboard/dashboard.service.ts (96%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/app/services/login/login.service.ts (82%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/.gitkeep (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/css/bootstrap.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/css/font-awesome.css (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/fonts/FontAwesome.otf (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 (100%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/assets/images/logo.png (100%) create mode 100644 section8/eazybank-start/bank-app-ui/src/environments/environment.development.ts create mode 100644 section8/eazybank-start/bank-app-ui/src/environments/environment.ts rename {section6 => section8/eazybank-start}/bank-app-ui/src/favicon.ico (100%) rename {section_13 => section8/eazybank-start}/bank-app-ui/src/index.html (94%) rename {section6/00_UI_Initial Code => section8/eazybank-start}/bank-app-ui/src/main.ts (57%) rename {section6 => section8/eazybank-start}/bank-app-ui/src/styles.css (100%) rename {section6/00_UI_Initial Code => section8/eazybank-start}/bank-app-ui/tsconfig.app.json (85%) rename {section6/00_UI_Initial Code => section8/eazybank-start}/bank-app-ui/tsconfig.json (88%) rename {section9 => section8/eazybank-start}/bank-app-ui/tsconfig.spec.json (81%) delete mode 100644 section8/springsecsection8/.mvn/wrapper/maven-wrapper.jar create mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java create mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java create mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java delete mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/constants/ApplicationConstants.java rename section8/springsecsection8/src/main/java/com/eazybytes/controller/{LoginController.java => UserController.java} (50%) create mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java delete mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java delete mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java delete mode 100644 section8/springsecsection8/src/main/java/com/eazybytes/model/Authority.java create mode 100644 section8/springsecsection8/src/main/resources/application_prod.properties delete mode 100644 section9/bank-app-ui/.browserslistrc delete mode 100644 section9/bank-app-ui/.vscode/extensions.json delete mode 100644 section9/bank-app-ui/.vscode/launch.json delete mode 100644 section9/bank-app-ui/.vscode/tasks.json delete mode 100644 section9/bank-app-ui/karma.conf.js delete mode 100644 section9/bank-app-ui/package-lock.json delete mode 100644 section9/bank-app-ui/package.json delete mode 100644 section9/bank-app-ui/src/app/app.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/account/account.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/balance/balance.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/cards/cards.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/header/header.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/home/home.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/loans/loans.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/login/login.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/logout/logout.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/components/notices/notices.component.spec.ts delete mode 100644 section9/bank-app-ui/src/app/routeguards/auth.routeguard.ts delete mode 100644 section9/bank-app-ui/src/app/services/login/login.service.spec.ts delete mode 100644 section9/bank-app-ui/src/environments/environment.prod.ts delete mode 100644 section9/bank-app-ui/src/environments/environment.ts delete mode 100644 section9/bank-app-ui/src/polyfills.ts delete mode 100644 section9/bank-app-ui/src/test.ts delete mode 100644 section9/springsecsection9/.mvn/wrapper/maven-wrapper.jar create mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java create mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java create mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java delete mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/constants/ApplicationConstants.java delete mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/constants/SecurityConstants.java rename section9/springsecsection9/src/main/java/com/eazybytes/controller/{LoginController.java => UserController.java} (50%) create mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/events/AuthorizationEvents.java create mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java delete mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java delete mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java delete mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java delete mode 100644 section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java create mode 100644 section9/springsecsection9/src/main/resources/application_prod.properties delete mode 100644 section_10/bank-app-ui/.browserslistrc delete mode 100644 section_10/bank-app-ui/.vscode/extensions.json delete mode 100644 section_10/bank-app-ui/.vscode/launch.json delete mode 100644 section_10/bank-app-ui/.vscode/tasks.json delete mode 100644 section_10/bank-app-ui/karma.conf.js delete mode 100644 section_10/bank-app-ui/package-lock.json delete mode 100644 section_10/bank-app-ui/package.json delete mode 100644 section_10/bank-app-ui/src/app/app.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/account/account.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/balance/balance.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/cards/cards.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/header/header.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/home/home.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/loans/loans.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/login/login.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/logout/logout.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/components/notices/notices.component.spec.ts delete mode 100644 section_10/bank-app-ui/src/app/routeguards/auth.routeguard.ts delete mode 100644 section_10/bank-app-ui/src/app/services/login/login.service.spec.ts delete mode 100644 section_10/bank-app-ui/src/environments/environment.prod.ts delete mode 100644 section_10/bank-app-ui/src/environments/environment.ts delete mode 100644 section_10/bank-app-ui/src/polyfills.ts delete mode 100644 section_10/bank-app-ui/src/test.ts delete mode 100644 section_10/springsecsection_10/.mvn/wrapper/maven-wrapper.jar create mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java create mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java create mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java delete mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/constants/ApplicationConstants.java delete mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/constants/SecurityConstants.java delete mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoginController.java rename section7/springsecsection7/src/main/java/com/eazybytes/controller/LoginController.java => section_10/springsecsection_10/src/main/java/com/eazybytes/controller/UserController.java (50%) create mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthorizationEvents.java create mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java delete mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java delete mode 100644 section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java create mode 100644 section_10/springsecsection_10/src/main/resources/application_prod.properties rename {section_10 => section_11}/bank-app-ui/.editorconfig (100%) rename {section9 => section_11}/bank-app-ui/.gitignore (100%) create mode 100644 section_11/bank-app-ui/.vscode/launch.json rename {section9 => section_11}/bank-app-ui/README.md (96%) rename {section6/00_UI_Initial Code => section_11}/bank-app-ui/angular.json (88%) create mode 100644 section_11/bank-app-ui/package-lock.json create mode 100644 section_11/bank-app-ui/package.json rename {section9 => section_11}/bank-app-ui/src/app/app-routing.module.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/app.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/app.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/app.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/app.module.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/account/account.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/account/account.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/account/account.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/balance/balance.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/balance/balance.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/balance/balance.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/cards/cards.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/cards/cards.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/cards/cards.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/contact/contact.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/contact/contact.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/contact/contact.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/dashboard/dashboard.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/dashboard/dashboard.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/dashboard/dashboard.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/header/header.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/header/header.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/header/header.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/home/home.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/home/home.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/home/home.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/loans/loans.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/loans/loans.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/loans/loans.component.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/login/login.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/login/login.component.html (100%) rename {section_10 => section_11}/bank-app-ui/src/app/components/login/login.component.ts (87%) rename {section9 => section_11}/bank-app-ui/src/app/components/logout/logout.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/logout/logout.component.html (100%) rename {section6/00_UI_Initial Code => section_11}/bank-app-ui/src/app/components/logout/logout.component.ts (80%) rename {section9 => section_11}/bank-app-ui/src/app/components/notices/notices.component.css (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/notices/notices.component.html (100%) rename {section9 => section_11}/bank-app-ui/src/app/components/notices/notices.component.ts (91%) rename {section9 => section_11}/bank-app-ui/src/app/constants/app.constants.ts (100%) rename {section_10 => section_11}/bank-app-ui/src/app/interceptors/app.request.interceptor.ts (94%) rename {section9 => section_11}/bank-app-ui/src/app/model/account.model.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/model/account.transactions.model.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/model/cards.model.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/model/contact.model.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/model/loans.model.ts (100%) rename {section9 => section_11}/bank-app-ui/src/app/model/user.model.ts (100%) create mode 100644 section_11/bank-app-ui/src/app/routeguards/auth.routeguard.ts rename {section6/00_UI_Initial Code => section_11}/bank-app-ui/src/app/services/dashboard/dashboard.service.ts (93%) rename {section9 => section_11}/bank-app-ui/src/app/services/login/login.service.ts (82%) rename {section9 => section_11}/bank-app-ui/src/assets/.gitkeep (100%) rename {section9 => section_11}/bank-app-ui/src/assets/css/bootstrap.css (100%) rename {section9 => section_11}/bank-app-ui/src/assets/css/font-awesome.css (100%) rename {section9 => section_11}/bank-app-ui/src/assets/fonts/FontAwesome.otf (100%) rename {section9 => section_11}/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot (100%) rename {section9 => section_11}/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf (100%) rename {section9 => section_11}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff (100%) rename {section9 => section_11}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 (100%) rename {section9 => section_11}/bank-app-ui/src/assets/images/logo.png (100%) create mode 100644 section_11/bank-app-ui/src/environments/environment.development.ts create mode 100644 section_11/bank-app-ui/src/environments/environment.ts rename {section9 => section_11}/bank-app-ui/src/favicon.ico (100%) rename {section6/00_UI_Initial Code => section_11}/bank-app-ui/src/index.html (100%) rename {section9 => section_11}/bank-app-ui/src/main.ts (57%) rename {section9 => section_11}/bank-app-ui/src/styles.css (100%) rename {section9 => section_11}/bank-app-ui/tsconfig.app.json (85%) rename {section9 => section_11}/bank-app-ui/tsconfig.json (88%) rename {section6/00_UI_Initial Code => section_11}/bank-app-ui/tsconfig.spec.json (81%) create mode 100644 section_11/springsecsection_11/.gitignore create mode 100644 section_11/springsecsection_11/.mvn/wrapper/maven-wrapper.properties create mode 100755 section_11/springsecsection_11/mvnw create mode 100644 section_11/springsecsection_11/mvnw.cmd create mode 100644 section_11/springsecsection_11/pom.xml create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/EazyBankBackendApplication.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/constants/ApplicationConstants.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/controller/AccountController.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/controller/BalanceController.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/controller/CardsController.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/controller/ContactController.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/controller/LoansController.java rename {section_13/springsecsection_13 => section_11/springsecsection_11}/src/main/java/com/eazybytes/controller/NoticesController.java (82%) create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/controller/UserController.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthorizationEvents.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java rename {section_13/springsecsection_13 => section_11/springsecsection_11}/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java (84%) create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java rename {section8/springsecsection8 => section_11/springsecsection_11}/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java (60%) create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/AccountTransactions.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/Accounts.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/Authority.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/Cards.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/Contact.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/Customer.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/Loans.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginRequestDTO.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginResponseDTO.java create mode 100644 section_11/springsecsection_11/src/main/java/com/eazybytes/model/Notice.java rename {section6/springsecsection6 => section_11/springsecsection_11}/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java (86%) rename {section_13/springsecsection_13 => section_11/springsecsection_11}/src/main/java/com/eazybytes/repository/AccountsRepository.java (85%) rename {section7/springsecsection7 => section_11/springsecsection_11}/src/main/java/com/eazybytes/repository/CardsRepository.java (78%) rename {section_13/springsecsection_13 => section_11/springsecsection_11}/src/main/java/com/eazybytes/repository/ContactRepository.java (95%) rename {section3/springsecsection3 => section_11/springsecsection_11}/src/main/java/com/eazybytes/repository/CustomerRepository.java (77%) rename {section6/springsecsection6 => section_11/springsecsection_11}/src/main/java/com/eazybytes/repository/LoanRepository.java (81%) rename {section6/springsecsection6 => section_11/springsecsection_11}/src/main/java/com/eazybytes/repository/NoticeRepository.java (100%) create mode 100644 section_11/springsecsection_11/src/main/resources/application.properties create mode 100644 section_11/springsecsection_11/src/main/resources/application_prod.properties rename {section_13/springsecsection_13 => section_11/springsecsection_11}/src/main/resources/sql/scripts.sql (97%) rename {section_13/springsecsection_13 => section_11/springsecsection_11}/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java (100%) rename {section_13 => section_12}/bank-app-ui/.editorconfig (100%) rename {section_10 => section_12}/bank-app-ui/.gitignore (100%) create mode 100644 section_12/bank-app-ui/.vscode/launch.json rename {section6/00_UI_Initial Code => section_12}/bank-app-ui/README.md (96%) rename {section9 => section_12}/bank-app-ui/angular.json (88%) create mode 100644 section_12/bank-app-ui/package-lock.json create mode 100644 section_12/bank-app-ui/package.json rename {section_10 => section_12}/bank-app-ui/src/app/app-routing.module.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/app.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/app.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/app.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/app.module.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/account/account.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/account/account.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/account/account.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/balance/balance.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/balance/balance.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/balance/balance.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/cards/cards.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/cards/cards.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/cards/cards.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/contact/contact.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/contact/contact.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/contact/contact.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/dashboard/dashboard.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/dashboard/dashboard.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/dashboard/dashboard.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/header/header.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/header/header.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/header/header.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/home/home.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/home/home.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/home/home.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/loans/loans.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/loans/loans.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/loans/loans.component.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/login/login.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/login/login.component.html (100%) rename {section_13 => section_12}/bank-app-ui/src/app/components/login/login.component.ts (87%) rename {section_10 => section_12}/bank-app-ui/src/app/components/logout/logout.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/logout/logout.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/logout/logout.component.ts (80%) rename {section_10 => section_12}/bank-app-ui/src/app/components/notices/notices.component.css (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/notices/notices.component.html (100%) rename {section_10 => section_12}/bank-app-ui/src/app/components/notices/notices.component.ts (91%) rename {section_10 => section_12}/bank-app-ui/src/app/constants/app.constants.ts (100%) rename {section9 => section_12}/bank-app-ui/src/app/interceptors/app.request.interceptor.ts (94%) rename {section_10 => section_12}/bank-app-ui/src/app/model/account.model.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/model/account.transactions.model.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/model/cards.model.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/model/contact.model.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/model/loans.model.ts (100%) rename {section_10 => section_12}/bank-app-ui/src/app/model/user.model.ts (100%) create mode 100644 section_12/bank-app-ui/src/app/routeguards/auth.routeguard.ts rename {section_10 => section_12}/bank-app-ui/src/app/services/dashboard/dashboard.service.ts (93%) rename {section_10 => section_12}/bank-app-ui/src/app/services/login/login.service.ts (82%) rename {section_10 => section_12}/bank-app-ui/src/assets/.gitkeep (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/css/bootstrap.css (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/css/font-awesome.css (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/fonts/FontAwesome.otf (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 (100%) rename {section_10 => section_12}/bank-app-ui/src/assets/images/logo.png (100%) create mode 100644 section_12/bank-app-ui/src/environments/environment.development.ts create mode 100644 section_12/bank-app-ui/src/environments/environment.ts rename {section_10 => section_12}/bank-app-ui/src/favicon.ico (100%) rename {section6 => section_12}/bank-app-ui/src/index.html (100%) rename {section_10 => section_12}/bank-app-ui/src/main.ts (57%) rename {section_10 => section_12}/bank-app-ui/src/styles.css (100%) rename {section6 => section_12}/bank-app-ui/tsconfig.app.json (85%) rename {section_10 => section_12}/bank-app-ui/tsconfig.json (88%) rename {section_10 => section_12}/bank-app-ui/tsconfig.spec.json (81%) delete mode 100644 section_12/springsecOAUTH2GitHub/.mvn/wrapper/maven-wrapper.jar delete mode 100644 section_12/springsecOAUTH2GitHub/.mvn/wrapper/maven-wrapper.properties delete mode 100644 section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/config/SpringSecOAUTH2GitHubConfig.java delete mode 100644 section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/controller/SecureController.java delete mode 100644 section_12/springsecOAUTH2GitHub/src/main/resources/application.properties create mode 100644 section_12/springsecsection_12/.gitignore create mode 100644 section_12/springsecsection_12/.mvn/wrapper/maven-wrapper.properties create mode 100755 section_12/springsecsection_12/mvnw create mode 100644 section_12/springsecsection_12/mvnw.cmd create mode 100644 section_12/springsecsection_12/pom.xml create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/EazyBankBackendApplication.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/constants/ApplicationConstants.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/controller/AccountController.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/controller/BalanceController.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/controller/CardsController.java rename {section_13/springsecsection_13 => section_12/springsecsection_12}/src/main/java/com/eazybytes/controller/ContactController.java (57%) create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/controller/LoansController.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/controller/NoticesController.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/controller/UserController.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthorizationEvents.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java rename {section6/springsecsection6 => section_12/springsecsection_12}/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java (84%) create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java rename {section9/springsecsection9 => section_12/springsecsection_12}/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java (60%) create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/AccountTransactions.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/Accounts.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/Authority.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/Cards.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/Contact.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/Customer.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/Loans.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginRequestDTO.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginResponseDTO.java create mode 100644 section_12/springsecsection_12/src/main/java/com/eazybytes/model/Notice.java rename {section_13/springsecsection_13 => section_12/springsecsection_12}/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java (86%) rename {section6/springsecsection6 => section_12/springsecsection_12}/src/main/java/com/eazybytes/repository/AccountsRepository.java (85%) rename {section_13/springsecsection_13 => section_12/springsecsection_12}/src/main/java/com/eazybytes/repository/CardsRepository.java (78%) rename {section6/springsecsection6 => section_12/springsecsection_12}/src/main/java/com/eazybytes/repository/ContactRepository.java (95%) rename {section_13/springsecsection_13 => section_12/springsecsection_12}/src/main/java/com/eazybytes/repository/CustomerRepository.java (74%) rename {section_13/springsecsection_13 => section_12/springsecsection_12}/src/main/java/com/eazybytes/repository/LoanRepository.java (85%) rename {section7/springsecsection7 => section_12/springsecsection_12}/src/main/java/com/eazybytes/repository/NoticeRepository.java (100%) create mode 100644 section_12/springsecsection_12/src/main/resources/application.properties create mode 100644 section_12/springsecsection_12/src/main/resources/application_prod.properties create mode 100644 section_12/springsecsection_12/src/main/resources/sql/scripts.sql create mode 100644 section_12/springsecsection_12/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java delete mode 100644 section_13/springsecsection_13/.mvn/wrapper/maven-wrapper.jar delete mode 100644 section_13/springsecsection_13/.mvn/wrapper/maven-wrapper.properties delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/constants/ApplicationConstants.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/controller/LoginController.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/AccountTransactions.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/Accounts.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/Authority.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/Cards.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/Contact.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/Customer.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/Loans.java delete mode 100644 section_13/springsecsection_13/src/main/java/com/eazybytes/model/Notice.java delete mode 100644 section_13/springsecsection_13/src/main/resources/application.properties create mode 100644 section_14/springsecOAUTH2/.gitignore create mode 100644 section_14/springsecOAUTH2/.mvn/wrapper/maven-wrapper.properties create mode 100755 section_14/springsecOAUTH2/mvnw create mode 100644 section_14/springsecOAUTH2/mvnw.cmd rename {section_12/springsecOAUTH2GitHub => section_14/springsecOAUTH2}/pom.xml (69%) create mode 100644 section_14/springsecOAUTH2/src/main/java/com/eazybytes/SpringsecOauth2Application.java create mode 100644 section_14/springsecOAUTH2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java create mode 100644 section_14/springsecOAUTH2/src/main/java/com/eazybytes/controller/SecureController.java create mode 100644 section_14/springsecOAUTH2/src/main/resources/application.properties rename {section_12/springsecOAUTH2GitHub => section_14/springsecOAUTH2}/src/main/resources/static/secure.html (50%) create mode 100644 section_14/springsecOAUTH2/src/test/java/com/eazybytes/SpringsecOauth2ApplicationTests.java rename {section_13 => section_15}/Angular+Project+Setup.pdf (100%) create mode 100644 section_15/bank-app-ui/.editorconfig rename {section_13 => section_15}/bank-app-ui/.gitignore (100%) rename {section_13 => section_15}/bank-app-ui/.vscode/launch.json (100%) rename {section_13 => section_15}/bank-app-ui/.vscode/tasks.json (100%) rename {section_10 => section_15}/bank-app-ui/README.md (96%) rename {section_13 => section_15}/bank-app-ui/angular.json (100%) rename {section_13 => section_15}/bank-app-ui/package-lock.json (100%) rename {section_13 => section_15}/bank-app-ui/package.json (100%) rename {section_13 => section_15}/bank-app-ui/src/app/app-routing.module.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/app.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/app.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/app.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/app.module.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/account/account.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/account/account.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/account/account.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/balance/balance.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/balance/balance.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/balance/balance.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/cards/cards.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/cards/cards.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/cards/cards.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/contact/contact.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/contact/contact.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/contact/contact.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/dashboard/dashboard.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/dashboard/dashboard.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/dashboard/dashboard.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/header/header.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/header/header.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/header/header.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/home/home.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/home/home.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/home/home.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/loans/loans.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/loans/loans.component.html (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/loans/loans.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/login/login.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/login/login.component.html (100%) rename {section9 => section_15}/bank-app-ui/src/app/components/login/login.component.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/logout/logout.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/logout/logout.component.html (100%) rename {section9 => section_15}/bank-app-ui/src/app/components/logout/logout.component.ts (89%) rename {section_13 => section_15}/bank-app-ui/src/app/components/notices/notices.component.css (100%) rename {section_13 => section_15}/bank-app-ui/src/app/components/notices/notices.component.html (100%) rename {section6 => section_15}/bank-app-ui/src/app/components/notices/notices.component.ts (91%) rename {section_13 => section_15}/bank-app-ui/src/app/constants/app.constants.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/model/account.model.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/model/account.transactions.model.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/model/cards.model.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/model/contact.model.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/model/loans.model.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/model/user.model.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/routeguards/auth.route.ts (100%) rename {section_13 => section_15}/bank-app-ui/src/app/services/dashboard/dashboard.service.ts (100%) rename {section6/00_UI_Initial Code => section_15}/bank-app-ui/src/app/services/login/login.service.ts (82%) rename {section_13 => section_15}/bank-app-ui/src/assets/.gitkeep (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/css/bootstrap.css (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/css/font-awesome.css (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/fonts/FontAwesome.otf (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 (100%) rename {section_13 => section_15}/bank-app-ui/src/assets/images/logo.png (100%) create mode 100644 section_15/bank-app-ui/src/environments/environment.development.ts create mode 100644 section_15/bank-app-ui/src/environments/environment.ts rename {section_13 => section_15}/bank-app-ui/src/favicon.ico (100%) rename {section9 => section_15}/bank-app-ui/src/index.html (100%) rename {section6 => section_15}/bank-app-ui/src/main.ts (57%) rename {section_13 => section_15}/bank-app-ui/src/styles.css (100%) rename {section_10 => section_15}/bank-app-ui/tsconfig.app.json (85%) rename {section6 => section_15}/bank-app-ui/tsconfig.json (88%) rename {section6 => section_15}/bank-app-ui/tsconfig.spec.json (81%) create mode 100644 section_15/springsecsection_15/.gitignore create mode 100644 section_15/springsecsection_15/.mvn/wrapper/maven-wrapper.properties create mode 100755 section_15/springsecsection_15/mvnw create mode 100644 section_15/springsecsection_15/mvnw.cmd rename {section_13/springsecsection_13 => section_15/springsecsection_15}/pom.xml (76%) create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/EazyBankBackendApplication.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java rename {section_13/springsecsection_13 => section_15/springsecsection_15}/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java (72%) create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/constants/ApplicationConstants.java rename {section_13/springsecsection_13 => section_15/springsecsection_15}/src/main/java/com/eazybytes/controller/AccountController.java (60%) rename {section_13/springsecsection_13 => section_15/springsecsection_15}/src/main/java/com/eazybytes/controller/BalanceController.java (55%) rename {section_13/springsecsection_13 => section_15/springsecsection_15}/src/main/java/com/eazybytes/controller/CardsController.java (58%) create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/controller/ContactController.java rename {section_13/springsecsection_13 => section_15/springsecsection_15}/src/main/java/com/eazybytes/controller/LoansController.java (53%) create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/controller/NoticesController.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/controller/UserController.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthorizationEvents.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java rename {section7/springsecsection7 => section_15/springsecsection_15}/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java (84%) create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/AccountTransactions.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/Accounts.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/Authority.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/Cards.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/Contact.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/Customer.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/Loans.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginRequestDTO.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginResponseDTO.java create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/model/Notice.java rename {section7/springsecsection7 => section_15/springsecsection_15}/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java (86%) rename {section7/springsecsection7 => section_15/springsecsection_15}/src/main/java/com/eazybytes/repository/AccountsRepository.java (85%) rename {section6/springsecsection6 => section_15/springsecsection_15}/src/main/java/com/eazybytes/repository/CardsRepository.java (78%) rename {section7/springsecsection7 => section_15/springsecsection_15}/src/main/java/com/eazybytes/repository/ContactRepository.java (95%) create mode 100644 section_15/springsecsection_15/src/main/java/com/eazybytes/repository/CustomerRepository.java rename {section7/springsecsection7 => section_15/springsecsection_15}/src/main/java/com/eazybytes/repository/LoanRepository.java (63%) rename {section_13/springsecsection_13 => section_15/springsecsection_15}/src/main/java/com/eazybytes/repository/NoticeRepository.java (100%) create mode 100644 section_15/springsecsection_15/src/main/resources/application.properties create mode 100644 section_15/springsecsection_15/src/main/resources/application_prod.properties create mode 100644 section_15/springsecsection_15/src/main/resources/sql/scripts.sql create mode 100644 section_15/springsecsection_15/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java create mode 100644 section_16/authserver/.gitignore create mode 100644 section_16/authserver/.mvn/wrapper/maven-wrapper.properties create mode 100755 section_16/authserver/mvnw create mode 100644 section_16/authserver/mvnw.cmd create mode 100644 section_16/authserver/pom.xml create mode 100644 section_16/authserver/src/main/java/com/eazybytes/authserver/AuthserverApplication.java create mode 100644 section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUserDetailsService.java create mode 100644 section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUsernamePwdAuthenticationProvider.java create mode 100644 section_16/authserver/src/main/java/com/eazybytes/authserver/config/ProjectSecurityConfig.java create mode 100644 section_16/authserver/src/main/java/com/eazybytes/authserver/model/Authority.java create mode 100644 section_16/authserver/src/main/java/com/eazybytes/authserver/model/Customer.java create mode 100644 section_16/authserver/src/main/java/com/eazybytes/authserver/repository/CustomerRepository.java create mode 100644 section_16/authserver/src/main/resources/application.properties create mode 100644 section_16/authserver/src/test/java/com/eazybytes/authserver/AuthserverApplicationTests.java create mode 100644 section_16/springsecsection_16/.gitignore create mode 100644 section_16/springsecsection_16/.mvn/wrapper/maven-wrapper.properties create mode 100755 section_16/springsecsection_16/mvnw create mode 100644 section_16/springsecsection_16/mvnw.cmd create mode 100644 section_16/springsecsection_16/pom.xml create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/EazyBankBackendApplication.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/constants/ApplicationConstants.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/controller/AccountController.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/controller/BalanceController.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/controller/CardsController.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/controller/ContactController.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/controller/LoansController.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/controller/NoticesController.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/controller/UserController.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthenticationEvents.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthorizationEvents.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/AccountTransactions.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/Accounts.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/Authority.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/Cards.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/Contact.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/Customer.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/Loans.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginRequestDTO.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginResponseDTO.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/model/Notice.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountsRepository.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CardsRepository.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/repository/ContactRepository.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CustomerRepository.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/repository/LoanRepository.java create mode 100644 section_16/springsecsection_16/src/main/java/com/eazybytes/repository/NoticeRepository.java create mode 100644 section_16/springsecsection_16/src/main/resources/application.properties create mode 100644 section_16/springsecsection_16/src/main/resources/application_prod.properties create mode 100644 section_16/springsecsection_16/src/main/resources/sql/scripts.sql create mode 100644 section_16/springsecsection_16/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java diff --git a/README.md b/README.md index dbc73b08..23f32d13 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,6 @@ * Deep dive about encoding, encryption and hashing * What is CSRF, CORS and how to address them * What is Authentication and Authorization. How they are different from each other. -* Securing endpoint URLs inside web applications using Ant, MVC & Regex Matchers * Filters in Spring Security and how to write own custom filters * Deep dive about JWT (JSON Web Tokens) and the role of them inside Authentication & Authorization * Deep dive about OAUTH2 and various grant type flows inside OAUTH2. @@ -20,7 +19,7 @@ * Applying authorization rules using roles, authorities inside a web application using Spring Security * Method level security in web/non-web applications * Social Login integrations into web applications -* Set up of Authorization Server using KeyCloak +* Set up of Authorization Server using KeyCloak, Spring Authorization Server ## Pre-requisite for the course - Good understanding on Java and Spring concepts @@ -33,16 +32,23 @@ - Spring Website - https://spring.io/ - Spring Projects website - https://spring.io/projects - Spring Boot properties - https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html -- AWS website - https://aws.amazon.com/ +- Online Bcrypt generator - https://bcrypt-generator.com +- Docker website - https://www.docker.com/ - SQLECTRON website - https://sqlectron.github.io -- Free MySQL DB website - https://www.freemysqlhosting.net +- Warp terminal website - https://www.warp.dev/ - OAuth2 Website - https://oauth.net/2/ +- OAuth 2.1 Blog - https://aaronparecki.com/2019/12/12/21/its-time-for-oauth-2-dot-1 - OAuth2 playground - https://www.oauth.com/playground/ - KeyCloak website - https://www.keycloak.org -- KeyCloak Download page - https://www.keycloak.org/downloads -- KeyCloak setup - https://www.keycloak.org/getting-started/getting-started-zip - KeyCloak guides - https://www.keycloak.org/guides - KeyCloak Well known APIs - http://localhost:8180/realms/eazybankdev/.well-known/openid-configuration - Angular Keycloak library - https://www.npmjs.com/package/keycloak-angular - Keycloak official documentation - https://www.keycloak.org/documentation -- Keycloak Admin REST APIs - https://www.keycloak.org/docs-api/19.0.2/rest-api/index.html +- Keycloak Admin REST APIs - https://www.keycloak.org/docs-api/latest/rest-api/index.html + +## Commands used in the course + +| Command | Description | +| ------------- | ------------- | +| "docker run -p 3306:3306 --name springsecurity -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=eazybank -d mysql" | To create a MySQL DB container | +| "docker run -p 8180:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:25.0.1 start-dev" | To create a Keycloak container | diff --git a/SpringSecurity.postman_collection.json b/SpringSecurity.postman_collection.json index a6bebf51..9cadb117 100644 --- a/SpringSecurity.postman_collection.json +++ b/SpringSecurity.postman_collection.json @@ -1,6 +1,6 @@ { "info": { - "_postman_id": "83b8a41d-188d-44bd-b7b7-8dff1fdc728a", + "_postman_id": "66ee11bd-d24b-4313-a0cc-a5ce2419a8a6", "name": "SpringSecurity", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "_exporter_id": "1599575" @@ -13,29 +13,12 @@ "name": "GetWelcome_Request1", "request": { "auth": { - "type": "basic", - "basic": [ - { - "key": "username", - "value": "eazybytes", - "type": "string" - }, - { - "key": "password", - "value": "12345", - "type": "string" - } - ] + "type": "noauth" }, "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/welcome", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/welcome", "path": [ "welcome" ] @@ -43,6 +26,31 @@ }, "response": [] } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } ] }, { @@ -55,13 +63,13 @@ "type": "basic", "basic": [ { - "key": "username", - "value": "eazybytes", + "key": "password", + "value": "12345", "type": "string" }, { - "key": "password", - "value": "12345", + "key": "username", + "value": "eazybytes", "type": "string" } ] @@ -69,12 +77,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myAccount", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount", "path": [ "myAccount" ] @@ -103,12 +106,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myBalance", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance", "path": [ "myBalance" ] @@ -137,12 +135,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myLoans", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans", "path": [ "myLoans" ] @@ -171,12 +164,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myCards", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards", "path": [ "myCards" ] @@ -193,12 +181,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -215,12 +198,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/contact", "path": [ "contact" ] @@ -228,6 +206,31 @@ }, "response": [] } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } ] }, { @@ -241,12 +244,12 @@ "basic": [ { "key": "password", - "value": "54321", + "value": "EazyBytes@12345", "type": "string" }, { "key": "username", - "value": "johndoe@example.com", + "value": "user", "type": "string" } ] @@ -254,12 +257,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myAccount", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount", "path": [ "myAccount" ] @@ -274,13 +272,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "54321", + "key": "username", + "value": "user", "type": "string" }, { - "key": "username", - "value": "johndoe@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -288,12 +286,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myBalance", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance", "path": [ "myBalance" ] @@ -308,13 +301,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "54321", + "key": "username", + "value": "user", "type": "string" }, { - "key": "username", - "value": "johndoe@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -322,12 +315,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myLoans", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans", "path": [ "myLoans" ] @@ -342,13 +330,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "54321", + "key": "username", + "value": "user", "type": "string" }, { - "key": "username", - "value": "johndoe@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -356,12 +344,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myCards", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards", "path": [ "myCards" ] @@ -378,12 +361,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -400,124 +378,43 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/contact", "path": [ "contact" ] } }, "response": [] - }, - { - "name": "register", - "request": { - "auth": { - "type": "noauth" - }, - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"email\": \"sam@example.com\",\n \"pwd\": \"12345\",\n \"role\": \"user\"\n}", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "http://localhost:8080/register", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", - "path": [ - "register" - ] - } - }, - "response": [] } - ] - }, - { - "name": "Section4", - "item": [ + ], + "auth": { + "type": "noauth" + }, + "event": [ { - "name": "register_BcryptDemo", - "request": { - "auth": { - "type": "noauth" - }, - "method": "POST", - "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"email\": \"john@example.com\",\n \"pwd\": \"12345\",\n \"role\": \"user\"\n}", - "options": { - "raw": { - "language": "json" - } - } - }, - "url": { - "raw": "http://localhost:8080/register", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", - "path": [ - "register" - ] - } - }, - "response": [] + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } }, { - "name": "myAccount_BcryptDemo", - "request": { - "auth": { - "type": "basic", - "basic": [ - { - "key": "password", - "value": "12345", - "type": "string" - }, - { - "key": "username", - "value": "john@example.com", - "type": "string" - } - ] - }, - "method": "GET", - "header": [], - "url": { - "raw": "http://localhost:8080/myAccount", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", - "path": [ - "myAccount" - ] - } - }, - "response": [] + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } } ] }, { - "name": "Section5", + "name": "Section4", "item": [ { "name": "myAccount", @@ -526,13 +423,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "12345", + "key": "username", + "value": "john@example.com", "type": "string" }, { - "key": "username", - "value": "john@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -540,12 +437,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myAccount", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount", "path": [ "myAccount" ] @@ -560,13 +452,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "12345", + "key": "username", + "value": "john@example.com", "type": "string" }, { - "key": "username", - "value": "john@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -574,12 +466,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myBalance", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance", "path": [ "myBalance" ] @@ -594,13 +481,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "12345", + "key": "username", + "value": "john@example.com", "type": "string" }, { - "key": "username", - "value": "john@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -608,12 +495,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myLoans", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans", "path": [ "myLoans" ] @@ -628,13 +510,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "12345", + "key": "username", + "value": "john@example.com", "type": "string" }, { - "key": "username", - "value": "john@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -642,12 +524,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myCards", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards", "path": [ "myCards" ] @@ -664,12 +541,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -686,12 +558,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/contact", "path": [ "contact" ] @@ -709,7 +576,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"email\": \"sam@example.com\",\n \"pwd\": \"12345\",\n \"role\": \"user\"\n}", + "raw": "{\n \"email\": \"john@example.com\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"user\"\n}", "options": { "raw": { "language": "json" @@ -717,12 +584,7 @@ } }, "url": { - "raw": "http://localhost:8080/register", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/register", "path": [ "register" ] @@ -730,10 +592,35 @@ }, "response": [] } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } ] }, { - "name": "Section6", + "name": "Section5", "item": [ { "name": "myAccount", @@ -742,13 +629,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "12345", + "key": "username", + "value": "smith@example.com", "type": "string" }, { - "key": "username", - "value": "happy@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -756,20 +643,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myAccount?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount", "path": [ "myAccount" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -783,12 +659,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "john@example.com", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -796,20 +672,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myBalance?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance", "path": [ "myBalance" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -823,12 +688,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "john@example.com", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -836,20 +701,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myLoans?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans", "path": [ "myLoans" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -863,12 +717,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "user", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -876,20 +730,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myCards?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards", "path": [ "myCards" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -904,12 +747,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -923,24 +761,10 @@ "auth": { "type": "noauth" }, - "method": "POST", + "method": "GET", "header": [], - "body": { - "mode": "raw", - "raw": "{\n \"contactName\": \"Madan Reddy\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n}", - "options": { - "raw": { - "language": "json" - } - } - }, "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/contact", "path": [ "contact" ] @@ -958,7 +782,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\",\n \"mobileNumber\": \"4564747484\",\n \"pwd\": \"12345\",\n \"role\": \"user\"\n}", + "raw": "{\n \"email\": \"smith@example.com\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"admin\"\n}", "options": { "raw": { "language": "json" @@ -966,12 +790,7 @@ } }, "url": { - "raw": "http://localhost:8080/register", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/register", "path": [ "register" ] @@ -979,10 +798,35 @@ }, "response": [] } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } ] }, { - "name": "Section7", + "name": "Section6", "item": [ { "name": "myAccount", @@ -992,12 +836,12 @@ "basic": [ { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" }, { "key": "username", - "value": "happy@example.com", + "value": "smith@example.com", "type": "string" } ] @@ -1005,20 +849,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myAccount?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount", "path": [ "myAccount" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1032,12 +865,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "john@example.com", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1045,20 +878,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myBalance?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance", "path": [ "myBalance" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1072,12 +894,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "john@example.com", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1085,20 +907,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myLoans?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans", "path": [ "myLoans" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1112,12 +923,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "user", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1125,20 +936,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myCards?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards", "path": [ "myCards" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1153,12 +953,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -1168,6 +963,23 @@ }, { "name": "contact", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [], + "url": { + "raw": "/contact", + "path": [ + "contact" + ] + } + }, + "response": [] + }, + { + "name": "register", "request": { "auth": { "type": "noauth" @@ -1176,7 +988,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"contactName\": \"Madan Reddy\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n}", + "raw": "{\n \"email\": \"smith@example.com\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"admin\"\n}", "options": { "raw": { "language": "json" @@ -1184,23 +996,43 @@ } }, "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/register", "path": [ - "contact" + "register" ] } }, "response": [] } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } ] }, { - "name": "Section8", + "name": "Section7", "item": [ { "name": "myAccount", @@ -1209,13 +1041,13 @@ "type": "basic", "basic": [ { - "key": "password", - "value": "12345", + "key": "username", + "value": "smith@example.com", "type": "string" }, { - "key": "username", - "value": "happy@example.com", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1223,20 +1055,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myAccount?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount", "path": [ "myAccount" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1250,12 +1071,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "john@example.com", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1263,20 +1084,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myBalance?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance", "path": [ "myBalance" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1290,12 +1100,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "john@example.com", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1303,20 +1113,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myLoans?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans", "path": [ "myLoans" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1330,12 +1129,12 @@ "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "user", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1343,20 +1142,9 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/myCards?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards", "path": [ "myCards" - ], - "query": [ - { - "key": "id", - "value": "1" - } ] } }, @@ -1371,12 +1159,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -1386,6 +1169,23 @@ }, { "name": "contact", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [], + "url": { + "raw": "/contact", + "path": [ + "contact" + ] + } + }, + "response": [] + }, + { + "name": "register", "request": { "auth": { "type": "noauth" @@ -1394,7 +1194,7 @@ "header": [], "body": { "mode": "raw", - "raw": "{\n \"contactName\": \"Madan Reddy\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n}", + "raw": "{\n \"email\": \"smith@example.com\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"admin\"\n}", "options": { "raw": { "language": "json" @@ -1402,38 +1202,58 @@ } }, "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/register", "path": [ - "contact" + "register" ] } }, "response": [] } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } ] }, { - "name": "Section9", + "name": "Section8", "item": [ { - "name": "GetJWTToken", + "name": "myAccount", "request": { "auth": { "type": "basic", "basic": [ { "key": "username", - "value": "happy@example.com", + "value": "smith@example.com", "type": "string" }, { "key": "password", - "value": "12345", + "value": "EazyBytes@12345", "type": "string" } ] @@ -1441,40 +1261,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/user", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", - "path": [ - "user" - ] - } - }, - "response": [] - }, - { - "name": "myAccount", - "request": { - "auth": { - "type": "noauth" - }, - "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MTE1NiwiZXhwIjoxNjkxMTcxMTU2fQ.u1ZpiweHBvqaQW3UOzO2ZeCf9MDoPXnQdQtQq6Wkc84", - "type": "text" - } - ], - "url": { - "raw": "http://localhost:8080/myAccount?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount?id=1", "path": [ "myAccount" ], @@ -1492,23 +1279,24 @@ "name": "myBalance", "request": { "auth": { - "type": "noauth" + "type": "basic", + "basic": [ + { + "key": "username", + "value": "john@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MTE1NiwiZXhwIjoxNjkxMTcxMTU2fQ.u1ZpiweHBvqaQW3UOzO2ZeCf9MDoPXnQdQtQq6Wkc84", - "type": "text" - } - ], + "header": [], "url": { - "raw": "http://localhost:8080/myBalance?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance?id=1", "path": [ "myBalance" ], @@ -1526,23 +1314,24 @@ "name": "myLoans", "request": { "auth": { - "type": "noauth" + "type": "basic", + "basic": [ + { + "key": "username", + "value": "john@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MTE1NiwiZXhwIjoxNjkxMTcxMTU2fQ.u1ZpiweHBvqaQW3UOzO2ZeCf9MDoPXnQdQtQq6Wkc84", - "type": "text" - } - ], + "header": [], "url": { - "raw": "http://localhost:8080/myLoans?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans?id=1", "path": [ "myLoans" ], @@ -1560,23 +1349,24 @@ "name": "myCards", "request": { "auth": { - "type": "noauth" + "type": "basic", + "basic": [ + { + "key": "username", + "value": "user", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MTE1NiwiZXhwIjoxNjkxMTcxMTU2fQ.u1ZpiweHBvqaQW3UOzO2ZeCf9MDoPXnQdQtQq6Wkc84", - "type": "text" - } - ], + "header": [], "url": { - "raw": "http://localhost:8080/myCards?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards?id=1", "path": [ "myCards" ], @@ -1599,12 +1389,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -1619,7 +1404,12 @@ "type": "noauth" }, "method": "POST", - "header": [], + "header": [ + { + "key": "X-XSRF-TOKEN", + "value": "505f2ca2-58f9-472c-b3dc-33d4386dd6d9" + } + ], "body": { "mode": "raw", "raw": "{\n \"contactName\": \"Madan Reddy\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n}", @@ -1630,38 +1420,54 @@ } }, "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/contact", "path": [ "contact" ] } }, "response": [] - } - ] - }, - { - "name": "Section_10", - "item": [ + }, + { + "name": "register", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\",\n \"mobileNumber\": \"4564747484\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"user\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/register", + "path": [ + "register" + ] + } + }, + "response": [] + }, { - "name": "GetJWTToken", + "name": "user", "request": { "auth": { "type": "basic", "basic": [ { - "key": "username", - "value": "happy@example.com", + "key": "password", + "value": "EazyBytes@54321", "type": "string" }, { - "key": "password", - "value": "12345", + "key": "username", + "value": "happy@example.com", "type": "string" } ] @@ -1669,40 +1475,66 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/user", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/user", "path": [ "user" ] } }, "response": [] + } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } }, { - "name": "myAccount", - "request": { - "auth": { - "type": "noauth" + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Section9", + "item": [ + { + "name": "myAccount", + "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MjQ3MiwiZXhwIjoxNjkxMTcyNDcyfQ.ZZNg2zED1CfGP5_m5pngj4zehSgxfORgjkbcimzt7bk", - "type": "text" - } - ], + "header": [], "url": { - "raw": "http://localhost:8080/myAccount?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount?id=1", "path": [ "myAccount" ], @@ -1720,23 +1552,24 @@ "name": "myBalance", "request": { "auth": { - "type": "noauth" + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MTE1NiwiZXhwIjoxNjkxMTcxMTU2fQ.u1ZpiweHBvqaQW3UOzO2ZeCf9MDoPXnQdQtQq6Wkc84", - "type": "text" - } - ], + "header": [], "url": { - "raw": "http://localhost:8080/myBalance?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myBalance?id=1", "path": [ "myBalance" ], @@ -1754,23 +1587,24 @@ "name": "myLoans", "request": { "auth": { - "type": "noauth" + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MTE1NiwiZXhwIjoxNjkxMTcxMTU2fQ.u1ZpiweHBvqaQW3UOzO2ZeCf9MDoPXnQdQtQq6Wkc84", - "type": "text" - } - ], + "header": [], "url": { - "raw": "http://localhost:8080/myLoans?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myLoans?id=1", "path": [ "myLoans" ], @@ -1788,23 +1622,24 @@ "name": "myCards", "request": { "auth": { - "type": "noauth" + "type": "basic", + "basic": [ + { + "key": "username", + "value": "john@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX1VTRVIsUk9MRV9BRE1JTiIsImlhdCI6MTY5MTE0MTE1NiwiZXhwIjoxNjkxMTcxMTU2fQ.u1ZpiweHBvqaQW3UOzO2ZeCf9MDoPXnQdQtQq6Wkc84", - "type": "text" - } - ], + "header": [], "url": { - "raw": "http://localhost:8080/myCards?id=1", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myCards?id=1", "path": [ "myCards" ], @@ -1827,12 +1662,7 @@ "method": "GET", "header": [], "url": { - "raw": "http://localhost:8080/notices", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/notices", "path": [ "notices" ] @@ -1844,10 +1674,27 @@ "name": "contact", "request": { "auth": { - "type": "noauth" + "type": "basic", + "basic": [ + { + "key": "password", + "value": "EazyBytes@54321", + "type": "string" + }, + { + "key": "username", + "value": "happy@example.com", + "type": "string" + } + ] }, "method": "POST", - "header": [], + "header": [ + { + "key": "X-XSRF-TOKEN", + "value": "505f2ca2-58f9-472c-b3dc-33d4386dd6d9" + } + ], "body": { "mode": "raw", "raw": "{\n \"contactName\": \"Madan Reddy\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n}", @@ -1858,120 +1705,128 @@ } }, "url": { - "raw": "http://localhost:8080/contact", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/contact", "path": [ "contact" ] } }, "response": [] - } - ] - }, - { - "name": "Section_13", - "item": [ + }, { - "name": "1_GetAccessToken_ClientCredentials", + "name": "register", "request": { + "auth": { + "type": "noauth" + }, "method": "POST", "header": [], "body": { - "mode": "urlencoded", - "urlencoded": [ - { - "key": "client_id", - "value": "eazybankapi", - "type": "text" - }, - { - "key": "client_secret", - "value": "N9BSZoUmI0ondg2AmF1qnW1oOAmo8iWK", - "type": "text" - }, + "mode": "raw", + "raw": "{\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\",\n \"mobileNumber\": \"4564747484\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"user\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/register", + "path": [ + "register" + ] + } + }, + "response": [] + }, + { + "name": "user", + "request": { + "auth": { + "type": "basic", + "basic": [ { - "key": "scope", - "value": "openid email profile address", - "type": "text" + "key": "username", + "value": "happy@example.com", + "type": "string" }, { - "key": "grant_type", - "value": "client_credentials", - "type": "text" + "key": "password", + "value": "EazyBytes@54321", + "type": "string" } ] }, + "method": "GET", + "header": [], "url": { - "raw": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/token", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8180", + "raw": "/user", "path": [ - "realms", - "eazybankdev", - "protocol", - "openid-connect", - "token" + "user" ] } }, "response": [] + } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } }, { - "name": "2_InvokeResourceServerAPI_WithAccessToken", - "protocolProfileBehavior": { - "disableBodyPruning": true - }, + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Section_10", + "item": [ + { + "name": "myAccount", "request": { "auth": { - "type": "bearer", - "bearer": [ + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, { - "key": "token", - "value": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI1RGtMM190NUVLT2hkS1B6ZTA0VlA4ejdVbmhSb1hEMEo5UVNCcGc3OTFjIn0.eyJleHAiOjE2NzI1NDM2MDUsImlhdCI6MTY3MjU0MzMwNSwiYXV0aF90aW1lIjoxNjcyNTQzMjg3LCJqdGkiOiJkMGIzNGZhNi1kZmYzLTRmNTYtOWFjYi1lMmQwYzVkM2YzM2MiLCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgxODAvcmVhbG1zL2VhenliYW5rZGV2IiwiYXVkIjoiYWNjb3VudCIsInN1YiI6IjJkNGJjNzcyLWI3NDgtNDg1ZC05OTllLWI2ZTc5ODVjMDRjNyIsInR5cCI6IkJlYXJlciIsImF6cCI6ImVhenliYW5rY2xpZW50Iiwic2Vzc2lvbl9zdGF0ZSI6IjkxMjk4MTg2LTdiZGEtNDQ4Ny04MmU3LTBmZmJiYmFhNzFmMyIsImFjciI6IjEiLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsib2ZmbGluZV9hY2Nlc3MiLCJ1bWFfYXV0aG9yaXphdGlvbiIsIkFETUlOIiwiVVNFUiIsImRlZmF1bHQtcm9sZXMtZWF6eWJhbmtkZXYiXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50IiwibWFuYWdlLWFjY291bnQtbGlua3MiLCJ2aWV3LXByb2ZpbGUiXX19LCJzY29wZSI6Im9wZW5pZCBlbWFpbCBwcm9maWxlIiwic2lkIjoiOTEyOTgxODYtN2JkYS00NDg3LTgyZTctMGZmYmJiYWE3MWYzIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJuYW1lIjoiRWF6eSBCeXRlcyIsInByZWZlcnJlZF91c2VybmFtZSI6ImVhenlieXRlcyIsImdpdmVuX25hbWUiOiJFYXp5IiwiZmFtaWx5X25hbWUiOiJCeXRlcyIsImVtYWlsIjoidHV0b3JAZWF6eWJ5dGVzLmNvbSJ9.AKeSHQw6VuZwFrv7Q6quTQ0MyZlLjxXVaFJPQhDy6cSIzfqxB4hTARHDK2yyozc6haeHZZ5WGaLLDsMui551iztIYsV13ICoXKFnak7ORFRZqGKRqfoWJXINM7cXSM2kUv92BxeWisvqbJmO33VjCZSB8FvO17UtKfQp-IG4ui4J3NOvzLyFE9ZOhvPo4bapo5O56TdV7iFv6aSNJtfpolEMkRiooPV32wIcCmdY1rdRCj4KlTVRL7LZE_ZBnD_EJ0PCDVu_hz3PkdUfjiXSvrySLXCHqvvOeTqJFE1u0FVWC9MuMQPdcMVUVGYnYBWcgkQT3Fouz8J2uCYARk-oBg", + "key": "password", + "value": "EazyBytes@12345", "type": "string" } ] }, "method": "GET", - "header": [ - { - "key": "Authorization", - "value": "", - "type": "text", - "disabled": true - } - ], - "body": { - "mode": "raw", - "raw": "", - "options": { - "raw": { - "language": "json" - } - } - }, + "header": [], "url": { - "raw": "http://localhost:8080/myCards?email=tutor@eazybytes.com", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8080", + "raw": "/myAccount?id=1", "path": [ - "myCards" + "myAccount" ], "query": [ { - "key": "email", - "value": "tutor@eazybytes.com" + "key": "id", + "value": "1" } ] } @@ -1979,44 +1834,34 @@ "response": [] }, { - "name": "3_GetAuthCode_AuthCodeGrantFlow", + "name": "myBalance", "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] + }, "method": "GET", "header": [], "url": { - "raw": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/auth?client_id=eazybankclient&response_type=code&scope=openid&redirect_uri=http://localhost:7080/sample&state=fdjgjfgdjhgffas", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8180", + "raw": "/myBalance?id=1", "path": [ - "realms", - "eazybankdev", - "protocol", - "openid-connect", - "auth" + "myBalance" ], "query": [ { - "key": "client_id", - "value": "eazybankclient" - }, - { - "key": "response_type", - "value": "code" - }, - { - "key": "scope", - "value": "openid" - }, - { - "key": "redirect_uri", - "value": "http://localhost:7080/sample" - }, - { - "key": "state", - "value": "fdjgjfgdjhgffas" + "key": "id", + "value": "1" } ] } @@ -2024,64 +1869,1662 @@ "response": [] }, { - "name": "4_GetAccessToken_AuthCodeGrantFlow", + "name": "myLoans", "request": { - "method": "POST", - "header": [], - "body": { - "mode": "urlencoded", - "urlencoded": [ - { - "key": "client_id", - "value": "eazybankclient", - "type": "text" - }, - { - "key": "client_secret", - "value": "z8vr2kdeit3PSwJJKhJlciLqUToIHH8y", - "type": "text" - }, - { - "key": "grant_type", - "value": "authorization_code", - "type": "text" - }, - { - "key": "code", - "value": "ab1663a6-50b4-4370-bc3f-202ca2028f56.91298186-7bda-4487-82e7-0ffbbbaa71f3.e299c31f-de41-4ccf-a85e-dd4f85ae8bb3", - "type": "text" - }, + "auth": { + "type": "basic", + "basic": [ { - "key": "redirect_uri", - "value": "http://localhost:7080/sample", - "type": "text" + "key": "username", + "value": "happy@example.com", + "type": "string" }, { - "key": "scope", - "value": "openid", - "type": "text" + "key": "password", + "value": "EazyBytes@12345", + "type": "string" } ] }, + "method": "GET", + "header": [], "url": { - "raw": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/token", - "protocol": "http", - "host": [ - "localhost" - ], - "port": "8180", + "raw": "/myLoans?id=1", "path": [ - "realms", - "eazybankdev", - "protocol", - "openid-connect", - "token" - ] + "myLoans" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "myCards", + "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "username", + "value": "john@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@12345", + "type": "string" + } + ] + }, + "method": "GET", + "header": [], + "url": { + "raw": "/myCards?id=1", + "path": [ + "myCards" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "notices", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [], + "url": { + "raw": "/notices", + "path": [ + "notices" + ] + } + }, + "response": [] + }, + { + "name": "contact", + "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "password", + "value": "EazyBytes@54321", + "type": "string" + }, + { + "key": "username", + "value": "happy@example.com", + "type": "string" + } + ] + }, + "method": "POST", + "header": [ + { + "key": "X-XSRF-TOKEN", + "value": "505f2ca2-58f9-472c-b3dc-33d4386dd6d9" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"contactName\": \"Madan Reddy\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/contact", + "path": [ + "contact" + ] + } + }, + "response": [] + }, + { + "name": "register", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\",\n \"mobileNumber\": \"4564747484\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"user\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/register", + "path": [ + "register" + ] + } + }, + "response": [] + }, + { + "name": "user", + "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@54321", + "type": "string" + } + ] + }, + "method": "GET", + "header": [], + "url": { + "raw": "/user", + "path": [ + "user" + ] + } + }, + "response": [] + } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Section_11", + "item": [ + { + "name": "myAccount", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcyMDE5MDgyMSwiZXhwIjoxNzIwMjIwODIxfQ.4VoI3vnT0O3PU4rjseZpwwmjrPEobzuHHOSoSpYv0WM", + "type": "text" + } + ], + "url": { + "raw": "/myAccount?id=1", + "path": [ + "myAccount" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "myBalance", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcyMDE5MDgyMSwiZXhwIjoxNzIwMjIwODIxfQ.4VoI3vnT0O3PU4rjseZpwwmjrPEobzuHHOSoSpYv0WM", + "type": "text" + } + ], + "url": { + "raw": "/myBalance?id=1", + "path": [ + "myBalance" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "myLoans", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcyMDE5MDgyMSwiZXhwIjoxNzIwMjIwODIxfQ.4VoI3vnT0O3PU4rjseZpwwmjrPEobzuHHOSoSpYv0WM", + "type": "text" + } + ], + "url": { + "raw": "/myLoans?id=1", + "path": [ + "myLoans" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "myCards", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myCards?id=1", + "path": [ + "myCards" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "notices", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [], + "url": { + "raw": "/notices", + "path": [ + "notices" + ] + } + }, + "response": [] + }, + { + "name": "contact", + "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "password", + "value": "EazyBytes@54321", + "type": "string" + }, + { + "key": "username", + "value": "happy@example.com", + "type": "string" + } + ] + }, + "method": "POST", + "header": [ + { + "key": "X-XSRF-TOKEN", + "value": "505f2ca2-58f9-472c-b3dc-33d4386dd6d9" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"contactName\": \"Madan Reddy\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/contact", + "path": [ + "contact" + ] + } + }, + "response": [] + }, + { + "name": "register", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\",\n \"mobileNumber\": \"4564747484\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"user\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/register", + "path": [ + "register" + ] + } + }, + "response": [] + }, + { + "name": "user", + "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@54321", + "type": "string" + } + ] + }, + "method": "GET", + "header": [], + "url": { + "raw": "/user", + "path": [ + "user" + ] + } + }, + "response": [] + }, + { + "name": "apiLogin", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"username\": \"happy@example.com\",\n \"password\": \"EazyBytes@54321\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/apiLogin", + "path": [ + "apiLogin" + ] + } + }, + "response": [] + } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Section_12", + "item": [ + { + "name": "myAccount", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myAccount?id=1", + "path": [ + "myAccount" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "myBalance", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myBalance?id=1", + "path": [ + "myBalance" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "myLoans", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODgwNjQ0NCwiZXhwIjoxNzE4ODM2NDQ0fQ.eYmNefh26M3GtKAURjkDrGei4fs7-X6P-6jQztH1KAo", + "type": "text" + } + ], + "url": { + "raw": "/myLoans?id=1", + "path": [ + "myLoans" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "myCards", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myCards?id=1", + "path": [ + "myCards" + ], + "query": [ + { + "key": "id", + "value": "1" + } + ] + } + }, + "response": [] + }, + { + "name": "notices", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [], + "url": { + "raw": "/notices", + "path": [ + "notices" + ] + } + }, + "response": [] + }, + { + "name": "contact", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [ + { + "key": "X-XSRF-TOKEN", + "value": "505f2ca2-58f9-472c-b3dc-33d4386dd6d9" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"contactName\": \"Test\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/contact", + "path": [ + "contact" + ] + } + }, + "response": [] + }, + { + "name": "register", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"name\": \"John Doe\",\n \"email\": \"john@example.com\",\n \"mobileNumber\": \"4564747484\",\n \"pwd\": \"EazyBytes@12345\",\n \"role\": \"user\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/register", + "path": [ + "register" + ] + } + }, + "response": [] + }, + { + "name": "user", + "request": { + "auth": { + "type": "basic", + "basic": [ + { + "key": "username", + "value": "happy@example.com", + "type": "string" + }, + { + "key": "password", + "value": "EazyBytes@54321", + "type": "string" + } + ] + }, + "method": "GET", + "header": [], + "url": { + "raw": "/user", + "path": [ + "user" + ] + } + }, + "response": [] + }, + { + "name": "apiLogin", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [], + "body": { + "mode": "raw", + "raw": "{\n \"username\": \"happy@example.com\",\n \"password\": \"EazyBytes@54321\"\n}", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/apiLogin", + "path": [ + "apiLogin" + ] + } + }, + "response": [] + } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Section_15", + "item": [ + { + "name": "myAccount", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "client_authentication", + "value": "body", + "type": "string" + }, + { + "key": "scope", + "value": "openid email", + "type": "string" + }, + { + "key": "clientSecret", + "value": "VxubZgAXyyTq9lGjj3qGvWNsHtE4SqTq", + "type": "string" + }, + { + "key": "clientId", + "value": "eazybankapi", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/token", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "grant_type", + "value": "client_credentials", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:9000/oauth2/authorize", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myAccount?email=happy@example.com", + "path": [ + "myAccount" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "myBalance", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "client_authentication", + "value": "body", + "type": "string" + }, + { + "key": "scope", + "value": "openid email", + "type": "string" + }, + { + "key": "clientSecret", + "value": "VxubZgAXyyTq9lGjj3qGvWNsHtE4SqTq", + "type": "string" + }, + { + "key": "clientId", + "value": "eazybankapi", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/token", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "grant_type", + "value": "client_credentials", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:9000/oauth2/authorize", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myBalance?email=happy@example.com", + "path": [ + "myBalance" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "myLoans", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "client_authentication", + "value": "body", + "type": "string" + }, + { + "key": "scope", + "value": "openid email", + "type": "string" + }, + { + "key": "clientSecret", + "value": "VxubZgAXyyTq9lGjj3qGvWNsHtE4SqTq", + "type": "string" + }, + { + "key": "clientId", + "value": "eazybankapi", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/token", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "grant_type", + "value": "client_credentials", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:9000/oauth2/authorize", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODgwNjQ0NCwiZXhwIjoxNzE4ODM2NDQ0fQ.eYmNefh26M3GtKAURjkDrGei4fs7-X6P-6jQztH1KAo", + "type": "text" + } + ], + "url": { + "raw": "/myLoans?email=happy@example.com", + "path": [ + "myLoans" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "myCards", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "scope", + "value": "openid email", + "type": "string" + }, + { + "key": "clientSecret", + "value": "", + "type": "string" + }, + { + "key": "clientId", + "value": "eazypublicclient", + "type": "string" + }, + { + "key": "challengeAlgorithm", + "value": "S256", + "type": "string" + }, + { + "key": "grant_type", + "value": "authorization_code_with_pkce", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/auth", + "type": "string" + }, + { + "key": "client_authentication", + "value": "body", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/token", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myCards?email=happy@example.com", + "path": [ + "myCards" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "notices", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [], + "url": { + "raw": "/notices", + "path": [ + "notices" + ] + } + }, + "response": [] + }, + { + "name": "contact", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [ + { + "key": "X-XSRF-TOKEN", + "value": "505f2ca2-58f9-472c-b3dc-33d4386dd6d9" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"contactName\": \"Eazy Bytes\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/contact", + "path": [ + "contact" + ] + } + }, + "response": [] + } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } + ] + }, + { + "name": "Section_16", + "item": [ + { + "name": "myAccount", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "scope", + "value": "openid USER ADMIN", + "type": "string" + }, + { + "key": "client_authentication", + "value": "header", + "type": "string" + }, + { + "key": "clientSecret", + "value": "VxubZgAXyyTq9lGjj3qGvWNsHtE4SqTq", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "clientId", + "value": "eazybankapi", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:9000/oauth2/token", + "type": "string" + }, + { + "key": "grant_type", + "value": "client_credentials", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:9000/oauth2/authorize", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myAccount?email=happy@example.com", + "path": [ + "myAccount" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "myBalance", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "scope", + "value": "openid email", + "type": "string" + }, + { + "key": "clientSecret", + "value": "Qw3rTy6UjMnB9zXcV2pL0sKjHn5TxQqB", + "type": "string" + }, + { + "key": "client_authentication", + "value": "body", + "type": "string" + }, + { + "key": "clientId", + "value": "eazybankclient", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:9000/oauth2/token", + "type": "string" + }, + { + "key": "grant_type", + "value": "authorization_code", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:9000/oauth2/authorize", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myBalance?email=happy@example.com", + "path": [ + "myBalance" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "myLoans", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "clientSecret", + "value": "", + "type": "string" + }, + { + "key": "clientId", + "value": "eazypublicclient", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:9000/oauth2/token", + "type": "string" + }, + { + "key": "grant_type", + "value": "authorization_code_with_pkce", + "type": "string" + }, + { + "key": "client_authentication", + "value": "body", + "type": "string" + }, + { + "key": "scope", + "value": "openid email", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:9000/oauth2/authorize", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODgwNjQ0NCwiZXhwIjoxNzE4ODM2NDQ0fQ.eYmNefh26M3GtKAURjkDrGei4fs7-X6P-6jQztH1KAo", + "type": "text" + } + ], + "url": { + "raw": "/myLoans?email=happy@example.com", + "path": [ + "myLoans" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "myCards", + "request": { + "auth": { + "type": "oauth2", + "oauth2": [ + { + "key": "client_authentication", + "value": "header", + "type": "string" + }, + { + "key": "scope", + "value": "openid USER ADMIN", + "type": "string" + }, + { + "key": "clientSecret", + "value": "VxubZgAXyyTq9lGjj3qGvWNsHtE4SqTq", + "type": "string" + }, + { + "key": "clientId", + "value": "eazybankapi", + "type": "string" + }, + { + "key": "accessTokenUrl", + "value": "http://localhost:9000/oauth2/token", + "type": "string" + }, + { + "key": "grant_type", + "value": "client_credentials", + "type": "string" + }, + { + "key": "challengeAlgorithm", + "value": "S256", + "type": "string" + }, + { + "key": "authUrl", + "value": "http://localhost:8180/realms/eazybankdev/protocol/openid-connect/auth", + "type": "string" + }, + { + "key": "tokenName", + "value": "AccessToken", + "type": "string" + }, + { + "key": "state", + "value": "2fc61105-40ba-4b5f-8983-ec764ec4e437", + "type": "string" + }, + { + "key": "useBrowser", + "value": true, + "type": "boolean" + }, + { + "key": "addTokenTo", + "value": "header", + "type": "string" + } + ] + }, + "method": "GET", + "header": [ + { + "key": "Authorization", + "value": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJFYXp5IEJhbmsiLCJzdWIiOiJKV1QgVG9rZW4iLCJ1c2VybmFtZSI6ImhhcHB5QGV4YW1wbGUuY29tIiwiYXV0aG9yaXRpZXMiOiJST0xFX0FETUlOLFJPTEVfVVNFUiIsImlhdCI6MTcxODczMDUwNiwiZXhwIjoxNzE4NzYwNTA2fQ.cShQCfCjzVV4GBha4uZlChlRsE8tTjDgJ4Q8sGrhKyA", + "type": "text" + } + ], + "url": { + "raw": "/myCards?email=happy@example.com", + "path": [ + "myCards" + ], + "query": [ + { + "key": "email", + "value": "happy@example.com" + } + ] + } + }, + "response": [] + }, + { + "name": "notices", + "request": { + "auth": { + "type": "noauth" + }, + "method": "GET", + "header": [], + "url": { + "raw": "/notices", + "path": [ + "notices" + ] + } + }, + "response": [] + }, + { + "name": "contact", + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [ + { + "key": "X-XSRF-TOKEN", + "value": "505f2ca2-58f9-472c-b3dc-33d4386dd6d9" + } + ], + "body": { + "mode": "raw", + "raw": "[\n {\n \"contactName\": \"Eazy Bytes\",\n \"contactEmail\": \"tutor@eazybytes.com\",\n \"subject\": \"Need a new saving account\",\n \"message\": \"I want to open a new saving account in EazyBank\"\n }\n]", + "options": { + "raw": { + "language": "json" + } + } + }, + "url": { + "raw": "/contact", + "path": [ + "contact" + ] } }, "response": [] } + ], + "auth": { + "type": "noauth" + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } ] } + ], + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "pm.request.url.protocol=\"http\";", + "pm.request.url.host=\"localhost\";", + "pm.request.url.port=\"8080\";" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "packages": {}, + "exec": [ + "" + ] + } + } + ], + "variable": [ + { + "key": "base_url", + "value": "http://localhost:8080" + } ] } \ No newline at end of file diff --git a/section1/springsecuritybasic/.gitignore b/section1/springsecsection1/.gitignore similarity index 100% rename from section1/springsecuritybasic/.gitignore rename to section1/springsecsection1/.gitignore diff --git a/section1/springsecsection1/.mvn/wrapper/maven-wrapper.properties b/section1/springsecsection1/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..aeccdfdb --- /dev/null +++ b/section1/springsecsection1/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section1/springsecsection1/mvnw b/section1/springsecsection1/mvnw new file mode 100755 index 00000000..ba9212a0 --- /dev/null +++ b/section1/springsecsection1/mvnw @@ -0,0 +1,250 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.1 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/section1/springsecsection1/mvnw.cmd b/section1/springsecsection1/mvnw.cmd new file mode 100644 index 00000000..406932da --- /dev/null +++ b/section1/springsecsection1/mvnw.cmd @@ -0,0 +1,146 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.1 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section1/springsecuritybasic/pom.xml b/section1/springsecsection1/pom.xml similarity index 78% rename from section1/springsecuritybasic/pom.xml rename to section1/springsecsection1/pom.xml index 874a6bab..1b8907ee 100644 --- a/section1/springsecuritybasic/pom.xml +++ b/section1/springsecsection1/pom.xml @@ -1,17 +1,17 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes - springsecuritybasic + springsecsection1 0.0.1-SNAPSHOT - springsecuritybasic + springsecsection1 Demo project for Spring Boot and Spring Security 21 @@ -19,13 +19,12 @@ org.springframework.boot - spring-boot-starter-security + spring-boot-starter-web org.springframework.boot - spring-boot-starter-web + spring-boot-starter-security - org.springframework.boot spring-boot-devtools @@ -37,11 +36,6 @@ spring-boot-starter-test test - - org.springframework.security - spring-security-test - test - @@ -53,4 +47,4 @@ - \ No newline at end of file + diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section1/springsecsection1/src/main/java/com/eazybytes/springsecsection1/EazyBankBackendApplication.java similarity index 58% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/EazyBankBackendApplication.java rename to section1/springsecsection1/src/main/java/com/eazybytes/springsecsection1/EazyBankBackendApplication.java index 503cfe8c..8b7041ce 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section1/springsecsection1/src/main/java/com/eazybytes/springsecsection1/EazyBankBackendApplication.java @@ -1,11 +1,11 @@ -package com.eazybytes; +package com.eazybytes.springsecsection1; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; +import org.springframework.context.annotation.ComponentScan; @SpringBootApplication -@EnableMethodSecurity(prePostEnabled = true, securedEnabled = true, jsr250Enabled = true) +// @ComponentScan("com.eazybytes.springsecsection1.controller") public class EazyBankBackendApplication { public static void main(String[] args) { diff --git a/section1/springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic/controller/WelcomeController.java b/section1/springsecsection1/src/main/java/com/eazybytes/springsecsection1/controller/WelcomeController.java similarity index 58% rename from section1/springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic/controller/WelcomeController.java rename to section1/springsecsection1/src/main/java/com/eazybytes/springsecsection1/controller/WelcomeController.java index db74a7df..22812dbc 100644 --- a/section1/springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic/controller/WelcomeController.java +++ b/section1/springsecsection1/src/main/java/com/eazybytes/springsecsection1/controller/WelcomeController.java @@ -1,4 +1,4 @@ -package com.eazybytes.springsecuritybasic.controller; +package com.eazybytes.springsecsection1.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @@ -7,8 +7,8 @@ public class WelcomeController { @GetMapping("/welcome") - public String sayWelcome(){ - return "Welcome to Spring Application with Security"; + public String sayWelcome () { + return "Welcome to Spring Application with security"; } } diff --git a/section1/springsecsection1/src/main/resources/application.properties b/section1/springsecsection1/src/main/resources/application.properties new file mode 100644 index 00000000..46a53d91 --- /dev/null +++ b/section1/springsecsection1/src/main/resources/application.properties @@ -0,0 +1,6 @@ +spring.application.name=${SPRING_APP_NAME:springsecsection1} +spring.security.user.name=${SECURITY_USERNAME:eazybytes} +spring.security.user.password=${SECURITY_PASSWORD:12345} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section1/springsecuritybasic/src/test/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplicationTests.java b/section1/springsecsection1/src/test/java/com/eazybytes/springsecsection1/EazyBankBackendApplicationTests.java similarity index 63% rename from section1/springsecuritybasic/src/test/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplicationTests.java rename to section1/springsecsection1/src/test/java/com/eazybytes/springsecsection1/EazyBankBackendApplicationTests.java index ec7bf3ea..2fae51c6 100644 --- a/section1/springsecuritybasic/src/test/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplicationTests.java +++ b/section1/springsecsection1/src/test/java/com/eazybytes/springsecsection1/EazyBankBackendApplicationTests.java @@ -1,10 +1,10 @@ -package com.eazybytes.springsecuritybasic; +package com.eazybytes.springsecsection1; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest -class SpringsecuritybasicApplicationTests { +class EazyBankBackendApplicationTests { @Test void contextLoads() { diff --git a/section1/springsecuritybasic/.mvn/wrapper/maven-wrapper.jar b/section1/springsecuritybasic/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section1/springsecuritybasic/.mvn/wrapper/maven-wrapper.properties b/section1/springsecuritybasic/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index b74bf7fc..00000000 --- a/section1/springsecuritybasic/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1,2 +0,0 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar diff --git a/section1/springsecuritybasic/mvnw b/section1/springsecuritybasic/mvnw deleted file mode 100755 index 8a8fb228..00000000 --- a/section1/springsecuritybasic/mvnw +++ /dev/null @@ -1,316 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir -# -# Optional ENV vars -# ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files -# ---------------------------------------------------------------------------- - -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi - - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi - -fi - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" - fi - fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` - fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" - - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi - done - - saveddir=`pwd` - - M2_HOME=`dirname "$PRG"`/.. - - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` - - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` -fi - -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi - -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi -fi - -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi - -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi - -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." -fi - -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher - -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { - - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi - - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break - fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` - fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" - fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; -fi - -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi -else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR -fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/section1/springsecuritybasic/mvnw.cmd b/section1/springsecuritybasic/mvnw.cmd deleted file mode 100644 index 1d8ab018..00000000 --- a/section1/springsecuritybasic/mvnw.cmd +++ /dev/null @@ -1,188 +0,0 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM https://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% diff --git a/section1/springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplication.java b/section1/springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplication.java deleted file mode 100644 index f25ea436..00000000 --- a/section1/springsecuritybasic/src/main/java/com/eazybytes/springsecuritybasic/SpringsecuritybasicApplication.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.eazybytes.springsecuritybasic; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.context.annotation.ComponentScan; - -@SpringBootApplication -@ComponentScan("com.eazybytes.springsecuritybasic.controller") // Optional -public class SpringsecuritybasicApplication { - - public static void main(String[] args) { - SpringApplication.run(SpringsecuritybasicApplication.class, args); - } - -} diff --git a/section1/springsecuritybasic/src/main/resources/application.properties b/section1/springsecuritybasic/src/main/resources/application.properties deleted file mode 100644 index 04c80516..00000000 --- a/section1/springsecuritybasic/src/main/resources/application.properties +++ /dev/null @@ -1,2 +0,0 @@ -spring.security.user.name = eazybytes -spring.security.user.password = 12345 diff --git a/section2/springsecsection2/.mvn/wrapper/maven-wrapper.jar b/section2/springsecsection2/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section2/springsecsection2/.mvn/wrapper/maven-wrapper.properties b/section2/springsecsection2/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section2/springsecsection2/.mvn/wrapper/maven-wrapper.properties +++ b/section2/springsecsection2/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section2/springsecsection2/mvnw b/section2/springsecsection2/mvnw index 8a8fb228..ba9212a0 100755 --- a/section2/springsecsection2/mvnw +++ b/section2/springsecsection2/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section2/springsecsection2/mvnw.cmd b/section2/springsecsection2/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section2/springsecsection2/mvnw.cmd +++ b/section2/springsecsection2/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section2/springsecsection2/pom.xml b/section2/springsecsection2/pom.xml index 98471f83..bc2be463 100644 --- a/section2/springsecsection2/pom.xml +++ b/section2/springsecsection2/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -19,13 +19,12 @@ org.springframework.boot - spring-boot-starter-security + spring-boot-starter-web org.springframework.boot - spring-boot-starter-web + spring-boot-starter-security - org.springframework.boot spring-boot-devtools @@ -37,11 +36,6 @@ spring-boot-starter-test test - - org.springframework.security - spring-security-test - test - diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section2/springsecsection2/src/main/java/com/eazybytes/EazyBankBackendApplication.java index e7e047e9..0308e0f4 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -6,8 +6,8 @@ @SpringBootApplication public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section2/springsecsection2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index e0ea387d..9f987a91 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -2,42 +2,24 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.web.SecurityFilterChain; +import static org.springframework.security.config.Customizer.withDefaults; + @Configuration public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - - /** - * Below is the custom security configurations - */ - + /*http.authorizeHttpRequests((requests) -> requests.anyRequest().permitAll());*/ + /*http.authorizeHttpRequests((requests) -> requests.anyRequest().denyAll());*/ http.authorizeHttpRequests((requests) -> requests - .requestMatchers("/myAccount","/myBalance","/myLoans","/myCards").authenticated() - .requestMatchers("/notices","/contact").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(withDefaults()); return http.build(); - - /** - * Configuration to deny all the requests - */ - /*http.authorizeHttpRequests(requests -> requests.anyRequest().denyAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); - return http.build();*/ - - /** - * Configuration to permit all the requests - */ - /*http.authorizeHttpRequests(requests -> requests.anyRequest().permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); - return http.build();*/ } } diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/controller/AccountController.java b/section2/springsecsection2/src/main/java/com/eazybytes/controller/AccountController.java index 007f69ca..6c53a3be 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/controller/AccountController.java @@ -7,7 +7,7 @@ public class AccountController { @GetMapping("/myAccount") - public String getAccountDetails() { + public String getAccountDetails () { return "Here are the account details from the DB"; } diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/controller/BalanceController.java b/section2/springsecsection2/src/main/java/com/eazybytes/controller/BalanceController.java index 66e4a53a..81f0f5ff 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/controller/BalanceController.java @@ -7,7 +7,7 @@ public class BalanceController { @GetMapping("/myBalance") - public String getBalanceDetails() { + public String getBalanceDetails () { return "Here are the balance details from the DB"; } diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/controller/CardsController.java b/section2/springsecsection2/src/main/java/com/eazybytes/controller/CardsController.java index b6ed4e32..3931047e 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/controller/CardsController.java @@ -7,7 +7,7 @@ public class CardsController { @GetMapping("/myCards") - public String getCardDetails() { + public String getCardsDetails () { return "Here are the card details from the DB"; } diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/controller/ContactController.java b/section2/springsecsection2/src/main/java/com/eazybytes/controller/ContactController.java index 66a5228c..f7db1aa6 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/controller/ContactController.java @@ -7,7 +7,7 @@ public class ContactController { @GetMapping("/contact") - public String saveContactInquiryDetails() { + public String saveContactInquiryDetails () { return "Inquiry details are saved to the DB"; } diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/controller/LoansController.java b/section2/springsecsection2/src/main/java/com/eazybytes/controller/LoansController.java index 4d6fd3b3..4262e918 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/controller/LoansController.java @@ -7,8 +7,8 @@ public class LoansController { @GetMapping("/myLoans") - public String getLoanDetails() { - return "Here are the loan details from the DB"; + public String getLoansDetails () { + return "Here are the loans details from the DB"; } } diff --git a/section2/springsecsection2/src/main/java/com/eazybytes/controller/NoticesController.java b/section2/springsecsection2/src/main/java/com/eazybytes/controller/NoticesController.java index 40a3e6e2..51c9dd3f 100644 --- a/section2/springsecsection2/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section2/springsecsection2/src/main/java/com/eazybytes/controller/NoticesController.java @@ -7,7 +7,7 @@ public class NoticesController { @GetMapping("/notices") - public String getNotices() { + public String getNotices () { return "Here are the notices details from the DB"; } diff --git a/section2/springsecsection2/src/main/resources/application.properties b/section2/springsecsection2/src/main/resources/application.properties index 04c80516..5dddd352 100644 --- a/section2/springsecsection2/src/main/resources/application.properties +++ b/section2/springsecsection2/src/main/resources/application.properties @@ -1,2 +1,6 @@ -spring.security.user.name = eazybytes -spring.security.user.password = 12345 +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +spring.security.user.name=${SECURITY_USERNAME:eazybytes} +spring.security.user.password=${SECURITY_PASSWORD:12345} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section3/springsecsection3/.mvn/wrapper/maven-wrapper.jar b/section3/springsecsection3/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section3/springsecsection3/.mvn/wrapper/maven-wrapper.properties b/section3/springsecsection3/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section3/springsecsection3/.mvn/wrapper/maven-wrapper.properties +++ b/section3/springsecsection3/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section3/springsecsection3/mvnw b/section3/springsecsection3/mvnw index 8a8fb228..ba9212a0 100755 --- a/section3/springsecsection3/mvnw +++ b/section3/springsecsection3/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section3/springsecsection3/mvnw.cmd b/section3/springsecsection3/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section3/springsecsection3/mvnw.cmd +++ b/section3/springsecsection3/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section3/springsecsection3/pom.xml b/section3/springsecsection3/pom.xml index 3bd4a217..1b80ae67 100644 --- a/section3/springsecsection3/pom.xml +++ b/section3/springsecsection3/pom.xml @@ -5,7 +5,7 @@ org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,34 +17,13 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - - org.springframework.ldap - spring-ldap-core - - - org.springframework.security - spring-security-ldap - - - org.springframework.boot - spring-boot-starter-jdbc - - - com.mysql - mysql-connector-j - runtime - org.springframework.boot - spring-boot-starter-data-jpa + spring-boot-starter-security org.springframework.boot @@ -57,11 +36,6 @@ spring-boot-starter-test test - - org.springframework.security - spring-security-test - test - diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section3/springsecsection3/src/main/java/com/eazybytes/EazyBankBackendApplication.java index e7e047e9..0308e0f4 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -6,8 +6,8 @@ @SpringBootApplication public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/config/EazyBankUserDetails.java b/section3/springsecsection3/src/main/java/com/eazybytes/config/EazyBankUserDetails.java deleted file mode 100644 index 06f515a5..00000000 --- a/section3/springsecsection3/src/main/java/com/eazybytes/config/EazyBankUserDetails.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.eazybytes.config; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; -import org.springframework.security.core.userdetails.User; -import org.springframework.security.core.userdetails.UserDetails; -import org.springframework.security.core.userdetails.UserDetailsService; -import org.springframework.security.core.userdetails.UsernameNotFoundException; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.List; - -@Service -public class EazyBankUserDetails implements UserDetailsService { - - @Autowired - private CustomerRepository customerRepository; - - @Override - public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { - String userName, password; - List authorities; - List customer = customerRepository.findByEmail(username); - if (customer.size() == 0) { - throw new UsernameNotFoundException("User details not found for the user : " + username); - } else{ - userName = customer.get(0).getEmail(); - password = customer.get(0).getPwd(); - authorities = new ArrayList<>(); - authorities.add(new SimpleGrantedAuthority(customer.get(0).getRole())); - } - return new User(userName,password,authorities); - } - -} diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section3/springsecsection3/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index d335db07..9c6fab3b 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -2,77 +2,54 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.core.userdetails.User; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; -import org.springframework.security.crypto.password.NoOpPasswordEncoder; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.provisioning.InMemoryUserDetailsManager; -import org.springframework.security.provisioning.JdbcUserDetailsManager; import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; -import javax.sql.DataSource; +import static org.springframework.security.config.Customizer.withDefaults; @Configuration public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - http.csrf((csrf) -> csrf.disable()) - .authorizeHttpRequests((requests)->requests - .requestMatchers("/myAccount","/myBalance","/myLoans","/myCards").authenticated() - .requestMatchers("/notices","/contact","/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + http.authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(withDefaults()); return http.build(); } - /** - * NoOpPasswordEncoder is not recommended for production usage. - * Use only for non-prod. - * - * @return PasswordEncoder - */ @Bean - public PasswordEncoder passwordEncoder() { - return NoOpPasswordEncoder.getInstance(); - } - - /*@Bean - public InMemoryUserDetailsManager userDetailsService() { - *//*Approach 1 where we use withDefaultPasswordEncoder() method - while creating the user details*//* - *//*UserDetails admin = User.withDefaultPasswordEncoder() - .username("admin") - .password("12345") - .authorities("admin") - .build(); - UserDetails user = User.withDefaultPasswordEncoder() - .username("user") - .password("12345") - .authorities("read") - .build(); - return new InMemoryUserDetailsManager(admin, user);*//* - - *//*Approach 2 where we use NoOpPasswordEncoder Bean - while creating the user details*//* + public UserDetailsService userDetailsService() { + UserDetails user = User.withUsername("user").password("{noop}EazyBytes@12345").authorities("read").build(); UserDetails admin = User.withUsername("admin") - .password("12345") - .authorities("admin") - .build(); - UserDetails user = User.withUsername("user") - .password("12345") - .authorities("read") - .build(); - return new InMemoryUserDetailsManager(admin, user); + .password("{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m") + .authorities("admin").build(); + return new InMemoryUserDetailsManager(user, admin); + } - }*/ + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } - /*@Bean - public UserDetailsService userDetailsService(DataSource dataSource) { - return new JdbcUserDetailsManager(dataSource); - }*/ + /** + * From Spring Security 6.3 version + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/controller/AccountController.java b/section3/springsecsection3/src/main/java/com/eazybytes/controller/AccountController.java index 007f69ca..6c53a3be 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/controller/AccountController.java @@ -7,7 +7,7 @@ public class AccountController { @GetMapping("/myAccount") - public String getAccountDetails() { + public String getAccountDetails () { return "Here are the account details from the DB"; } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/controller/BalanceController.java b/section3/springsecsection3/src/main/java/com/eazybytes/controller/BalanceController.java index 66e4a53a..81f0f5ff 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/controller/BalanceController.java @@ -7,7 +7,7 @@ public class BalanceController { @GetMapping("/myBalance") - public String getBalanceDetails() { + public String getBalanceDetails () { return "Here are the balance details from the DB"; } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/controller/CardsController.java b/section3/springsecsection3/src/main/java/com/eazybytes/controller/CardsController.java index b6ed4e32..3931047e 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/controller/CardsController.java @@ -7,7 +7,7 @@ public class CardsController { @GetMapping("/myCards") - public String getCardDetails() { + public String getCardsDetails () { return "Here are the card details from the DB"; } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/controller/ContactController.java b/section3/springsecsection3/src/main/java/com/eazybytes/controller/ContactController.java index 66a5228c..f7db1aa6 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/controller/ContactController.java @@ -7,7 +7,7 @@ public class ContactController { @GetMapping("/contact") - public String saveContactInquiryDetails() { + public String saveContactInquiryDetails () { return "Inquiry details are saved to the DB"; } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/controller/LoansController.java b/section3/springsecsection3/src/main/java/com/eazybytes/controller/LoansController.java index 4d6fd3b3..4262e918 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/controller/LoansController.java @@ -7,8 +7,8 @@ public class LoansController { @GetMapping("/myLoans") - public String getLoanDetails() { - return "Here are the loan details from the DB"; + public String getLoansDetails () { + return "Here are the loans details from the DB"; } } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/controller/LoginController.java b/section3/springsecsection3/src/main/java/com/eazybytes/controller/LoginController.java deleted file mode 100644 index c18a4c01..00000000 --- a/section3/springsecsection3/src/main/java/com/eazybytes/controller/LoginController.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.eazybytes.controller; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RestController; - -@RestController -public class LoginController { - - @Autowired - private CustomerRepository customerRepository; - - @PostMapping("/register") - public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; - try { - savedCustomer = customerRepository.save(customer); - if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); - } - } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); - } - return response; - } - -} diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/controller/NoticesController.java b/section3/springsecsection3/src/main/java/com/eazybytes/controller/NoticesController.java index 40a3e6e2..51c9dd3f 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section3/springsecsection3/src/main/java/com/eazybytes/controller/NoticesController.java @@ -7,7 +7,7 @@ public class NoticesController { @GetMapping("/notices") - public String getNotices() { + public String getNotices () { return "Here are the notices details from the DB"; } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/model/Customer.java b/section3/springsecsection3/src/main/java/com/eazybytes/model/Customer.java deleted file mode 100644 index 3c80d393..00000000 --- a/section3/springsecsection3/src/main/java/com/eazybytes/model/Customer.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.Entity; -import jakarta.persistence.GeneratedValue; -import jakarta.persistence.GenerationType; -import jakarta.persistence.Id; -import org.hibernate.annotations.GenericGenerator; - -@Entity -public class Customer { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private int id; - private String email; - private String pwd; - private String role; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } -} diff --git a/section3/springsecsection3/src/main/resources/application.properties b/section3/springsecsection3/src/main/resources/application.properties index 78fdb8f8..8ebd1c6c 100644 --- a/section3/springsecsection3/src/main/resources/application.properties +++ b/section3/springsecsection3/src/main/resources/application.properties @@ -1,5 +1,4 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true \ No newline at end of file +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section3/springsecsection3/src/main/resources/sql/scripts.sql b/section3/springsecsection3/src/main/resources/sql/scripts.sql deleted file mode 100644 index f4a46efb..00000000 --- a/section3/springsecsection3/src/main/resources/sql/scripts.sql +++ /dev/null @@ -1,30 +0,0 @@ -create database eazybank; - -use eazybank; - -CREATE TABLE `users` ( -`id` INT NOT NULL AUTO_INCREMENT, -`username` VARCHAR(45) NOT NULL, -`password` VARCHAR(45) NOT NULL, -`enabled` INT NOT NULL, -PRIMARY KEY (`id`)); - -CREATE TABLE `authorities` ( - `id` int NOT NULL AUTO_INCREMENT, - `username` varchar(45) NOT NULL, - `authority` varchar(45) NOT NULL, - PRIMARY KEY (`id`)); - -INSERT IGNORE INTO `users` VALUES (NULL, 'happy', '12345', '1'); -INSERT IGNORE INTO `authorities` VALUES (NULL, 'happy', 'write'); - -CREATE TABLE `customer` ( - `id` int NOT NULL AUTO_INCREMENT, - `email` varchar(45) NOT NULL, - `pwd` varchar(200) NOT NULL, - `role` varchar(45) NOT NULL, - PRIMARY KEY (`id`) -); - -INSERT INTO `customer` (`email`, `pwd`, `role`) - VALUES ('johndoe@example.com', '54321', 'admin'); \ No newline at end of file diff --git a/section4/springsecsection4/.mvn/wrapper/maven-wrapper.jar b/section4/springsecsection4/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section4/springsecsection4/.mvn/wrapper/maven-wrapper.properties b/section4/springsecsection4/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section4/springsecsection4/.mvn/wrapper/maven-wrapper.properties +++ b/section4/springsecsection4/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section4/springsecsection4/mvnw b/section4/springsecsection4/mvnw index 8a8fb228..ba9212a0 100755 --- a/section4/springsecsection4/mvnw +++ b/section4/springsecsection4/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section4/springsecsection4/mvnw.cmd b/section4/springsecsection4/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section4/springsecsection4/mvnw.cmd +++ b/section4/springsecsection4/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section4/springsecsection4/pom.xml b/section4/springsecsection4/pom.xml index 86b186b0..e9396724 100644 --- a/section4/springsecsection4/pom.xml +++ b/section4/springsecsection4/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,21 +17,17 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - org.springframework.ldap - spring-ldap-core + org.springframework.boot + spring-boot-starter-security - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -42,10 +38,6 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools @@ -53,13 +45,13 @@ true - org.springframework.boot - spring-boot-starter-test - test + org.projectlombok + lombok + true - org.springframework.security - spring-security-test + org.springframework.boot + spring-boot-starter-test test diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section4/springsecsection4/src/main/java/com/eazybytes/EazyBankBackendApplication.java index e7e047e9..24e98fb3 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -4,10 +4,12 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication +/*@EnableJpaRepositories("com.eazybytes.repository") +@EntityScan("com.eazybytes.model")*/ public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetails.java b/section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetails.java deleted file mode 100644 index 5577fed8..00000000 --- a/section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetails.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.eazybytes.config; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; -import org.springframework.security.core.userdetails.User; -import org.springframework.security.core.userdetails.UserDetails; -import org.springframework.security.core.userdetails.UserDetailsService; -import org.springframework.security.core.userdetails.UsernameNotFoundException; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.List; - -@Service -public class EazyBankUserDetails implements UserDetailsService { - - @Autowired - private CustomerRepository customerRepository; - - @Override - public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { - String userName, password; - List authorities; - List customer = customerRepository.findByEmail(username); - if (customer.size() == 0) { - throw new UsernameNotFoundException("User details not found for the user : " + username); - } else{ - userName = customer.get(0).getEmail(); - password = customer.get(0).getPwd(); - authorities = new ArrayList<>(); - authorities.add(new SimpleGrantedAuthority(customer.get(0).getRole())); - } - return new User(userName,password,authorities); - } - -} diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..c7933242 --- /dev/null +++ b/section4/springsecsection4/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,30 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = List.of(new SimpleGrantedAuthority(customer.getRole())); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section4/springsecsection4/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index 5518a5af..3664b74d 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -2,29 +2,46 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; + +import static org.springframework.security.config.Customizer.withDefaults; @Configuration public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - http.csrf((csrf) -> csrf.disable()) + http.csrf(csrfConfig -> csrfConfig.disable()) .authorizeHttpRequests((requests) -> requests - .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() - .requestMatchers("/notices", "/contact", "/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(withDefaults()); return http.build(); } + /*@Bean + public UserDetailsService userDetailsService(DataSource dataSource) { + return new JdbcUserDetailsManager(dataSource); + }*/ + @Bean public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); } } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/AccountController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/AccountController.java index 007f69ca..6c53a3be 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/controller/AccountController.java @@ -7,7 +7,7 @@ public class AccountController { @GetMapping("/myAccount") - public String getAccountDetails() { + public String getAccountDetails () { return "Here are the account details from the DB"; } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/BalanceController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/BalanceController.java index 66e4a53a..81f0f5ff 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/controller/BalanceController.java @@ -7,7 +7,7 @@ public class BalanceController { @GetMapping("/myBalance") - public String getBalanceDetails() { + public String getBalanceDetails () { return "Here are the balance details from the DB"; } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/CardsController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/CardsController.java index b6ed4e32..3931047e 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/controller/CardsController.java @@ -7,7 +7,7 @@ public class CardsController { @GetMapping("/myCards") - public String getCardDetails() { + public String getCardsDetails () { return "Here are the card details from the DB"; } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/ContactController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/ContactController.java index 66a5228c..f7db1aa6 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/controller/ContactController.java @@ -7,7 +7,7 @@ public class ContactController { @GetMapping("/contact") - public String saveContactInquiryDetails() { + public String saveContactInquiryDetails () { return "Inquiry details are saved to the DB"; } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/LoansController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/LoansController.java index 4d6fd3b3..4262e918 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/controller/LoansController.java @@ -7,8 +7,8 @@ public class LoansController { @GetMapping("/myLoans") - public String getLoanDetails() { - return "Here are the loan details from the DB"; + public String getLoansDetails () { + return "Here are the loans details from the DB"; } } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/LoginController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/LoginController.java deleted file mode 100644 index 268fb6d5..00000000 --- a/section4/springsecsection4/src/main/java/com/eazybytes/controller/LoginController.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.eazybytes.controller; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RestController; - -@RestController -public class LoginController { - - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; - - @PostMapping("/register") - public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; - try { - String hashPwd = passwordEncoder.encode(customer.getPwd()); - customer.setPwd(hashPwd); - savedCustomer = customerRepository.save(customer); - if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); - } - } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); - } - return response; - } - - -} diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/NoticesController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/NoticesController.java index 40a3e6e2..51c9dd3f 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/controller/NoticesController.java @@ -7,7 +7,7 @@ public class NoticesController { @GetMapping("/notices") - public String getNotices() { + public String getNotices () { return "Here are the notices details from the DB"; } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/controller/UserController.java b/section4/springsecsection4/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..e11933cc --- /dev/null +++ b/section4/springsecsection4/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,41 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; + + @PostMapping("/register") + public ResponseEntity registerUser(@RequestBody Customer customer) { + try { + String hashPwd = passwordEncoder.encode(customer.getPwd()); + customer.setPwd(hashPwd); + Customer savedCustomer = customerRepository.save(customer); + + if(savedCustomer.getId()>0) { + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); + } + } catch (Exception ex) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); + } + + } + +} diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/model/Customer.java b/section4/springsecsection4/src/main/java/com/eazybytes/model/Customer.java index 3c80d393..e73b2b52 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/model/Customer.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/model/Customer.java @@ -1,51 +1,21 @@ package com.eazybytes.model; -import jakarta.persistence.Entity; -import jakarta.persistence.GeneratedValue; -import jakarta.persistence.GenerationType; -import jakarta.persistence.Id; -import org.hibernate.annotations.GenericGenerator; +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; @Entity +@Table(name = "customer") +@Getter @Setter public class Customer { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private int id; + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; private String email; private String pwd; + @Column(name = "role") private String role; - public int getId() { - return id; - } - public void setId(int id) { - this.id = id; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } } diff --git a/section4/springsecsection4/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section4/springsecsection4/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section4/springsecsection4/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section4/springsecsection4/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section4/springsecsection4/src/main/resources/application.properties b/section4/springsecsection4/src/main/resources/application.properties index 78fdb8f8..162734d9 100644 --- a/section4/springsecsection4/src/main/resources/application.properties +++ b/section4/springsecsection4/src/main/resources/application.properties @@ -1,5 +1,10 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true \ No newline at end of file +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section4/springsecsection4/src/main/resources/sql/scripts.sql b/section4/springsecsection4/src/main/resources/sql/scripts.sql index f4a46efb..3ac6975d 100644 --- a/section4/springsecsection4/src/main/resources/sql/scripts.sql +++ b/section4/springsecsection4/src/main/resources/sql/scripts.sql @@ -1,22 +1,12 @@ -create database eazybank; +create table users(username varchar(50) not null primary key,password varchar(500) not null,enabled boolean not null); +create table authorities (username varchar(50) not null,authority varchar(50) not null,constraint fk_authorities_users foreign key(username) references users(username)); +create unique index ix_auth_username on authorities (username,authority); -use eazybank; +INSERT IGNORE INTO `users` VALUES ('user', '{noop}EazyBytes@12345', '1'); +INSERT IGNORE INTO `authorities` VALUES ('user', 'read'); -CREATE TABLE `users` ( -`id` INT NOT NULL AUTO_INCREMENT, -`username` VARCHAR(45) NOT NULL, -`password` VARCHAR(45) NOT NULL, -`enabled` INT NOT NULL, -PRIMARY KEY (`id`)); - -CREATE TABLE `authorities` ( - `id` int NOT NULL AUTO_INCREMENT, - `username` varchar(45) NOT NULL, - `authority` varchar(45) NOT NULL, - PRIMARY KEY (`id`)); - -INSERT IGNORE INTO `users` VALUES (NULL, 'happy', '12345', '1'); -INSERT IGNORE INTO `authorities` VALUES (NULL, 'happy', 'write'); +INSERT IGNORE INTO `users` VALUES ('admin', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', '1'); +INSERT IGNORE INTO `authorities` VALUES ('admin', 'admin'); CREATE TABLE `customer` ( `id` int NOT NULL AUTO_INCREMENT, @@ -26,5 +16,5 @@ CREATE TABLE `customer` ( PRIMARY KEY (`id`) ); -INSERT INTO `customer` (`email`, `pwd`, `role`) - VALUES ('johndoe@example.com', '54321', 'admin'); \ No newline at end of file +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('happy@example.com', '{noop}EazyBytes@12345', 'read'); +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('admin@example.com', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin'); \ No newline at end of file diff --git a/section5/springsecsection5/.mvn/wrapper/maven-wrapper.jar b/section5/springsecsection5/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section5/springsecsection5/.mvn/wrapper/maven-wrapper.properties b/section5/springsecsection5/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section5/springsecsection5/.mvn/wrapper/maven-wrapper.properties +++ b/section5/springsecsection5/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section5/springsecsection5/mvnw b/section5/springsecsection5/mvnw index 8a8fb228..ba9212a0 100755 --- a/section5/springsecsection5/mvnw +++ b/section5/springsecsection5/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section5/springsecsection5/mvnw.cmd b/section5/springsecsection5/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section5/springsecsection5/mvnw.cmd +++ b/section5/springsecsection5/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section5/springsecsection5/pom.xml b/section5/springsecsection5/pom.xml index f678ecc2..6c7bfbdf 100644 --- a/section5/springsecsection5/pom.xml +++ b/section5/springsecsection5/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,21 +17,17 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - org.springframework.ldap - spring-ldap-core + org.springframework.boot + spring-boot-starter-security - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -42,10 +38,6 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools @@ -53,13 +45,13 @@ true - org.springframework.boot - spring-boot-starter-test - test + org.projectlombok + lombok + true - org.springframework.security - spring-security-test + org.springframework.boot + spring-boot-starter-test test diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section5/springsecsection5/src/main/java/com/eazybytes/EazyBankBackendApplication.java index e7e047e9..24e98fb3 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -4,10 +4,12 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication +/*@EnableJpaRepositories("com.eazybytes.repository") +@EntityScan("com.eazybytes.model")*/ public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..c7933242 --- /dev/null +++ b/section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,30 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = List.of(new SimpleGrantedAuthority(customer.getRole())); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java deleted file mode 100644 index a0ee1688..00000000 --- a/section5/springsecsection5/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.eazybytes.config; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.authentication.AuthenticationProvider; -import org.springframework.security.authentication.BadCredentialsException; -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.AuthenticationException; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; -import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.stereotype.Component; - -import java.util.ArrayList; -import java.util.List; - -@Component -public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { - - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; - - @Override - public Authentication authenticate(Authentication authentication) throws AuthenticationException { - String username = authentication.getName(); - String pwd = authentication.getCredentials().toString(); - List customer = customerRepository.findByEmail(username); - if (customer.size() > 0) { - if (passwordEncoder.matches(pwd, customer.get(0).getPwd())) { - List authorities = new ArrayList<>(); - authorities.add(new SimpleGrantedAuthority(customer.get(0).getRole())); - return new UsernamePasswordAuthenticationToken(username, pwd, authorities); - } else { - throw new BadCredentialsException("Invalid password!"); - } - }else { - throw new BadCredentialsException("No user registered with this details!"); - } - } - - @Override - public boolean supports(Class authentication) { - return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); - } - -} diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section5/springsecsection5/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index 5518a5af..3664b74d 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -2,29 +2,46 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; + +import static org.springframework.security.config.Customizer.withDefaults; @Configuration public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - http.csrf((csrf) -> csrf.disable()) + http.csrf(csrfConfig -> csrfConfig.disable()) .authorizeHttpRequests((requests) -> requests - .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() - .requestMatchers("/notices", "/contact", "/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(withDefaults()); return http.build(); } + /*@Bean + public UserDetailsService userDetailsService(DataSource dataSource) { + return new JdbcUserDetailsManager(dataSource); + }*/ + @Bean public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); } } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/AccountController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/AccountController.java index 007f69ca..6c53a3be 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/controller/AccountController.java @@ -7,7 +7,7 @@ public class AccountController { @GetMapping("/myAccount") - public String getAccountDetails() { + public String getAccountDetails () { return "Here are the account details from the DB"; } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/BalanceController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/BalanceController.java index 66e4a53a..81f0f5ff 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/controller/BalanceController.java @@ -7,7 +7,7 @@ public class BalanceController { @GetMapping("/myBalance") - public String getBalanceDetails() { + public String getBalanceDetails () { return "Here are the balance details from the DB"; } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/CardsController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/CardsController.java index b6ed4e32..3931047e 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/controller/CardsController.java @@ -7,7 +7,7 @@ public class CardsController { @GetMapping("/myCards") - public String getCardDetails() { + public String getCardsDetails () { return "Here are the card details from the DB"; } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/ContactController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/ContactController.java index 66a5228c..f7db1aa6 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/controller/ContactController.java @@ -7,7 +7,7 @@ public class ContactController { @GetMapping("/contact") - public String saveContactInquiryDetails() { + public String saveContactInquiryDetails () { return "Inquiry details are saved to the DB"; } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/LoansController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/LoansController.java index 4d6fd3b3..4262e918 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/controller/LoansController.java @@ -7,8 +7,8 @@ public class LoansController { @GetMapping("/myLoans") - public String getLoanDetails() { - return "Here are the loan details from the DB"; + public String getLoansDetails () { + return "Here are the loans details from the DB"; } } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/LoginController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/LoginController.java deleted file mode 100644 index 268fb6d5..00000000 --- a/section5/springsecsection5/src/main/java/com/eazybytes/controller/LoginController.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.eazybytes.controller; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RestController; - -@RestController -public class LoginController { - - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; - - @PostMapping("/register") - public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; - try { - String hashPwd = passwordEncoder.encode(customer.getPwd()); - customer.setPwd(hashPwd); - savedCustomer = customerRepository.save(customer); - if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); - } - } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); - } - return response; - } - - -} diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/NoticesController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/NoticesController.java index 40a3e6e2..51c9dd3f 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/controller/NoticesController.java @@ -7,7 +7,7 @@ public class NoticesController { @GetMapping("/notices") - public String getNotices() { + public String getNotices () { return "Here are the notices details from the DB"; } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/controller/UserController.java b/section5/springsecsection5/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..e11933cc --- /dev/null +++ b/section5/springsecsection5/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,41 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; + + @PostMapping("/register") + public ResponseEntity registerUser(@RequestBody Customer customer) { + try { + String hashPwd = passwordEncoder.encode(customer.getPwd()); + customer.setPwd(hashPwd); + Customer savedCustomer = customerRepository.save(customer); + + if(savedCustomer.getId()>0) { + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); + } + } catch (Exception ex) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); + } + + } + +} diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/model/Customer.java b/section5/springsecsection5/src/main/java/com/eazybytes/model/Customer.java index 3c80d393..e73b2b52 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/model/Customer.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/model/Customer.java @@ -1,51 +1,21 @@ package com.eazybytes.model; -import jakarta.persistence.Entity; -import jakarta.persistence.GeneratedValue; -import jakarta.persistence.GenerationType; -import jakarta.persistence.Id; -import org.hibernate.annotations.GenericGenerator; +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; @Entity +@Table(name = "customer") +@Getter @Setter public class Customer { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private int id; + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; private String email; private String pwd; + @Column(name = "role") private String role; - public int getId() { - return id; - } - public void setId(int id) { - this.id = id; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } } diff --git a/section5/springsecsection5/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section5/springsecsection5/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section5/springsecsection5/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section5/springsecsection5/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section5/springsecsection5/src/main/resources/application.properties b/section5/springsecsection5/src/main/resources/application.properties index 78fdb8f8..162734d9 100644 --- a/section5/springsecsection5/src/main/resources/application.properties +++ b/section5/springsecsection5/src/main/resources/application.properties @@ -1,5 +1,10 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true \ No newline at end of file +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section5/springsecsection5/src/main/resources/sql/scripts.sql b/section5/springsecsection5/src/main/resources/sql/scripts.sql index f4a46efb..3ac6975d 100644 --- a/section5/springsecsection5/src/main/resources/sql/scripts.sql +++ b/section5/springsecsection5/src/main/resources/sql/scripts.sql @@ -1,22 +1,12 @@ -create database eazybank; +create table users(username varchar(50) not null primary key,password varchar(500) not null,enabled boolean not null); +create table authorities (username varchar(50) not null,authority varchar(50) not null,constraint fk_authorities_users foreign key(username) references users(username)); +create unique index ix_auth_username on authorities (username,authority); -use eazybank; +INSERT IGNORE INTO `users` VALUES ('user', '{noop}EazyBytes@12345', '1'); +INSERT IGNORE INTO `authorities` VALUES ('user', 'read'); -CREATE TABLE `users` ( -`id` INT NOT NULL AUTO_INCREMENT, -`username` VARCHAR(45) NOT NULL, -`password` VARCHAR(45) NOT NULL, -`enabled` INT NOT NULL, -PRIMARY KEY (`id`)); - -CREATE TABLE `authorities` ( - `id` int NOT NULL AUTO_INCREMENT, - `username` varchar(45) NOT NULL, - `authority` varchar(45) NOT NULL, - PRIMARY KEY (`id`)); - -INSERT IGNORE INTO `users` VALUES (NULL, 'happy', '12345', '1'); -INSERT IGNORE INTO `authorities` VALUES (NULL, 'happy', 'write'); +INSERT IGNORE INTO `users` VALUES ('admin', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', '1'); +INSERT IGNORE INTO `authorities` VALUES ('admin', 'admin'); CREATE TABLE `customer` ( `id` int NOT NULL AUTO_INCREMENT, @@ -26,5 +16,5 @@ CREATE TABLE `customer` ( PRIMARY KEY (`id`) ); -INSERT INTO `customer` (`email`, `pwd`, `role`) - VALUES ('johndoe@example.com', '54321', 'admin'); \ No newline at end of file +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('happy@example.com', '{noop}EazyBytes@12345', 'read'); +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('admin@example.com', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin'); \ No newline at end of file diff --git a/section6/00_UI_Initial Code/bank-app-ui/karma.conf.js b/section6/00_UI_Initial Code/bank-app-ui/karma.conf.js deleted file mode 100644 index fc6f3890..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/karma.conf.js +++ /dev/null @@ -1,44 +0,0 @@ -// Karma configuration file, see link for more information -// https://karma-runner.github.io/1.0/config/configuration-file.html - -module.exports = function (config) { - config.set({ - basePath: '', - frameworks: ['jasmine', '@angular-devkit/build-angular'], - plugins: [ - require('karma-jasmine'), - require('karma-chrome-launcher'), - require('karma-jasmine-html-reporter'), - require('karma-coverage'), - require('@angular-devkit/build-angular/plugins/karma') - ], - client: { - jasmine: { - // you can add configuration options for Jasmine here - // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html - // for example, you can disable the random execution with `random: false` - // or set a specific seed with `seed: 4321` - }, - clearContext: false // leave Jasmine Spec Runner output visible in browser - }, - jasmineHtmlReporter: { - suppressAll: true // removes the duplicated traces - }, - coverageReporter: { - dir: require('path').join(__dirname, './coverage/bank-app-ui'), - subdir: '.', - reporters: [ - { type: 'html' }, - { type: 'text-summary' } - ] - }, - reporters: ['progress', 'kjhtml'], - port: 9876, - colors: true, - logLevel: config.LOG_INFO, - autoWatch: true, - browsers: ['Chrome'], - singleRun: false, - restartOnFileChange: true - }); -}; diff --git a/section6/00_UI_Initial Code/bank-app-ui/package-lock.json b/section6/00_UI_Initial Code/bank-app-ui/package-lock.json deleted file mode 100644 index 695a202a..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/package-lock.json +++ /dev/null @@ -1,20539 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "bank-app-ui", - "version": "0.0.0", - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "optionalDependencies": { - "esbuild": "0.14.49" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "@angular/localize": "^14.0.0", - "@angular/service-worker": "^14.0.0", - "karma": "^6.3.0", - "ng-packagr": "^14.0.0", - "protractor": "^7.0.0", - "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=4.6.2 <4.8" - }, - "peerDependenciesMeta": { - "@angular/localize": { - "optional": true - }, - "@angular/service-worker": { - "optional": true - }, - "karma": { - "optional": true - }, - "ng-packagr": { - "optional": true - }, - "protractor": { - "optional": true - }, - "tailwindcss": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "webpack": "^5.30.0", - "webpack-dev-server": "^4.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "dependencies": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^3.5.2" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/core/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - } - }, - "node_modules/@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - }, - "bin": { - "ng": "bin/ng.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/core": { - "optional": true - } - } - }, - "node_modules/@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - }, - "bin": { - "ng-xi18n": "bundles/src/bin/ng_xi18n.js", - "ngc": "bundles/src/bin/ngc.js", - "ngcc": "bundles/ngcc/main-ngcc.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/compiler": "14.1.3", - "typescript": ">=4.6.2 <4.8" - } - }, - "node_modules/@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.11.4" - } - }, - "node_modules/@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/animations": "14.1.3", - "@angular/common": "14.1.3", - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/animations": { - "optional": true - } - } - }, - "node_modules/@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/compiler": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3" - } - }, - "node_modules/@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "dependencies": { - "tslib": "^2.4.0" - }, - "peerDependencies": { - "@angular/core": "^14.0.0", - "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" - } - }, - "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==", - "hasInstallScript": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "node_modules/@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "typescript": ">=4.6.2 <4.8", - "webpack": "^5.54.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "dependencies": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "dependencies": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "installed-package-contents": "index.js" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "dependencies": { - "infer-owner": "^1.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "dependencies": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "node_modules/@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "node_modules/@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "18.7.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.8.tgz", - "integrity": "sha512-/YP55EMK2341JkODUb8DM9O0x1SIz2aBvyF33Uf1c76St3VpsMXEIW0nxuKkq/5cxnbz0RD9cfwNZHEAZQD3ag==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/agentkeepalive/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" - } - }, - "node_modules/babel-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true, - "engines": { - "node": "^4.5.0 || >= 5.9" - } - }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/twbs" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/bootstrap" - } - ], - "peerDependencies": { - "@popperjs/core": "^2.11.5" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/connect/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/connect/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "node_modules/copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "dependencies": { - "is-what": "^3.14.1" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, - "node_modules/copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - } - }, - "node_modules/critters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/critters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/critters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/critters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/critters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/critters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cross-spawn/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, - "node_modules/css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-blank-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-has-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "bin": { - "css-prefers-color-scheme": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "node_modules/date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "dependencies": { - "clone": "^1.0.2" - } - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "node_modules/di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "node_modules/dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "dependencies": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "dependencies": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "node_modules/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "node_modules/esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "node_modules/esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "node_modules/express/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/finalhandler/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==", - "engines": { - "node": ">=0.10.3" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "dependencies": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "node_modules/hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "node_modules/hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "dependencies": { - "ms": "^2.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "dependencies": { - "minimatch": "^5.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true, - "engines": { - "node": ">= 8.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/gjtorikian/" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true, - "engines": [ - "node >= 0.2.0" - ] - }, - "node_modules/karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "dependencies": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "bin": { - "karma": "bin/karma" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "dependencies": { - "which": "^1.2.1" - } - }, - "node_modules/karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/karma-coverage/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma-coverage/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "dependencies": { - "jasmine-core": "^4.1.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "karma": "^6.0.0" - } - }, - "node_modules/karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "peerDependencies": { - "jasmine-core": "^4.0.0", - "karma": "^6.0.0", - "karma-jasmine": "^5.0.0" - } - }, - "node_modules/karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "dependencies": { - "source-map-support": "^0.5.5" - } - }, - "node_modules/karma/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/karma/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/karma/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/karma/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/karma/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/karma/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "dependencies": { - "copy-anything": "^2.0.1", - "parse-node-version": "^1.0.1", - "tslib": "^2.3.0" - }, - "bin": { - "lessc": "bin/lessc" - }, - "engines": { - "node": ">=6" - }, - "optionalDependencies": { - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "source-map": "~0.6.0" - } - }, - "node_modules/less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "dependencies": { - "klona": "^2.0.4" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "less": "^3.5.0 || ^4.0.0", - "webpack": "^5.0.0" - } - }, - "node_modules/less/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/less/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/less/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "dependencies": { - "webpack-sources": "^3.0.0" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - }, - "webpack-sources": { - "optional": true - } - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.8" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "node_modules/needle/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/needle/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "!win32" - ], - "dependencies": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true, - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": "^12.22 || ^14.13 || >=16" - } - }, - "node_modules/node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/node-gyp/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "node_modules/npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "node_modules/npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "npm-packlist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "dependencies": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "dependencies": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/ora/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-retry/node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "dependencies": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - }, - "bin": { - "pacote": "lib/bin.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "dependencies": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0" - }, - "optionalDependencies": { - "nice-napi": "^1.0.2" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": ">=7.6.0" - }, - "peerDependencies": { - "postcss": "^8.4.6" - } - }, - "node_modules/postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" - } - }, - "node_modules/postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true, - "funding": [ - { - "type": "kofi", - "url": "https://ko-fi.com/mrcgrtz" - }, - { - "type": "liberapay", - "url": "https://liberapay.com/mrcgrtz" - } - ], - "engines": { - "node": "^12 || ^14 || >=16" - } - }, - "node_modules/postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8" - } - }, - "node_modules/postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "dependencies": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.3" - } - }, - "node_modules/postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true, - "engines": { - "node": ">=0.9" - } - }, - "node_modules/qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "dependencies": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "node_modules/regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "node_modules/regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "dependencies": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/resolve-url-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/resolve-url-loader/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "dependencies": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", - "sass": "^1.3.0", - "sass-embedded": "*", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - } - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/schema-utils/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/schema-utils/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/schema-utils/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "node_modules/selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "dependencies": { - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/send/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "node_modules/socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "dependencies": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.72.1" - } - }, - "node_modules/source-map-loader/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "dependencies": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "bin": { - "stylus": "bin/stylus" - }, - "engines": { - "node": "*" - } - }, - "node_modules/stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "stylus": ">=0.52.4", - "webpack": "^5.0.0" - } - }, - "node_modules/stylus/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/stylus/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/stylus/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/test-exclude/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/test-exclude/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "node_modules/typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==", - "engines": { - "node": ">=14" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "dependencies": { - "typed-assert": "^1.0.8" - }, - "engines": { - "node": ">= 12" - }, - "peerDependencies": { - "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", - "webpack": "^5.12.0" - }, - "peerDependenciesMeta": { - "html-webpack-plugin": { - "optional": true - } - } - }, - "node_modules/webpack/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/webpack/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "dependencies": { - "tslib": "^2.3.0" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "requires": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild": "0.14.49", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - } - } - }, - "@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "requires": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - } - }, - "@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "requires": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - } - }, - "@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true - }, - "@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "requires": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "dependencies": { - "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - } - } - } - }, - "@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, - "@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - } - }, - "@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true - }, - "@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "requires": {} - }, - "@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "requires": {} - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true - }, - "@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "requires": { - "tslib": "^2.4.0" - } - }, - "@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==" - }, - "@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "requires": {} - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "requires": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - } - }, - "@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "requires": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, - "@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true - }, - "@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "requires": { - "infer-owner": "^1.0.4" - } - }, - "@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "requires": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true - }, - "@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - } - }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "@types/node": { - "version": "18.7.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.8.tgz", - "integrity": "sha512-/YP55EMK2341JkODUb8DM9O0x1SIz2aBvyF33Uf1c76St3VpsMXEIW0nxuKkq/5cxnbz0RD9cfwNZHEAZQD3ag==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "requires": {} - }, - "adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "dependencies": { - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - } - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "requires": { - "ajv": "^8.0.0" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "requires": {} - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "requires": { - "semver": "^7.0.0" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "requires": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true - }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, - "colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "requires": { - "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "requires": { - "is-what": "^3.14.1" - } - }, - "copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "dependencies": { - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - } - }, - "css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "requires": {} - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true - }, - "cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "requires": { - "execa": "^5.0.0" - } - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true - }, - "define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - } - }, - "engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true - }, - "enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true - }, - "err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "optional": true, - "requires": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "dev": true, - "optional": true - }, - "esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "dev": true, - "optional": true - }, - "esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "dev": true, - "optional": true - }, - "esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "dev": true, - "optional": true - }, - "esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "dev": true, - "optional": true - }, - "esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "dev": true, - "optional": true - }, - "esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "dev": true, - "optional": true - }, - "esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "dev": true, - "optional": true - }, - "esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "dev": true, - "optional": true - }, - "esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "dev": true, - "optional": true - }, - "esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "dev": true, - "optional": true - }, - "esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "dev": true, - "optional": true - }, - "esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "dev": true, - "optional": true - }, - "esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true - }, - "esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "dev": true, - "optional": true - }, - "esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "dev": true, - "optional": true - }, - "esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "dev": true, - "optional": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true - }, - "eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true - }, - "font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==" - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true - }, - "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - } - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "requires": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "requires": { - "lru-cache": "^7.5.1" - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "dependencies": { - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "requires": {} - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true - }, - "ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "requires": { - "minimatch": "^5.0.1" - } - }, - "image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true - }, - "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true - }, - "inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true - }, - "is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true - }, - "jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true - }, - "karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "requires": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } - } - }, - "karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "requires": { - "which": "^1.2.1" - } - }, - "karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "requires": { - "jasmine-core": "^4.1.0" - } - }, - "karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "requires": {} - }, - "karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "requires": { - "source-map-support": "^0.5.5" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true - }, - "less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "requires": { - "copy-anything": "^2.0.1", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "parse-node-version": "^1.0.1", - "source-map": "~0.6.0", - "tslib": "^2.3.0" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "requires": { - "klona": "^2.0.4" - } - }, - "license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "requires": { - "webpack-sources": "^3.0.0" - } - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true - }, - "loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - } - }, - "lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true - }, - "magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.8" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "requires": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true - }, - "memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "requires": { - "fs-monkey": "^1.0.3" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "requires": { - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "requires": { - "encoding": "^0.1.13", - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "requires": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true - }, - "needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "optional": true, - "requires": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true - }, - "node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true - }, - "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true - }, - "npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "requires": { - "semver": "^7.1.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - } - }, - "npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "requires": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - } - }, - "npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "requires": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - } - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "requires": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - } - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true - }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "requires": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "dependencies": { - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true - } - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "requires": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "requires": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "requires": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0", - "nice-napi": "^1.0.2" - } - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "requires": {} - }, - "postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "requires": {} - }, - "postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - } - }, - "postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "requires": {} - }, - "postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "requires": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - } - }, - "postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "requires": {} - }, - "postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "requires": {} - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true - }, - "postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "requires": {} - }, - "postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "requires": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "requires": {} - }, - "postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true - }, - "proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "requires": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true - } - } - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true - }, - "qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "requires": { - "pify": "^2.3.0" - } - }, - "read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "requires": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "requires": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - } - }, - "regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "requires": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "requires": { - "tslib": "^2.1.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "requires": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - } - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "requires": { - "node-forge": "^1" - } - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true - }, - "socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - } - }, - "socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "requires": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - } - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "requires": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - } - }, - "socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "requires": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - } - }, - "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true - }, - "source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "requires": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - }, - "streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - }, - "stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "requires": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - } - }, - "terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true - }, - "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true - }, - "typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==" - }, - "ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "requires": { - "builtins": "^5.0.0" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "requires": {} - } - } - }, - "webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true - }, - "webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "requires": { - "typed-assert": "^1.0.8" - } - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "requires": {} - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, - "yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true - }, - "zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "requires": { - "tslib": "^2.3.0" - } - } - } -} diff --git a/section6/00_UI_Initial Code/bank-app-ui/package.json b/section6/00_UI_Initial Code/bank-app-ui/package.json deleted file mode 100644 index 8184d08c..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/package.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "scripts": { - "ng": "ng", - "start": "ng serve", - "build": "ng build", - "watch": "ng build --watch --configuration development", - "test": "ng test" - }, - "private": true, - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } -} diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.spec.ts deleted file mode 100644 index c7c59ce9..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.spec.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { RouterTestingModule } from '@angular/router/testing'; -import { AppComponent } from './app.component'; - -describe('AppComponent', () => { - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [ - RouterTestingModule - ], - declarations: [ - AppComponent - ], - }).compileComponents(); - }); - - it('should create the app', () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app).toBeTruthy(); - }); - - it(`should have as title 'bank-app-ui'`, () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app.title).toEqual('bank-app-ui'); - }); - - it('should render title', () => { - const fixture = TestBed.createComponent(AppComponent); - fixture.detectChanges(); - const compiled = fixture.nativeElement as HTMLElement; - expect(compiled.querySelector('.content span')?.textContent).toContain('bank-app-ui app is running!'); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.spec.ts deleted file mode 100644 index 140216da..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AccountComponent } from './account.component'; - -describe('AccountComponent', () => { - let component: AccountComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ AccountComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AccountComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.spec.ts deleted file mode 100644 index 9b61420f..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { BalanceComponent } from './balance.component'; - -describe('BalanceComponent', () => { - let component: BalanceComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ BalanceComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(BalanceComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.spec.ts deleted file mode 100644 index 6b67f12b..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { CardsComponent } from './cards.component'; - -describe('CardsComponent', () => { - let component: CardsComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ CardsComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(CardsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.spec.ts deleted file mode 100644 index 2d0479d7..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HeaderComponent } from './header.component'; - -describe('HeaderComponent', () => { - let component: HeaderComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ HeaderComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(HeaderComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.spec.ts deleted file mode 100644 index 5075be73..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.spec.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HomeComponent } from './home.component'; - -describe('HomeComponent', () => { - let component: HomeComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ HomeComponent ] - }) - .compileComponents(); - - fixture = TestBed.createComponent(HomeComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.spec.ts deleted file mode 100644 index 20346117..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoansComponent } from './loans.component'; - -describe('LoansComponent', () => { - let component: LoansComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoansComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoansComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.spec.ts deleted file mode 100644 index d6d85a84..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoginComponent } from './login.component'; - -describe('LoginComponent', () => { - let component: LoginComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoginComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoginComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.spec.ts deleted file mode 100644 index c04dbe28..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LogoutComponent } from './logout.component'; - -describe('LogoutComponent', () => { - let component: LogoutComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LogoutComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LogoutComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.spec.ts deleted file mode 100644 index acf52047..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { NoticesComponent } from './notices.component'; - -describe('NoticesComponent', () => { - let component: NoticesComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ NoticesComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(NoticesComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/routeguards/auth.routeguard.ts deleted file mode 100644 index 25678ed4..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/routeguards/auth.routeguard.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot,Router } from '@angular/router'; -import { User } from '../model/user.model'; - -@Injectable() -export class AuthActivateRouteGuard implements CanActivate { - user = new User(); - - constructor(private router: Router){ - - } - - canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ - if(sessionStorage.getItem('userdetails')){ - this.user = JSON.parse(sessionStorage.getItem('userdetails')!); - } - if(!this.user){ - this.router.navigate(['login']); - } - return this.user?true:false; - } - -} \ No newline at end of file diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/services/login/login.service.spec.ts b/section6/00_UI_Initial Code/bank-app-ui/src/app/services/login/login.service.spec.ts deleted file mode 100644 index 299b0d50..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/services/login/login.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { LoginService } from './login.service'; - -describe('LoginService', () => { - let service: LoginService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(LoginService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.prod.ts b/section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.prod.ts deleted file mode 100644 index 3612073b..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.prod.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const environment = { - production: true -}; diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.ts b/section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.ts deleted file mode 100644 index 2527feff..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/environments/environment.ts +++ /dev/null @@ -1,17 +0,0 @@ -// This file can be replaced during build by using the `fileReplacements` array. -// `ng build` replaces `environment.ts` with `environment.prod.ts`. -// The list of file replacements can be found in `angular.json`. - -export const environment = { - production: false, - rooturl : 'http://localhost:8080' -}; - -/* - * For easier debugging in development mode, you can import the following file - * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. - * - * This import should be commented out in production mode because it will have a negative impact - * on performance if an error is thrown. - */ -// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/polyfills.ts b/section6/00_UI_Initial Code/bank-app-ui/src/polyfills.ts deleted file mode 100644 index 429bb9ef..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/polyfills.ts +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This file includes polyfills needed by Angular and is loaded before the app. - * You can add your own extra polyfills to this file. - * - * This file is divided into 2 sections: - * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. - * 2. Application imports. Files imported after ZoneJS that should be loaded before your main - * file. - * - * The current setup is for so-called "evergreen" browsers; the last versions of browsers that - * automatically update themselves. This includes recent versions of Safari, Chrome (including - * Opera), Edge on the desktop, and iOS and Chrome on mobile. - * - * Learn more in https://angular.io/guide/browser-support - */ - -/*************************************************************************************************** - * BROWSER POLYFILLS - */ - -/** - * By default, zone.js will patch all possible macroTask and DomEvents - * user can disable parts of macroTask/DomEvents patch by setting following flags - * because those flags need to be set before `zone.js` being loaded, and webpack - * will put import in the top of bundle, so user need to create a separate file - * in this directory (for example: zone-flags.ts), and put the following flags - * into that file, and then add the following code before importing zone.js. - * import './zone-flags'; - * - * The flags allowed in zone-flags.ts are listed here. - * - * The following flags will work for all browsers. - * - * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame - * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick - * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames - * - * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js - * with the following flag, it will bypass `zone.js` patch for IE/Edge - * - * (window as any).__Zone_enable_cross_context_check = true; - * - */ - -/*************************************************************************************************** - * Zone JS is required by default for Angular itself. - */ -import 'zone.js'; // Included with Angular CLI. - - -/*************************************************************************************************** - * APPLICATION IMPORTS - */ diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/test.ts b/section6/00_UI_Initial Code/bank-app-ui/src/test.ts deleted file mode 100644 index c04c8760..00000000 --- a/section6/00_UI_Initial Code/bank-app-ui/src/test.ts +++ /dev/null @@ -1,26 +0,0 @@ -// This file is required by karma.conf.js and loads recursively all the .spec and framework files - -import 'zone.js/testing'; -import { getTestBed } from '@angular/core/testing'; -import { - BrowserDynamicTestingModule, - platformBrowserDynamicTesting -} from '@angular/platform-browser-dynamic/testing'; - -declare const require: { - context(path: string, deep?: boolean, filter?: RegExp): { - (id: string): T; - keys(): string[]; - }; -}; - -// First, initialize the Angular testing environment. -getTestBed().initTestEnvironment( - BrowserDynamicTestingModule, - platformBrowserDynamicTesting(), -); - -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().forEach(context); diff --git a/section6/bank-app-ui/.browserslistrc b/section6/bank-app-ui/.browserslistrc deleted file mode 100644 index 4f9ac269..00000000 --- a/section6/bank-app-ui/.browserslistrc +++ /dev/null @@ -1,16 +0,0 @@ -# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. -# For additional information regarding the format and rule options, please see: -# https://github.com/browserslist/browserslist#queries - -# For the full list of supported browsers by the Angular framework, please see: -# https://angular.io/guide/browser-support - -# You can see what browsers were selected by your queries by running: -# npx browserslist - -last 1 Chrome version -last 1 Firefox version -last 2 Edge major versions -last 2 Safari major versions -last 2 iOS major versions -Firefox ESR diff --git a/section6/bank-app-ui/.vscode/extensions.json b/section6/bank-app-ui/.vscode/extensions.json deleted file mode 100644 index 77b37457..00000000 --- a/section6/bank-app-ui/.vscode/extensions.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 - "recommendations": ["angular.ng-template"] -} diff --git a/section6/bank-app-ui/.vscode/launch.json b/section6/bank-app-ui/.vscode/launch.json deleted file mode 100644 index 740e35a0..00000000 --- a/section6/bank-app-ui/.vscode/launch.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "ng serve", - "type": "pwa-chrome", - "request": "launch", - "preLaunchTask": "npm: start", - "url": "http://localhost:4200/" - }, - { - "name": "ng test", - "type": "chrome", - "request": "launch", - "preLaunchTask": "npm: test", - "url": "http://localhost:9876/debug.html" - } - ] -} diff --git a/section6/bank-app-ui/.vscode/tasks.json b/section6/bank-app-ui/.vscode/tasks.json deleted file mode 100644 index a298b5bd..00000000 --- a/section6/bank-app-ui/.vscode/tasks.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558 - "version": "2.0.0", - "tasks": [ - { - "type": "npm", - "script": "start", - "isBackground": true, - "problemMatcher": { - "owner": "typescript", - "pattern": "$tsc", - "background": { - "activeOnStart": true, - "beginsPattern": { - "regexp": "(.*?)" - }, - "endsPattern": { - "regexp": "bundle generation complete" - } - } - } - }, - { - "type": "npm", - "script": "test", - "isBackground": true, - "problemMatcher": { - "owner": "typescript", - "pattern": "$tsc", - "background": { - "activeOnStart": true, - "beginsPattern": { - "regexp": "(.*?)" - }, - "endsPattern": { - "regexp": "bundle generation complete" - } - } - } - } - ] -} diff --git a/section6/bank-app-ui/karma.conf.js b/section6/bank-app-ui/karma.conf.js deleted file mode 100644 index fc6f3890..00000000 --- a/section6/bank-app-ui/karma.conf.js +++ /dev/null @@ -1,44 +0,0 @@ -// Karma configuration file, see link for more information -// https://karma-runner.github.io/1.0/config/configuration-file.html - -module.exports = function (config) { - config.set({ - basePath: '', - frameworks: ['jasmine', '@angular-devkit/build-angular'], - plugins: [ - require('karma-jasmine'), - require('karma-chrome-launcher'), - require('karma-jasmine-html-reporter'), - require('karma-coverage'), - require('@angular-devkit/build-angular/plugins/karma') - ], - client: { - jasmine: { - // you can add configuration options for Jasmine here - // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html - // for example, you can disable the random execution with `random: false` - // or set a specific seed with `seed: 4321` - }, - clearContext: false // leave Jasmine Spec Runner output visible in browser - }, - jasmineHtmlReporter: { - suppressAll: true // removes the duplicated traces - }, - coverageReporter: { - dir: require('path').join(__dirname, './coverage/bank-app-ui'), - subdir: '.', - reporters: [ - { type: 'html' }, - { type: 'text-summary' } - ] - }, - reporters: ['progress', 'kjhtml'], - port: 9876, - colors: true, - logLevel: config.LOG_INFO, - autoWatch: true, - browsers: ['Chrome'], - singleRun: false, - restartOnFileChange: true - }); -}; diff --git a/section6/bank-app-ui/package-lock.json b/section6/bank-app-ui/package-lock.json deleted file mode 100644 index 695a202a..00000000 --- a/section6/bank-app-ui/package-lock.json +++ /dev/null @@ -1,20539 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "bank-app-ui", - "version": "0.0.0", - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "optionalDependencies": { - "esbuild": "0.14.49" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "@angular/localize": "^14.0.0", - "@angular/service-worker": "^14.0.0", - "karma": "^6.3.0", - "ng-packagr": "^14.0.0", - "protractor": "^7.0.0", - "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=4.6.2 <4.8" - }, - "peerDependenciesMeta": { - "@angular/localize": { - "optional": true - }, - "@angular/service-worker": { - "optional": true - }, - "karma": { - "optional": true - }, - "ng-packagr": { - "optional": true - }, - "protractor": { - "optional": true - }, - "tailwindcss": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "webpack": "^5.30.0", - "webpack-dev-server": "^4.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "dependencies": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^3.5.2" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/core/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - } - }, - "node_modules/@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - }, - "bin": { - "ng": "bin/ng.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/core": { - "optional": true - } - } - }, - "node_modules/@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - }, - "bin": { - "ng-xi18n": "bundles/src/bin/ng_xi18n.js", - "ngc": "bundles/src/bin/ngc.js", - "ngcc": "bundles/ngcc/main-ngcc.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/compiler": "14.1.3", - "typescript": ">=4.6.2 <4.8" - } - }, - "node_modules/@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.11.4" - } - }, - "node_modules/@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/animations": "14.1.3", - "@angular/common": "14.1.3", - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/animations": { - "optional": true - } - } - }, - "node_modules/@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/compiler": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3" - } - }, - "node_modules/@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "dependencies": { - "tslib": "^2.4.0" - }, - "peerDependencies": { - "@angular/core": "^14.0.0", - "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" - } - }, - "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==", - "hasInstallScript": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "node_modules/@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "typescript": ">=4.6.2 <4.8", - "webpack": "^5.54.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "dependencies": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "dependencies": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "installed-package-contents": "index.js" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "dependencies": { - "infer-owner": "^1.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "dependencies": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "node_modules/@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "node_modules/@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "18.7.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.8.tgz", - "integrity": "sha512-/YP55EMK2341JkODUb8DM9O0x1SIz2aBvyF33Uf1c76St3VpsMXEIW0nxuKkq/5cxnbz0RD9cfwNZHEAZQD3ag==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/agentkeepalive/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" - } - }, - "node_modules/babel-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true, - "engines": { - "node": "^4.5.0 || >= 5.9" - } - }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/twbs" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/bootstrap" - } - ], - "peerDependencies": { - "@popperjs/core": "^2.11.5" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/connect/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/connect/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "node_modules/copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "dependencies": { - "is-what": "^3.14.1" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, - "node_modules/copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - } - }, - "node_modules/critters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/critters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/critters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/critters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/critters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/critters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cross-spawn/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, - "node_modules/css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-blank-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-has-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "bin": { - "css-prefers-color-scheme": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "node_modules/date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "dependencies": { - "clone": "^1.0.2" - } - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "node_modules/di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "node_modules/dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "dependencies": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "dependencies": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "node_modules/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "node_modules/esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "node_modules/esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "node_modules/express/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/finalhandler/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==", - "engines": { - "node": ">=0.10.3" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "dependencies": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "node_modules/hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "node_modules/hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "dependencies": { - "ms": "^2.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "dependencies": { - "minimatch": "^5.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true, - "engines": { - "node": ">= 8.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/gjtorikian/" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true, - "engines": [ - "node >= 0.2.0" - ] - }, - "node_modules/karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "dependencies": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "bin": { - "karma": "bin/karma" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "dependencies": { - "which": "^1.2.1" - } - }, - "node_modules/karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/karma-coverage/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma-coverage/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "dependencies": { - "jasmine-core": "^4.1.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "karma": "^6.0.0" - } - }, - "node_modules/karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "peerDependencies": { - "jasmine-core": "^4.0.0", - "karma": "^6.0.0", - "karma-jasmine": "^5.0.0" - } - }, - "node_modules/karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "dependencies": { - "source-map-support": "^0.5.5" - } - }, - "node_modules/karma/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/karma/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/karma/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/karma/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/karma/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/karma/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "dependencies": { - "copy-anything": "^2.0.1", - "parse-node-version": "^1.0.1", - "tslib": "^2.3.0" - }, - "bin": { - "lessc": "bin/lessc" - }, - "engines": { - "node": ">=6" - }, - "optionalDependencies": { - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "source-map": "~0.6.0" - } - }, - "node_modules/less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "dependencies": { - "klona": "^2.0.4" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "less": "^3.5.0 || ^4.0.0", - "webpack": "^5.0.0" - } - }, - "node_modules/less/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/less/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/less/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "dependencies": { - "webpack-sources": "^3.0.0" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - }, - "webpack-sources": { - "optional": true - } - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.8" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "node_modules/needle/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/needle/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "!win32" - ], - "dependencies": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true, - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": "^12.22 || ^14.13 || >=16" - } - }, - "node_modules/node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/node-gyp/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "node_modules/npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "node_modules/npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "npm-packlist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "dependencies": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "dependencies": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/ora/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-retry/node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "dependencies": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - }, - "bin": { - "pacote": "lib/bin.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "dependencies": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0" - }, - "optionalDependencies": { - "nice-napi": "^1.0.2" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": ">=7.6.0" - }, - "peerDependencies": { - "postcss": "^8.4.6" - } - }, - "node_modules/postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" - } - }, - "node_modules/postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true, - "funding": [ - { - "type": "kofi", - "url": "https://ko-fi.com/mrcgrtz" - }, - { - "type": "liberapay", - "url": "https://liberapay.com/mrcgrtz" - } - ], - "engines": { - "node": "^12 || ^14 || >=16" - } - }, - "node_modules/postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8" - } - }, - "node_modules/postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "dependencies": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.3" - } - }, - "node_modules/postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true, - "engines": { - "node": ">=0.9" - } - }, - "node_modules/qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "dependencies": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "node_modules/regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "node_modules/regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "dependencies": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/resolve-url-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/resolve-url-loader/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "dependencies": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", - "sass": "^1.3.0", - "sass-embedded": "*", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - } - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/schema-utils/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/schema-utils/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/schema-utils/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "node_modules/selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "dependencies": { - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/send/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "node_modules/socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "dependencies": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.72.1" - } - }, - "node_modules/source-map-loader/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "dependencies": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "bin": { - "stylus": "bin/stylus" - }, - "engines": { - "node": "*" - } - }, - "node_modules/stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "stylus": ">=0.52.4", - "webpack": "^5.0.0" - } - }, - "node_modules/stylus/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/stylus/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/stylus/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/test-exclude/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/test-exclude/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "node_modules/typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==", - "engines": { - "node": ">=14" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "dependencies": { - "typed-assert": "^1.0.8" - }, - "engines": { - "node": ">= 12" - }, - "peerDependencies": { - "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", - "webpack": "^5.12.0" - }, - "peerDependenciesMeta": { - "html-webpack-plugin": { - "optional": true - } - } - }, - "node_modules/webpack/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/webpack/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "dependencies": { - "tslib": "^2.3.0" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "requires": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild": "0.14.49", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - } - } - }, - "@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "requires": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - } - }, - "@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "requires": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - } - }, - "@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true - }, - "@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "requires": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "dependencies": { - "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - } - } - } - }, - "@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, - "@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - } - }, - "@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true - }, - "@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "requires": {} - }, - "@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "requires": {} - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true - }, - "@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "requires": { - "tslib": "^2.4.0" - } - }, - "@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==" - }, - "@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "requires": {} - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "requires": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - } - }, - "@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "requires": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, - "@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true - }, - "@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "requires": { - "infer-owner": "^1.0.4" - } - }, - "@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "requires": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true - }, - "@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - } - }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "@types/node": { - "version": "18.7.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.8.tgz", - "integrity": "sha512-/YP55EMK2341JkODUb8DM9O0x1SIz2aBvyF33Uf1c76St3VpsMXEIW0nxuKkq/5cxnbz0RD9cfwNZHEAZQD3ag==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "requires": {} - }, - "adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "dependencies": { - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - } - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "requires": { - "ajv": "^8.0.0" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "requires": {} - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "requires": { - "semver": "^7.0.0" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "requires": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true - }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, - "colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "requires": { - "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "requires": { - "is-what": "^3.14.1" - } - }, - "copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "dependencies": { - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - } - }, - "css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "requires": {} - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true - }, - "cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "requires": { - "execa": "^5.0.0" - } - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true - }, - "define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - } - }, - "engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true - }, - "enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true - }, - "err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "optional": true, - "requires": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "dev": true, - "optional": true - }, - "esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "dev": true, - "optional": true - }, - "esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "dev": true, - "optional": true - }, - "esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "dev": true, - "optional": true - }, - "esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "dev": true, - "optional": true - }, - "esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "dev": true, - "optional": true - }, - "esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "dev": true, - "optional": true - }, - "esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "dev": true, - "optional": true - }, - "esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "dev": true, - "optional": true - }, - "esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "dev": true, - "optional": true - }, - "esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "dev": true, - "optional": true - }, - "esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "dev": true, - "optional": true - }, - "esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "dev": true, - "optional": true - }, - "esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true - }, - "esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "dev": true, - "optional": true - }, - "esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "dev": true, - "optional": true - }, - "esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "dev": true, - "optional": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true - }, - "eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true - }, - "font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==" - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true - }, - "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - } - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "requires": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "requires": { - "lru-cache": "^7.5.1" - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "dependencies": { - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "requires": {} - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true - }, - "ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "requires": { - "minimatch": "^5.0.1" - } - }, - "image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true - }, - "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true - }, - "inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true - }, - "is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true - }, - "jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true - }, - "karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "requires": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } - } - }, - "karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "requires": { - "which": "^1.2.1" - } - }, - "karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "requires": { - "jasmine-core": "^4.1.0" - } - }, - "karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "requires": {} - }, - "karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "requires": { - "source-map-support": "^0.5.5" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true - }, - "less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "requires": { - "copy-anything": "^2.0.1", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "parse-node-version": "^1.0.1", - "source-map": "~0.6.0", - "tslib": "^2.3.0" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "requires": { - "klona": "^2.0.4" - } - }, - "license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "requires": { - "webpack-sources": "^3.0.0" - } - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true - }, - "loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - } - }, - "lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true - }, - "magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.8" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "requires": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true - }, - "memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "requires": { - "fs-monkey": "^1.0.3" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "requires": { - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "requires": { - "encoding": "^0.1.13", - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "requires": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true - }, - "needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "optional": true, - "requires": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true - }, - "node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true - }, - "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true - }, - "npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "requires": { - "semver": "^7.1.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - } - }, - "npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "requires": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - } - }, - "npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "requires": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - } - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "requires": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - } - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true - }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "requires": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "dependencies": { - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true - } - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "requires": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "requires": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "requires": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0", - "nice-napi": "^1.0.2" - } - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "requires": {} - }, - "postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "requires": {} - }, - "postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - } - }, - "postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "requires": {} - }, - "postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "requires": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - } - }, - "postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "requires": {} - }, - "postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "requires": {} - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true - }, - "postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "requires": {} - }, - "postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "requires": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "requires": {} - }, - "postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true - }, - "proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "requires": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true - } - } - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true - }, - "qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "requires": { - "pify": "^2.3.0" - } - }, - "read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "requires": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "requires": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - } - }, - "regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "requires": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "requires": { - "tslib": "^2.1.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "requires": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - } - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "requires": { - "node-forge": "^1" - } - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true - }, - "socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - } - }, - "socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "requires": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - } - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "requires": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - } - }, - "socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "requires": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - } - }, - "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true - }, - "source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "requires": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - }, - "streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - }, - "stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "requires": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - } - }, - "terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true - }, - "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true - }, - "typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==" - }, - "ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "requires": { - "builtins": "^5.0.0" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "requires": {} - } - } - }, - "webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true - }, - "webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "requires": { - "typed-assert": "^1.0.8" - } - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "requires": {} - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, - "yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true - }, - "zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "requires": { - "tslib": "^2.3.0" - } - } - } -} diff --git a/section6/bank-app-ui/package.json b/section6/bank-app-ui/package.json deleted file mode 100644 index 8184d08c..00000000 --- a/section6/bank-app-ui/package.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "scripts": { - "ng": "ng", - "start": "ng serve", - "build": "ng build", - "watch": "ng build --watch --configuration development", - "test": "ng test" - }, - "private": true, - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } -} diff --git a/section6/bank-app-ui/src/app/app.component.spec.ts b/section6/bank-app-ui/src/app/app.component.spec.ts deleted file mode 100644 index c7c59ce9..00000000 --- a/section6/bank-app-ui/src/app/app.component.spec.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { RouterTestingModule } from '@angular/router/testing'; -import { AppComponent } from './app.component'; - -describe('AppComponent', () => { - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [ - RouterTestingModule - ], - declarations: [ - AppComponent - ], - }).compileComponents(); - }); - - it('should create the app', () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app).toBeTruthy(); - }); - - it(`should have as title 'bank-app-ui'`, () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app.title).toEqual('bank-app-ui'); - }); - - it('should render title', () => { - const fixture = TestBed.createComponent(AppComponent); - fixture.detectChanges(); - const compiled = fixture.nativeElement as HTMLElement; - expect(compiled.querySelector('.content span')?.textContent).toContain('bank-app-ui app is running!'); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/account/account.component.spec.ts b/section6/bank-app-ui/src/app/components/account/account.component.spec.ts deleted file mode 100644 index 140216da..00000000 --- a/section6/bank-app-ui/src/app/components/account/account.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AccountComponent } from './account.component'; - -describe('AccountComponent', () => { - let component: AccountComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ AccountComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AccountComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/balance/balance.component.spec.ts b/section6/bank-app-ui/src/app/components/balance/balance.component.spec.ts deleted file mode 100644 index 9b61420f..00000000 --- a/section6/bank-app-ui/src/app/components/balance/balance.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { BalanceComponent } from './balance.component'; - -describe('BalanceComponent', () => { - let component: BalanceComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ BalanceComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(BalanceComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/cards/cards.component.spec.ts b/section6/bank-app-ui/src/app/components/cards/cards.component.spec.ts deleted file mode 100644 index 6b67f12b..00000000 --- a/section6/bank-app-ui/src/app/components/cards/cards.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { CardsComponent } from './cards.component'; - -describe('CardsComponent', () => { - let component: CardsComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ CardsComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(CardsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/header/header.component.spec.ts b/section6/bank-app-ui/src/app/components/header/header.component.spec.ts deleted file mode 100644 index 2d0479d7..00000000 --- a/section6/bank-app-ui/src/app/components/header/header.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HeaderComponent } from './header.component'; - -describe('HeaderComponent', () => { - let component: HeaderComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ HeaderComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(HeaderComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/home/home.component.spec.ts b/section6/bank-app-ui/src/app/components/home/home.component.spec.ts deleted file mode 100644 index 5075be73..00000000 --- a/section6/bank-app-ui/src/app/components/home/home.component.spec.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HomeComponent } from './home.component'; - -describe('HomeComponent', () => { - let component: HomeComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ HomeComponent ] - }) - .compileComponents(); - - fixture = TestBed.createComponent(HomeComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/loans/loans.component.spec.ts b/section6/bank-app-ui/src/app/components/loans/loans.component.spec.ts deleted file mode 100644 index 20346117..00000000 --- a/section6/bank-app-ui/src/app/components/loans/loans.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoansComponent } from './loans.component'; - -describe('LoansComponent', () => { - let component: LoansComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoansComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoansComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/login/login.component.spec.ts b/section6/bank-app-ui/src/app/components/login/login.component.spec.ts deleted file mode 100644 index d6d85a84..00000000 --- a/section6/bank-app-ui/src/app/components/login/login.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoginComponent } from './login.component'; - -describe('LoginComponent', () => { - let component: LoginComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoginComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoginComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/logout/logout.component.spec.ts b/section6/bank-app-ui/src/app/components/logout/logout.component.spec.ts deleted file mode 100644 index c04dbe28..00000000 --- a/section6/bank-app-ui/src/app/components/logout/logout.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LogoutComponent } from './logout.component'; - -describe('LogoutComponent', () => { - let component: LogoutComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LogoutComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LogoutComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/components/notices/notices.component.spec.ts b/section6/bank-app-ui/src/app/components/notices/notices.component.spec.ts deleted file mode 100644 index acf52047..00000000 --- a/section6/bank-app-ui/src/app/components/notices/notices.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { NoticesComponent } from './notices.component'; - -describe('NoticesComponent', () => { - let component: NoticesComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ NoticesComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(NoticesComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section6/bank-app-ui/src/app/routeguards/auth.routeguard.ts deleted file mode 100644 index 25678ed4..00000000 --- a/section6/bank-app-ui/src/app/routeguards/auth.routeguard.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot,Router } from '@angular/router'; -import { User } from '../model/user.model'; - -@Injectable() -export class AuthActivateRouteGuard implements CanActivate { - user = new User(); - - constructor(private router: Router){ - - } - - canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ - if(sessionStorage.getItem('userdetails')){ - this.user = JSON.parse(sessionStorage.getItem('userdetails')!); - } - if(!this.user){ - this.router.navigate(['login']); - } - return this.user?true:false; - } - -} \ No newline at end of file diff --git a/section6/bank-app-ui/src/app/services/login/login.service.spec.ts b/section6/bank-app-ui/src/app/services/login/login.service.spec.ts deleted file mode 100644 index 299b0d50..00000000 --- a/section6/bank-app-ui/src/app/services/login/login.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { LoginService } from './login.service'; - -describe('LoginService', () => { - let service: LoginService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(LoginService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/section6/bank-app-ui/src/environments/environment.prod.ts b/section6/bank-app-ui/src/environments/environment.prod.ts deleted file mode 100644 index 3612073b..00000000 --- a/section6/bank-app-ui/src/environments/environment.prod.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const environment = { - production: true -}; diff --git a/section6/bank-app-ui/src/environments/environment.ts b/section6/bank-app-ui/src/environments/environment.ts deleted file mode 100644 index 2527feff..00000000 --- a/section6/bank-app-ui/src/environments/environment.ts +++ /dev/null @@ -1,17 +0,0 @@ -// This file can be replaced during build by using the `fileReplacements` array. -// `ng build` replaces `environment.ts` with `environment.prod.ts`. -// The list of file replacements can be found in `angular.json`. - -export const environment = { - production: false, - rooturl : 'http://localhost:8080' -}; - -/* - * For easier debugging in development mode, you can import the following file - * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. - * - * This import should be commented out in production mode because it will have a negative impact - * on performance if an error is thrown. - */ -// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/section6/bank-app-ui/src/polyfills.ts b/section6/bank-app-ui/src/polyfills.ts deleted file mode 100644 index 429bb9ef..00000000 --- a/section6/bank-app-ui/src/polyfills.ts +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This file includes polyfills needed by Angular and is loaded before the app. - * You can add your own extra polyfills to this file. - * - * This file is divided into 2 sections: - * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. - * 2. Application imports. Files imported after ZoneJS that should be loaded before your main - * file. - * - * The current setup is for so-called "evergreen" browsers; the last versions of browsers that - * automatically update themselves. This includes recent versions of Safari, Chrome (including - * Opera), Edge on the desktop, and iOS and Chrome on mobile. - * - * Learn more in https://angular.io/guide/browser-support - */ - -/*************************************************************************************************** - * BROWSER POLYFILLS - */ - -/** - * By default, zone.js will patch all possible macroTask and DomEvents - * user can disable parts of macroTask/DomEvents patch by setting following flags - * because those flags need to be set before `zone.js` being loaded, and webpack - * will put import in the top of bundle, so user need to create a separate file - * in this directory (for example: zone-flags.ts), and put the following flags - * into that file, and then add the following code before importing zone.js. - * import './zone-flags'; - * - * The flags allowed in zone-flags.ts are listed here. - * - * The following flags will work for all browsers. - * - * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame - * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick - * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames - * - * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js - * with the following flag, it will bypass `zone.js` patch for IE/Edge - * - * (window as any).__Zone_enable_cross_context_check = true; - * - */ - -/*************************************************************************************************** - * Zone JS is required by default for Angular itself. - */ -import 'zone.js'; // Included with Angular CLI. - - -/*************************************************************************************************** - * APPLICATION IMPORTS - */ diff --git a/section6/bank-app-ui/src/test.ts b/section6/bank-app-ui/src/test.ts deleted file mode 100644 index c04c8760..00000000 --- a/section6/bank-app-ui/src/test.ts +++ /dev/null @@ -1,26 +0,0 @@ -// This file is required by karma.conf.js and loads recursively all the .spec and framework files - -import 'zone.js/testing'; -import { getTestBed } from '@angular/core/testing'; -import { - BrowserDynamicTestingModule, - platformBrowserDynamicTesting -} from '@angular/platform-browser-dynamic/testing'; - -declare const require: { - context(path: string, deep?: boolean, filter?: RegExp): { - (id: string): T; - keys(): string[]; - }; -}; - -// First, initialize the Angular testing environment. -getTestBed().initTestEnvironment( - BrowserDynamicTestingModule, - platformBrowserDynamicTesting(), -); - -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().forEach(context); diff --git a/section6/springsecsection6/.mvn/wrapper/maven-wrapper.jar b/section6/springsecsection6/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section6/springsecsection6/.mvn/wrapper/maven-wrapper.properties b/section6/springsecsection6/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section6/springsecsection6/.mvn/wrapper/maven-wrapper.properties +++ b/section6/springsecsection6/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section6/springsecsection6/mvnw b/section6/springsecsection6/mvnw index 8a8fb228..ba9212a0 100755 --- a/section6/springsecsection6/mvnw +++ b/section6/springsecsection6/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section6/springsecsection6/mvnw.cmd b/section6/springsecsection6/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section6/springsecsection6/mvnw.cmd +++ b/section6/springsecsection6/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section6/springsecsection6/pom.xml b/section6/springsecsection6/pom.xml index aa500d3a..0ca4753e 100644 --- a/section6/springsecsection6/pom.xml +++ b/section6/springsecsection6/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,21 +17,17 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - org.springframework.ldap - spring-ldap-core + org.springframework.boot + spring-boot-starter-security - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -42,10 +38,6 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools @@ -53,13 +45,13 @@ true - org.springframework.boot - spring-boot-starter-test - test + org.projectlombok + lombok + true - org.springframework.security - spring-security-test + org.springframework.boot + spring-boot-starter-test test diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section6/springsecsection6/src/main/java/com/eazybytes/EazyBankBackendApplication.java index e7e047e9..0308e0f4 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -6,8 +6,8 @@ @SpringBootApplication public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java b/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..415dfb16 --- /dev/null +++ b/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java @@ -0,0 +1,40 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("prod") +@RequiredArgsConstructor +public class EazyBankProdUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + // Fetch Age details and perform validation to check if age >18 + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + }else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..c7933242 --- /dev/null +++ b/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,30 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = List.of(new SimpleGrantedAuthority(customer.getRole())); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java index a0ee1688..96185c80 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -1,51 +1,35 @@ package com.eazybytes.config; -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; import org.springframework.security.authentication.AuthenticationProvider; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.List; - @Component +@Profile("!prod") +@RequiredArgsConstructor public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; @Override public Authentication authenticate(Authentication authentication) throws AuthenticationException { String username = authentication.getName(); String pwd = authentication.getCredentials().toString(); - List customer = customerRepository.findByEmail(username); - if (customer.size() > 0) { - if (passwordEncoder.matches(pwd, customer.get(0).getPwd())) { - List authorities = new ArrayList<>(); - authorities.add(new SimpleGrantedAuthority(customer.get(0).getRole())); - return new UsernamePasswordAuthenticationToken(username, pwd, authorities); - } else { - throw new BadCredentialsException("Invalid password!"); - } - }else { - throw new BadCredentialsException("No user registered with this details!"); - } + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); } @Override public boolean supports(Class authentication) { return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); } - } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index 57b526b5..ed2f4991 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -1,59 +1,45 @@ package com.eazybytes.config; -import com.eazybytes.filter.CsrfCookieFilter; -import jakarta.servlet.http.HttpServletRequest; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; -import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; -import org.springframework.security.web.csrf.CookieCsrfTokenRepository; -import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; -import org.springframework.web.cors.CorsConfiguration; -import org.springframework.web.cors.CorsConfigurationSource; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; -import java.util.Collections; +import static org.springframework.security.config.Customizer.withDefaults; @Configuration +@Profile("!prod") public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - CsrfTokenRequestAttributeHandler requestHandler = new CsrfTokenRequestAttributeHandler(); - requestHandler.setCsrfRequestAttributeName("_csrf"); - - http.securityContext((context) -> context - .requireExplicitSave(false)) - .sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) - .cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() { - @Override - public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { - CorsConfiguration config = new CorsConfiguration(); - config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); - config.setAllowedMethods(Collections.singletonList("*")); - config.setAllowCredentials(true); - config.setAllowedHeaders(Collections.singletonList("*")); - config.setMaxAge(3600L); - return config; - } - })).csrf((csrf) -> csrf.csrfTokenRequestHandler(requestHandler).ignoringRequestMatchers("/contact", "/register") - .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) - .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) - .authorizeHttpRequests((requests)->requests - .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards", "/user").authenticated() - .requestMatchers("/notices", "/contact", "/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + http.csrf(csrfConfig -> csrfConfig.disable()) + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(withDefaults()); return http.build(); } @Bean public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..489ba5bf --- /dev/null +++ b/section6/springsecsection6/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,44 @@ +package com.eazybytes.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + http.csrf(csrfConfig -> csrfConfig.disable()) + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(withDefaults()); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + +} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section6/springsecsection6/src/main/java/com/eazybytes/constants/ApplicationConstants.java deleted file mode 100644 index 7c1aa7ef..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/constants/ApplicationConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public class ApplicationConstants { - - public static final String ERROR_MSG = "An unknown error occured"; - public static final String SUCCESS_MSG = "Request Successfully processed"; - -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/AccountController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/AccountController.java index f4f4025b..6c53a3be 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/controller/AccountController.java @@ -1,26 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.Accounts; -import com.eazybytes.repository.AccountsRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class AccountController { - @Autowired - private AccountsRepository accountsRepository; - @GetMapping("/myAccount") - public Accounts getAccountDetails(@RequestParam int id) { - Accounts accounts = accountsRepository.findByCustomerId(id); - if (accounts != null ) { - return accounts; - }else { - return null; - } + public String getAccountDetails () { + return "Here are the account details from the DB"; } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/BalanceController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/BalanceController.java index 71ef84ea..81f0f5ff 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/controller/BalanceController.java @@ -1,28 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.AccountTransactions; -import com.eazybytes.repository.AccountTransactionsRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.List; - @RestController public class BalanceController { - @Autowired - private AccountTransactionsRepository accountTransactionsRepository; - @GetMapping("/myBalance") - public List getBalanceDetails(@RequestParam int id) { - List accountTransactions = accountTransactionsRepository. - findByCustomerIdOrderByTransactionDtDesc(id); - if (accountTransactions != null ) { - return accountTransactions; - }else { - return null; - } + public String getBalanceDetails () { + return "Here are the balance details from the DB"; } + } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/CardsController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/CardsController.java index 5aab6d8c..3931047e 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/controller/CardsController.java @@ -1,28 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.Cards; -import com.eazybytes.repository.CardsRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.List; - @RestController public class CardsController { - @Autowired - private CardsRepository cardsRepository; - @GetMapping("/myCards") - public List getCardDetails(@RequestParam int id) { - List cards = cardsRepository.findByCustomerId(id); - if (cards != null ) { - return cards; - }else { - return null; - } + public String getCardsDetails () { + return "Here are the card details from the DB"; } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/ContactController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/ContactController.java index 32e8899d..f7db1aa6 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/controller/ContactController.java @@ -1,32 +1,14 @@ package com.eazybytes.controller; -import java.sql.Date; -import java.util.Random; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Contact; -import com.eazybytes.repository.ContactRepository; - @RestController public class ContactController { - @Autowired - private ContactRepository contactRepository; - - @PostMapping("/contact") - public Contact saveContactInquiryDetails(@RequestBody Contact contact) { - contact.setContactId(getServiceReqNumber()); - contact.setCreateDt(new Date(System.currentTimeMillis())); - return contactRepository.save(contact); + @GetMapping("/contact") + public String saveContactInquiryDetails () { + return "Inquiry details are saved to the DB"; } - public String getServiceReqNumber() { - Random random = new Random(); - int ranNum = random.nextInt(999999999 - 9999) + 9999; - return "SR"+ranNum; - } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/LoansController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/LoansController.java index 6405685f..4262e918 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/controller/LoansController.java @@ -1,28 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.Loans; -import com.eazybytes.repository.LoanRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.List; - @RestController public class LoansController { - @Autowired - private LoanRepository loanRepository; - @GetMapping("/myLoans") - public List getLoanDetails(@RequestParam int id) { - List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(id); - if (loans != null ) { - return loans; - }else { - return null; - } + public String getLoansDetails () { + return "Here are the loans details from the DB"; } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/LoginController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/LoginController.java deleted file mode 100644 index ebe77a20..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/controller/LoginController.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.eazybytes.controller; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.core.Authentication; -import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.sql.Date; -import java.util.List; - -@RestController -public class LoginController { - - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; - - @PostMapping("/register") - public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; - try { - String hashPwd = passwordEncoder.encode(customer.getPwd()); - customer.setPwd(hashPwd); - customer.setCreateDt(String.valueOf(new Date(System.currentTimeMillis()))); - savedCustomer = customerRepository.save(customer); - if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); - } - } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); - } - return response; - } - - @RequestMapping("/user") - public Customer getUserDetailsAfterLogin(Authentication authentication) { - List customers = customerRepository.findByEmail(authentication.getName()); - if (customers.size() > 0) { - return customers.get(0); - } else { - return null; - } - - } - -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/NoticesController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/NoticesController.java index 9943001c..51c9dd3f 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/controller/NoticesController.java @@ -1,33 +1,14 @@ package com.eazybytes.controller; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.CacheControl; -import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Notice; -import com.eazybytes.repository.NoticeRepository; - @RestController public class NoticesController { - @Autowired - private NoticeRepository noticeRepository; - @GetMapping("/notices") - public ResponseEntity> getNotices() { - List notices = noticeRepository.findAllActiveNotices(); - if (notices != null ) { - return ResponseEntity.ok() - .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) - .body(notices); - }else { - return null; - } + public String getNotices () { + return "Here are the notices details from the DB"; } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/controller/UserController.java b/section6/springsecsection6/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..e11933cc --- /dev/null +++ b/section6/springsecsection6/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,41 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; + + @PostMapping("/register") + public ResponseEntity registerUser(@RequestBody Customer customer) { + try { + String hashPwd = passwordEncoder.encode(customer.getPwd()); + customer.setPwd(hashPwd); + Customer savedCustomer = customerRepository.save(customer); + + if(savedCustomer.getId()>0) { + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); + } + } catch (Exception ex) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); + } + + } + +} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/model/AccountTransactions.java b/section6/springsecsection6/src/main/java/com/eazybytes/model/AccountTransactions.java deleted file mode 100644 index 8f40fb16..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/model/AccountTransactions.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; - -import java.sql.Date; - -@Entity -@Table(name="account_transactions") -public class AccountTransactions { - - @Id - @Column(name = "transaction_id") - private String transactionId; - - @Column(name="account_number") - private long accountNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="transaction_dt") - private Date transactionDt; - - @Column(name = "transaction_summary") - private String transactionSummary; - - @Column(name="transaction_type") - private String transactionType; - - @Column(name = "transaction_amt") - private int transactionAmt; - - @Column(name = "closing_balance") - private int closingBalance; - - @Column(name = "create_dt") - private String createDt; - - public String getTransactionId() { - return transactionId; - } - - public void setTransactionId(String transactionId) { - this.transactionId = transactionId; - } - - public long getAccountNumber() { - return accountNumber; - } - - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getTransactionDt() { - return transactionDt; - } - - public void setTransactionDt(Date transactionDt) { - this.transactionDt = transactionDt; - } - - public String getTransactionSummary() { - return transactionSummary; - } - - public void setTransactionSummary(String transactionSummary) { - this.transactionSummary = transactionSummary; - } - - public String getTransactionType() { - return transactionType; - } - - public void setTransactionType(String transactionType) { - this.transactionType = transactionType; - } - - public int getTransactionAmt() { - return transactionAmt; - } - - public void setTransactionAmt(int transactionAmt) { - this.transactionAmt = transactionAmt; - } - - public int getClosingBalance() { - return closingBalance; - } - - public void setClosingBalance(int closingBalance) { - this.closingBalance = closingBalance; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/model/Accounts.java b/section6/springsecsection6/src/main/java/com/eazybytes/model/Accounts.java deleted file mode 100644 index dbb62886..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/model/Accounts.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.eazybytes.model; - - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; - -@Entity -public class Accounts { - - @Column(name = "customer_id") - private int customerId; - - @Id - @Column(name="account_number") - private long accountNumber; - - @Column(name="account_type") - private String accountType; - - @Column(name = "branch_address") - private String branchAddress; - - @Column(name = "create_dt") - private String createDt; - - - public int getCustomerId() { - return customerId; - } - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - public long getAccountNumber() { - return accountNumber; - } - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - public String getAccountType() { - return accountType; - } - public void setAccountType(String accountType) { - this.accountType = accountType; - } - public String getBranchAddress() { - return branchAddress; - } - public void setBranchAddress(String branchAddress) { - this.branchAddress = branchAddress; - } - public String getCreateDt() { - return createDt; - } - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/model/Cards.java b/section6/springsecsection6/src/main/java/com/eazybytes/model/Cards.java deleted file mode 100644 index 03a425d5..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/model/Cards.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "cards") -public class Cards { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "card_id") - private int cardId; - - @Column(name = "customer_id") - private int customerId; - - @Column(name = "card_number") - private String cardNumber; - - @Column(name = "card_type") - private String cardType; - - @Column(name = "total_limit") - private int totalLimit; - - @Column(name = "amount_used") - private int amountUsed; - - @Column(name = "available_amount") - private int availableAmount; - - @Column(name = "create_dt") - private Date createDt; - - public int getCardId() { - return cardId; - } - - public void setCardId(int cardId) { - this.cardId = cardId; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public String getCardNumber() { - return cardNumber; - } - - public void setCardNumber(String cardNumber) { - this.cardNumber = cardNumber; - } - - public String getCardType() { - return cardType; - } - - public void setCardType(String cardType) { - this.cardType = cardType; - } - - public int getTotalLimit() { - return totalLimit; - } - - public void setTotalLimit(int totalLimit) { - this.totalLimit = totalLimit; - } - - public int getAmountUsed() { - return amountUsed; - } - - public void setAmountUsed(int amountUsed) { - this.amountUsed = amountUsed; - } - - public int getAvailableAmount() { - return availableAmount; - } - - public void setAvailableAmount(int availableAmount) { - this.availableAmount = availableAmount; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/model/Contact.java b/section6/springsecsection6/src/main/java/com/eazybytes/model/Contact.java deleted file mode 100644 index fa5c7ff5..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/model/Contact.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; - -import java.sql.Date; - -@Entity -@Table(name = "contact_messages") -public class Contact { - - @Id - @Column(name = "contact_id") - private String contactId; - - @Column(name = "contact_name") - private String contactName; - - @Column(name = "contact_email") - private String contactEmail; - - private String subject; - - private String message; - - @Column(name = "create_dt") - private Date createDt; - - public String getContactId() { - return contactId; - } - - public void setContactId(String contactId) { - this.contactId = contactId; - } - - public String getContactName() { - return contactName; - } - - public void setContactName(String contactName) { - this.contactName = contactName; - } - - public String getContactEmail() { - return contactEmail; - } - - public void setContactEmail(String contactEmail) { - this.contactEmail = contactEmail; - } - - public String getSubject() { - return subject; - } - - public void setSubject(String subject) { - this.subject = subject; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/model/Customer.java b/section6/springsecsection6/src/main/java/com/eazybytes/model/Customer.java index 27908045..e73b2b52 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/model/Customer.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/model/Customer.java @@ -1,86 +1,21 @@ package com.eazybytes.model; -import com.fasterxml.jackson.annotation.JsonProperty; import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; @Entity +@Table(name = "customer") +@Getter @Setter public class Customer { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "customer_id") - private int id; - - private String name; - + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; private String email; - - @Column(name = "mobile_number") - private String mobileNumber; - - @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private String pwd; - + @Column(name = "role") private String role; - @Column(name = "create_dt") - private String createDt; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getMobileNumber() { - return mobileNumber; - } - - public void setMobileNumber(String mobileNumber) { - this.mobileNumber = mobileNumber; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } - - public String getCreateDt() { - return createDt; - } - public void setCreateDt(String createDt) { - this.createDt = createDt; - } } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/model/Loans.java b/section6/springsecsection6/src/main/java/com/eazybytes/model/Loans.java deleted file mode 100644 index 0622a955..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/model/Loans.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name="loans") -public class Loans { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "loan_number") - private int loanNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="start_dt") - private Date startDt; - - @Column(name = "loan_type") - private String loanType; - - @Column(name = "total_loan") - private int totalLoan; - - @Column(name = "amount_paid") - private int amountPaid; - - @Column(name = "outstanding_amount") - private int outstandingAmount; - - @Column(name = "create_dt") - private String createDt; - - public int getLoanNumber() { - return loanNumber; - } - - public void setLoanNumber(int loanNumber) { - this.loanNumber = loanNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getStartDt() { - return startDt; - } - - public void setStartDt(Date startDt) { - this.startDt = startDt; - } - - public String getLoanType() { - return loanType; - } - - public void setLoanType(String loanType) { - this.loanType = loanType; - } - - public int getTotalLoan() { - return totalLoan; - } - - public void setTotalLoan(int totalLoan) { - this.totalLoan = totalLoan; - } - - public int getAmountPaid() { - return amountPaid; - } - - public void setAmountPaid(int amountPaid) { - this.amountPaid = amountPaid; - } - - public int getOutstandingAmount() { - return outstandingAmount; - } - - public void setOutstandingAmount(int outstandingAmount) { - this.outstandingAmount = outstandingAmount; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/model/Notice.java b/section6/springsecsection6/src/main/java/com/eazybytes/model/Notice.java deleted file mode 100644 index 33e08468..00000000 --- a/section6/springsecsection6/src/main/java/com/eazybytes/model/Notice.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "notice_details") -public class Notice { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "notice_id") - private int noticeId; - - @Column(name = "notice_summary") - private String noticeSummary; - - @Column(name = "notice_details") - private String noticeDetails; - - @Column(name = "notic_beg_dt") - private Date noticBegDt; - - @Column(name = "notic_end_dt") - private Date noticEndDt; - - @Column(name = "create_dt") - private Date createDt; - - @Column(name = "update_dt") - private Date updateDt; - - public int getNoticeId() { - return noticeId; - } - - public void setNoticeId(int noticeId) { - this.noticeId = noticeId; - } - - public String getNoticeSummary() { - return noticeSummary; - } - - public void setNoticeSummary(String noticeSummary) { - this.noticeSummary = noticeSummary; - } - - public String getNoticeDetails() { - return noticeDetails; - } - - public void setNoticeDetails(String noticeDetails) { - this.noticeDetails = noticeDetails; - } - - public Date getNoticBegDt() { - return noticBegDt; - } - - public void setNoticBegDt(Date noticBegDt) { - this.noticBegDt = noticBegDt; - } - - public Date getNoticEndDt() { - return noticEndDt; - } - - public void setNoticEndDt(Date noticEndDt) { - this.noticEndDt = noticEndDt; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - - public Date getUpdateDt() { - return updateDt; - } - - public void setUpdateDt(Date updateDt) { - this.updateDt = updateDt; - } -} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section6/springsecsection6/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section6/springsecsection6/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section6/springsecsection6/src/main/resources/application.properties b/section6/springsecsection6/src/main/resources/application.properties index 78fdb8f8..93e44d87 100644 --- a/section6/springsecsection6/src/main/resources/application.properties +++ b/section6/springsecsection6/src/main/resources/application.properties @@ -1,5 +1,13 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true \ No newline at end of file +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section6/springsecsection6/src/main/resources/application_prod.properties b/section6/springsecsection6/src/main/resources/application_prod.properties new file mode 100644 index 00000000..03fdc05e --- /dev/null +++ b/section6/springsecsection6/src/main/resources/application_prod.properties @@ -0,0 +1,11 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section6/springsecsection6/src/main/resources/sql/scripts.sql b/section6/springsecsection6/src/main/resources/sql/scripts.sql index 9ed6537a..3ac6975d 100644 --- a/section6/springsecsection6/src/main/resources/sql/scripts.sql +++ b/section6/springsecsection6/src/main/resources/sql/scripts.sql @@ -1,167 +1,20 @@ -create database eazybank; +create table users(username varchar(50) not null primary key,password varchar(500) not null,enabled boolean not null); +create table authorities (username varchar(50) not null,authority varchar(50) not null,constraint fk_authorities_users foreign key(username) references users(username)); +create unique index ix_auth_username on authorities (username,authority); -use eazybank; +INSERT IGNORE INTO `users` VALUES ('user', '{noop}EazyBytes@12345', '1'); +INSERT IGNORE INTO `authorities` VALUES ('user', 'read'); -drop table `users`; -drop table `authorities`; -drop table `customer`; +INSERT IGNORE INTO `users` VALUES ('admin', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', '1'); +INSERT IGNORE INTO `authorities` VALUES ('admin', 'admin'); CREATE TABLE `customer` ( - `customer_id` int NOT NULL AUTO_INCREMENT, - `name` varchar(100) NOT NULL, - `email` varchar(100) NOT NULL, - `mobile_number` varchar(20) NOT NULL, - `pwd` varchar(500) NOT NULL, - `role` varchar(100) NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`customer_id`) + `id` int NOT NULL AUTO_INCREMENT, + `email` varchar(45) NOT NULL, + `pwd` varchar(200) NOT NULL, + `role` varchar(45) NOT NULL, + PRIMARY KEY (`id`) ); -INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) - VALUES ('Happy','happy@example.com','9876548337', '$2y$12$oRRbkNfwuR8ug4MlzH5FOeui.//1mkd.RsOAJMbykTSupVy.x/vb2', 'admin',CURDATE()); - -CREATE TABLE `accounts` ( - `customer_id` int NOT NULL, - `account_number` int NOT NULL, - `account_type` varchar(100) NOT NULL, - `branch_address` varchar(200) NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`account_number`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - -INSERT INTO `accounts` (`customer_id`, `account_number`, `account_type`, `branch_address`, `create_dt`) - VALUES (1, 1865764534, 'Savings', '123 Main Street, New York', CURDATE()); - -CREATE TABLE `account_transactions` ( - `transaction_id` varchar(200) NOT NULL, - `account_number` int NOT NULL, - `customer_id` int NOT NULL, - `transaction_dt` date NOT NULL, - `transaction_summary` varchar(200) NOT NULL, - `transaction_type` varchar(100) NOT NULL, - `transaction_amt` int NOT NULL, - `closing_balance` int NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`transaction_id`), - KEY `customer_id` (`customer_id`), - KEY `account_number` (`account_number`), - CONSTRAINT `accounts_ibfk_2` FOREIGN KEY (`account_number`) REFERENCES `accounts` (`account_number`) ON DELETE CASCADE, - CONSTRAINT `acct_user_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - - - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 7 DAY), 'Coffee Shop', 'Withdrawal', 30,34500,DATE_SUB(CURDATE(), INTERVAL 7 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 6 DAY), 'Uber', 'Withdrawal', 100,34400,DATE_SUB(CURDATE(), INTERVAL 6 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 5 DAY), 'Self Deposit', 'Deposit', 500,34900,DATE_SUB(CURDATE(), INTERVAL 5 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 4 DAY), 'Ebay', 'Withdrawal', 600,34300,DATE_SUB(CURDATE(), INTERVAL 4 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 2 DAY), 'OnlineTransfer', 'Deposit', 700,35000,DATE_SUB(CURDATE(), INTERVAL 2 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 1 DAY), 'Amazon.com', 'Withdrawal', 100,34900,DATE_SUB(CURDATE(), INTERVAL 1 DAY)); - - -CREATE TABLE `loans` ( - `loan_number` int NOT NULL AUTO_INCREMENT, - `customer_id` int NOT NULL, - `start_dt` date NOT NULL, - `loan_type` varchar(100) NOT NULL, - `total_loan` int NOT NULL, - `amount_paid` int NOT NULL, - `outstanding_amount` int NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`loan_number`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `loan_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2020-10-13', 'Home', 200000, 50000, 150000, '2020-10-13'); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2020-06-06', 'Vehicle', 40000, 10000, 30000, '2020-06-06'); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2018-02-14', 'Home', 50000, 10000, 40000, '2018-02-14'); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2018-02-14', 'Personal', 10000, 3500, 6500, '2018-02-14'); - -CREATE TABLE `cards` ( - `card_id` int NOT NULL AUTO_INCREMENT, - `card_number` varchar(100) NOT NULL, - `customer_id` int NOT NULL, - `card_type` varchar(100) NOT NULL, - `total_limit` int NOT NULL, - `amount_used` int NOT NULL, - `available_amount` int NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`card_id`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `card_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - -INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) - VALUES ('4565XXXX4656', 1, 'Credit', 10000, 500, 9500, CURDATE()); - -INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) - VALUES ('3455XXXX8673', 1, 'Credit', 7500, 600, 6900, CURDATE()); - -INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) - VALUES ('2359XXXX9346', 1, 'Credit', 20000, 4000, 16000, CURDATE()); - -CREATE TABLE `notice_details` ( - `notice_id` int NOT NULL AUTO_INCREMENT, - `notice_summary` varchar(200) NOT NULL, - `notice_details` varchar(500) NOT NULL, - `notic_beg_dt` date NOT NULL, - `notic_end_dt` date DEFAULT NULL, - `create_dt` date DEFAULT NULL, - `update_dt` date DEFAULT NULL, - PRIMARY KEY (`notice_id`) -); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Home Loan Interest rates reduced', 'Home loan interest rates are reduced as per the goverment guidelines. The updated rates will be effective immediately', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Net Banking Offers', 'Customers who will opt for Internet banking while opening a saving account will get a $50 amazon voucher', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Mobile App Downtime', 'The mobile application of the EazyBank will be down from 2AM-5AM on 12/05/2020 due to maintenance activities', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('E Auction notice', 'There will be a e-auction on 12/08/2020 on the Bank website for all the stubborn arrears.Interested parties can participate in the e-auction', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Launch of Millennia Cards', 'Millennia Credit Cards are launched for the premium customers of EazyBank. With these cards, you will get 5% cashback for each purchase', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('COVID-19 Insurance', 'EazyBank launched an insurance policy which will cover COVID-19 expenses. Please reach out to the branch for more details', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -CREATE TABLE `contact_messages` ( - `contact_id` varchar(50) NOT NULL, - `contact_name` varchar(50) NOT NULL, - `contact_email` varchar(100) NOT NULL, - `subject` varchar(500) NOT NULL, - `message` varchar(2000) NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`contact_id`) -); +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('happy@example.com', '{noop}EazyBytes@12345', 'read'); +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('admin@example.com', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin'); \ No newline at end of file diff --git a/section_12/springsecOAUTH2GitHub/.gitignore b/section7/eazyschool-end/.gitignore similarity index 100% rename from section_12/springsecOAUTH2GitHub/.gitignore rename to section7/eazyschool-end/.gitignore diff --git a/section7/eazyschool-end/.mvn/wrapper/MavenWrapperDownloader.java b/section7/eazyschool-end/.mvn/wrapper/MavenWrapperDownloader.java new file mode 100644 index 00000000..e76d1f32 --- /dev/null +++ b/section7/eazyschool-end/.mvn/wrapper/MavenWrapperDownloader.java @@ -0,0 +1,117 @@ +/* + * Copyright 2007-present the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import java.net.*; +import java.io.*; +import java.nio.channels.*; +import java.util.Properties; + +public class MavenWrapperDownloader { + + private static final String WRAPPER_VERSION = "0.5.6"; + /** + * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided. + */ + private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/" + + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar"; + + /** + * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to + * use instead of the default one. + */ + private static final String MAVEN_WRAPPER_PROPERTIES_PATH = + ".mvn/wrapper/maven-wrapper.properties"; + + /** + * Path where the maven-wrapper.jar will be saved to. + */ + private static final String MAVEN_WRAPPER_JAR_PATH = + ".mvn/wrapper/maven-wrapper.jar"; + + /** + * Name of the property which should be used to override the default download url for the wrapper. + */ + private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl"; + + public static void main(String args[]) { + System.out.println("- Downloader started"); + File baseDirectory = new File(args[0]); + System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath()); + + // If the maven-wrapper.properties exists, read it and check if it contains a custom + // wrapperUrl parameter. + File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH); + String url = DEFAULT_DOWNLOAD_URL; + if(mavenWrapperPropertyFile.exists()) { + FileInputStream mavenWrapperPropertyFileInputStream = null; + try { + mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile); + Properties mavenWrapperProperties = new Properties(); + mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream); + url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url); + } catch (IOException e) { + System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'"); + } finally { + try { + if(mavenWrapperPropertyFileInputStream != null) { + mavenWrapperPropertyFileInputStream.close(); + } + } catch (IOException e) { + // Ignore ... + } + } + } + System.out.println("- Downloading from: " + url); + + File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH); + if(!outputFile.getParentFile().exists()) { + if(!outputFile.getParentFile().mkdirs()) { + System.out.println( + "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'"); + } + } + System.out.println("- Downloading to: " + outputFile.getAbsolutePath()); + try { + downloadFileFromURL(url, outputFile); + System.out.println("Done"); + System.exit(0); + } catch (Throwable e) { + System.out.println("- Error downloading"); + e.printStackTrace(); + System.exit(1); + } + } + + private static void downloadFileFromURL(String urlString, File destination) throws Exception { + if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) { + String username = System.getenv("MVNW_USERNAME"); + char[] password = System.getenv("MVNW_PASSWORD").toCharArray(); + Authenticator.setDefault(new Authenticator() { + @Override + protected PasswordAuthentication getPasswordAuthentication() { + return new PasswordAuthentication(username, password); + } + }); + } + URL website = new URL(urlString); + ReadableByteChannel rbc; + rbc = Channels.newChannel(website.openStream()); + FileOutputStream fos = new FileOutputStream(destination); + fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE); + fos.close(); + rbc.close(); + } + +} diff --git a/section7/eazyschool-end/.mvn/wrapper/maven-wrapper.jar b/section7/eazyschool-end/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..2cc7d4a55c0cd0092912bf49ae38b3a9e3fd0054 GIT binary patch literal 50710 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 EfAhh=DF6Tf literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/.mvn/wrapper/maven-wrapper.properties b/section7/eazyschool-end/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..a9f1ef87 --- /dev/null +++ b/section7/eazyschool-end/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,2 @@ +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar diff --git a/section_12/springsecOAUTH2GitHub/mvnw b/section7/eazyschool-end/mvnw old mode 100755 new mode 100644 similarity index 94% rename from section_12/springsecOAUTH2GitHub/mvnw rename to section7/eazyschool-end/mvnw index 8a8fb228..a16b5431 --- a/section_12/springsecOAUTH2GitHub/mvnw +++ b/section7/eazyschool-end/mvnw @@ -36,10 +36,6 @@ if [ -z "$MAVEN_SKIP_RC" ] ; then - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - if [ -f /etc/mavenrc ] ; then . /etc/mavenrc fi @@ -149,7 +145,7 @@ if [ -z "$JAVACMD" ] ; then JAVACMD="$JAVA_HOME/bin/java" fi else - JAVACMD="`\\unset -f command; \\command -v java`" + JAVACMD="`which java`" fi fi @@ -216,9 +212,9 @@ else echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." fi if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" fi while IFS="=" read key value; do case "$key" in (wrapperUrl) jarUrl="$value"; break ;; @@ -237,9 +233,9 @@ else echo "Found wget ... using wget" fi if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + wget "$jarUrl" -O "$wrapperJarPath" else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" fi elif command -v curl > /dev/null; then if [ "$MVNW_VERBOSE" = true ]; then @@ -309,8 +305,6 @@ WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain exec "$JAVACMD" \ $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/section_13/springsecsection_13/mvnw.cmd b/section7/eazyschool-end/mvnw.cmd similarity index 84% rename from section_13/springsecsection_13/mvnw.cmd rename to section7/eazyschool-end/mvnw.cmd index 1d8ab018..c8d43372 100644 --- a/section_13/springsecsection_13/mvnw.cmd +++ b/section7/eazyschool-end/mvnw.cmd @@ -46,8 +46,8 @@ if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") @REM Execute a user defined script before this one if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre @REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* +if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" +if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" :skipRcPre @setlocal @@ -120,9 +120,9 @@ SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" +set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( +FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B ) @@ -134,7 +134,7 @@ if exist %WRAPPER_JAR% ( ) ) else ( if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" ) if "%MVNW_VERBOSE%" == "true" ( echo Couldn't find %WRAPPER_JAR%, downloading it ... @@ -158,13 +158,7 @@ if exist %WRAPPER_JAR% ( @REM work with both Windows and non-Windows executions. set MAVEN_CMD_LINE_ARGS=%* -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* if ERRORLEVEL 1 goto error goto end @@ -174,15 +168,15 @@ set ERROR_CODE=1 :end @endlocal & set ERROR_CODE=%ERROR_CODE% -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost @REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" +if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" +if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" :skipRcPost @REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause +if "%MAVEN_BATCH_PAUSE%" == "on" pause -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% +if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% -cmd /C exit /B %ERROR_CODE% +exit /B %ERROR_CODE% diff --git a/section7/eazyschool-end/pom.xml b/section7/eazyschool-end/pom.xml new file mode 100644 index 00000000..563a645f --- /dev/null +++ b/section7/eazyschool-end/pom.xml @@ -0,0 +1,66 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.3.0 + + + com.eazybytes + eazyschool-end + 0.0.1-SNAPSHOT + eazyschool-end + Eazy School Web Application + + 21 + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.springframework.boot + spring-boot-devtools + runtime + true + + + org.projectlombok + lombok + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-security + + + org.thymeleaf.extras + thymeleaf-extras-springsecurity6 + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplication.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java similarity index 54% rename from section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplication.java rename to section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java index 1861534e..b2e8cec1 100644 --- a/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplication.java +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java @@ -1,13 +1,13 @@ -package com.eazybytes.springsecOAUTH2GitHub; +package com.eazybytes.eazyschool; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication -public class SpringsecOauth2GitHubApplication { +public class EazyschoolApplication { public static void main(String[] args) { - SpringApplication.run(SpringsecOauth2GitHubApplication.class, args); + SpringApplication.run(EazyschoolApplication.class, args); } } diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..154618c1 --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java @@ -0,0 +1,71 @@ +package com.eazybytes.eazyschool.config; + +import com.eazybytes.eazyschool.handler.CustomAuthenticationFailureHandler; +import com.eazybytes.eazyschool.handler.CustomAuthenticationSuccessHandler; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.Customizer; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.provisioning.InMemoryUserDetailsManager; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; + +@Configuration +@RequiredArgsConstructor +public class ProjectSecurityConfig { + + private final CustomAuthenticationSuccessHandler authenticationSuccessHandler; + private final CustomAuthenticationFailureHandler authenticationFailureHandler; + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + + http.csrf((csrf) -> csrf.disable()) + .authorizeHttpRequests((requests) -> requests.requestMatchers("/dashboard").authenticated() + .requestMatchers("/", "/home", "/holidays/**", "/contact", "/saveMsg", + "/courses", "/about", "/assets/**", "/login/**").permitAll()) + .formLogin(flc -> flc.loginPage("/login").usernameParameter("userid").passwordParameter("secretPwd") + .defaultSuccessUrl("/dashboard").failureUrl("/login?error=true") + .successHandler(authenticationSuccessHandler).failureHandler(authenticationFailureHandler)) + .logout(loc -> loc.logoutSuccessUrl("/login?logout=true").invalidateHttpSession(true).clearAuthentication(true) + .deleteCookies("JSESSIONID")) + .httpBasic(Customizer.withDefaults()); + + + return http.build(); + } + + @Bean + public UserDetailsService userDetailsService() { + UserDetails user = User.withUsername("user") + .password("{noop}EazyBytes@12345").authorities("read").build(); + UserDetails admin = User.withUsername("admin") + .password("{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m") + .authorities("admin").build(); + return new InMemoryUserDetailsManager(user, admin); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + + +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java new file mode 100644 index 00000000..e35d5b8f --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java @@ -0,0 +1,16 @@ +package com.eazybytes.eazyschool.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@Configuration +public class WebConfig implements WebMvcConfigurer { + + @Override + public void addViewControllers(ViewControllerRegistry registry) { + registry.addViewController("/courses").setViewName("courses"); + registry.addViewController("/about").setViewName("about"); + } + +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java new file mode 100644 index 00000000..1e680b62 --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java @@ -0,0 +1,63 @@ +package com.eazybytes.eazyschool.controller; + +import com.eazybytes.eazyschool.model.Contact; +import com.eazybytes.eazyschool.service.ContactService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.Errors; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.context.annotation.RequestScope; +import org.springframework.web.context.annotation.SessionScope; +import org.springframework.web.servlet.ModelAndView; + +import jakarta.validation.Valid; + +import static org.springframework.web.bind.annotation.RequestMethod.POST; + +@Slf4j +@Controller +public class ContactController { + + private final ContactService contactService; + + @Autowired + public ContactController(ContactService contactService) { + this.contactService = contactService; + } + + @RequestMapping("/contact") + public String displayContactPage(Model model) { + model.addAttribute("contact", new Contact()); + return "contact.html"; + } + + /*@RequestMapping(value = "/saveMsg",method = POST) + public ModelAndView saveMessage(@RequestParam String name, @RequestParam String mobileNum, + @RequestParam String email, @RequestParam String subject, @RequestParam String message) { + log.info("Name : " + name); + log.info("Mobile Number : " + mobileNum); + log.info("Email Address : " + email); + log.info("Subject : " + subject); + log.info("Message : " + message); + return new ModelAndView("redirect:/contact"); + }*/ + + @RequestMapping(value = "/saveMsg",method = POST) + public String saveMessage(@Valid @ModelAttribute("contact") Contact contact, Errors errors) { + if(errors.hasErrors()){ + log.error("Contact form validation failed due to : " + errors.toString()); + return "contact.html"; + } + contactService.saveMessageDetails(contact); + contactService.setCounter(contactService.getCounter()+1); + log.info("Number of times the Contact form is submitted : "+contactService.getCounter()); + return "redirect:/contact"; + } + + + +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java new file mode 100644 index 00000000..3a6a9c26 --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java @@ -0,0 +1,24 @@ +package com.eazybytes.eazyschool.controller; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +@Slf4j +@Controller +public class DashboardController { + + @RequestMapping("/dashboard") + public String displayDashboard(Model model) { + Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + if(null != authentication) { + model.addAttribute("username", authentication.getName()); + model.addAttribute("roles", authentication.getAuthorities().toString()); + } + return "dashboard.html"; + } + +} \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java new file mode 100644 index 00000000..bd389f5b --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java @@ -0,0 +1,47 @@ +package com.eazybytes.eazyschool.controller; + +import com.eazybytes.eazyschool.model.Holiday; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +@Slf4j +@Controller +public class HolidaysController { + + @GetMapping("/holidays/{display}") + public String displayHolidays(@PathVariable String display,Model model) { + if(null != display && display.equals("all")){ + model.addAttribute("festival",true); + model.addAttribute("federal",true); + }else if(null != display && display.equals("federal")){ + model.addAttribute("federal",true); + }else if(null != display && display.equals("festival")){ + model.addAttribute("festival",true); + } + List holidays = Arrays.asList( + new Holiday(" Jan 1 ","New Year's Day", Holiday.Type.FESTIVAL), + new Holiday(" Oct 31 ","Halloween", Holiday.Type.FESTIVAL), + new Holiday(" Nov 24 ","Thanksgiving Day", Holiday.Type.FESTIVAL), + new Holiday(" Dec 25 ","Christmas", Holiday.Type.FESTIVAL), + new Holiday(" Jan 17 ","Martin Luther King Jr. Day", Holiday.Type.FEDERAL), + new Holiday(" July 4 ","Independence Day", Holiday.Type.FEDERAL), + new Holiday(" Sep 5 ","Labor Day", Holiday.Type.FEDERAL), + new Holiday(" Nov 11 ","Veterans Day", Holiday.Type.FEDERAL) + ); + Holiday.Type[] types = Holiday.Type.values(); + for (Holiday.Type type : types) { + model.addAttribute(type.toString(), + (holidays.stream().filter(holiday -> holiday.getType().equals(type)).collect(Collectors.toList()))); + } + return "holidays.html"; + } + +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java new file mode 100644 index 00000000..cf8235b7 --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java @@ -0,0 +1,15 @@ +package com.eazybytes.eazyschool.controller; + +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +public class HomeController { + + @RequestMapping(value={"", "/", "home"}) + public String displayHomePage() { + return "home.html"; + } + +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java new file mode 100644 index 00000000..254b87e7 --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java @@ -0,0 +1,28 @@ +package com.eazybytes.eazyschool.controller; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; + +@Slf4j +@Controller +public class LoginController { + + @RequestMapping(value = "/login", method = {RequestMethod.GET}) + public String displayLoginPage(@RequestParam(value = "error", required = false) String error, + @RequestParam(value = "logout", required = false) String logout, Model model) { + String errorMessge = null; + if(null != error) { + errorMessge = "Username or Password is incorrect !!"; + } + if(null!= logout) { + errorMessge = "You have been successfully logged out !!"; + } + model.addAttribute("errorMessge", errorMessge); + return "login.html"; + } + +} \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationFailureHandler.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationFailureHandler.java new file mode 100644 index 00000000..7f4d4a0e --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationFailureHandler.java @@ -0,0 +1,23 @@ +package com.eazybytes.eazyschool.handler; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.authentication.AuthenticationFailureHandler; +import org.springframework.stereotype.Component; + +import java.io.IOException; + +@Component +@Slf4j +public class CustomAuthenticationFailureHandler implements AuthenticationFailureHandler { + + @Override + public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, + AuthenticationException exception) throws IOException, ServletException { + log.error("Login failed due to : {}", exception.getMessage()); + response.sendRedirect("/login?error=true"); + } +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationSuccessHandler.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationSuccessHandler.java new file mode 100644 index 00000000..9ddf183a --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/handler/CustomAuthenticationSuccessHandler.java @@ -0,0 +1,24 @@ +package com.eazybytes.eazyschool.handler; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.core.Authentication; +import org.springframework.security.web.authentication.AuthenticationSuccessHandler; +import org.springframework.stereotype.Component; + +import java.io.IOException; + +@Component +@Slf4j +public class CustomAuthenticationSuccessHandler implements AuthenticationSuccessHandler { + + @Override + public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, + Authentication authentication) throws IOException, ServletException { + log.info("Login successful for the user : {}", authentication.getName()); + response.sendRedirect("/dashboard"); + } + +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Contact.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Contact.java new file mode 100644 index 00000000..82c16eae --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Contact.java @@ -0,0 +1,40 @@ +package com.eazybytes.eazyschool.model; + +import lombok.Data; +import org.hibernate.validator.constraints.CreditCardNumber; + +import jakarta.validation.constraints.*; + +/* +@Data annotation is provided by Lombok library which generates getter, setter, +equals(), hashCode(), toString() methods & Constructor at compile time. +This makes our code short and clean. +* */ +@Data +public class Contact { + + /* + * @NotNull: Checks if a given field is not null but allows empty values & zero elements inside collections. + @NotEmpty: Checks if a given field is not null and its size/length is greater than zero. + @NotBlank: Checks if a given field is not null and trimmed length is greater than zero. + * */ + @NotBlank(message="Name must not be blank") + @Size(min=3, message="Name must be at least 3 characters long") + private String name; + + @NotBlank(message="Mobile number must not be blank") + @Pattern(regexp="(^$|[0-9]{10})",message = "Mobile number must be 10 digits") + private String mobileNum; + + @NotBlank(message="Email must not be blank") + @Email(message = "Please provide a valid email address" ) + private String email; + + @NotBlank(message="Subject must not be blank") + @Size(min=5, message="Subject must be at least 5 characters long") + private String subject; + + @NotBlank(message="Message must not be blank") + @Size(min=10, message="Message must be at least 10 characters long") + private String message; +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Holiday.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Holiday.java new file mode 100644 index 00000000..80752ce9 --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/model/Holiday.java @@ -0,0 +1,15 @@ +package com.eazybytes.eazyschool.model; + +import lombok.Data; + +@Data +public class Holiday { + + private final String day; + private final String reason; + private final Type type; + + public enum Type { + FESTIVAL, FEDERAL + } +} diff --git a/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/service/ContactService.java b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/service/ContactService.java new file mode 100644 index 00000000..8e4c258f --- /dev/null +++ b/section7/eazyschool-end/src/main/java/com/eazybytes/eazyschool/service/ContactService.java @@ -0,0 +1,47 @@ +package com.eazybytes.eazyschool.service; + +import com.eazybytes.eazyschool.model.Contact; +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Service; +import org.springframework.web.context.annotation.ApplicationScope; +import org.springframework.web.context.annotation.RequestScope; +import org.springframework.web.context.annotation.SessionScope; + +/* +@Slf4j, is a Lombok-provided annotation that will automatically generate an SLF4J +Logger static property in the class at compilation time. +* */ +@Slf4j +@Service +// @RequestScope +// @SessionScope +@ApplicationScope +public class ContactService { + + private int counter = 0; + + public ContactService(){ + System.out.println("Contact Service Bean initialized"); + } + + /** + * Save Contact Details into DB + * @param contact + * @return boolean + */ + public boolean saveMessageDetails(Contact contact){ + boolean isSaved = true; + //TODO - Need to persist the data into the DB table + log.info(contact.toString()); + return isSaved; + } + + public int getCounter() { + return counter; + } + + public void setCounter(int counter) { + this.counter = counter; + } +} diff --git a/section7/eazyschool-end/src/main/resources/application.properties b/section7/eazyschool-end/src/main/resources/application.properties new file mode 100644 index 00000000..64fbec6b --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/application.properties @@ -0,0 +1,4 @@ +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +# Use this pattern to display the log in a readable format +logging.pattern.console= ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/static/assets/css/style-starter.css b/section7/eazyschool-end/src/main/resources/static/assets/css/style-starter.css new file mode 100644 index 00000000..9e38c328 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/static/assets/css/style-starter.css @@ -0,0 +1,21279 @@ +@charset "UTF-8"; + +/*-- +Author: W3layouts +Author URL: http://w3layouts.com +--*/ +/*! + * Bootstrap v5.0.1 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors + * Copyright 2011-2021 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +:root { + --bs-blue: #0d6efd; + --bs-indigo: #6610f2; + --bs-purple: #6f42c1; + --bs-pink: #d63384; + --bs-red: #dc3545; + --bs-orange: #fd7e14; + --bs-yellow: #ffc107; + --bs-green: #198754; + --bs-teal: #20c997; + --bs-cyan: #0dcaf0; + --bs-white: #fff; + --bs-gray: #6c757d; + --bs-gray-dark: #343a40; + --bs-primary: #0d6efd; + --bs-secondary: #6c757d; + --bs-success: #198754; + --bs-info: #0dcaf0; + --bs-warning: #ffc107; + --bs-danger: #dc3545; + --bs-light: #f8f9fa; + --bs-dark: #212529; + --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth; + } +} + +body { + margin: 0; + font-family: var(--bs-font-sans-serif); + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +hr { + margin: 1rem 0; + color: inherit; + background-color: currentColor; + border: 0; + opacity: 0.25; +} + +hr:not([size]) { + height: 1px; +} + +h6, +.h6, +h5, +.h5, +h4, +.h4, +h3, +.h3, +h2, +.h2, +h1, +.h1 { + margin-top: 0; + margin-bottom: 0.5rem; + font-weight: 500; + line-height: 1.2; +} + +h1, +.h1 { + font-size: calc(1.375rem + 1.5vw); +} + +@media (min-width: 1200px) { + + h1, + .h1 { + font-size: 2.5rem; + } +} + +h2, +.h2 { + font-size: calc(1.325rem + 0.9vw); +} + +@media (min-width: 1200px) { + + h2, + .h2 { + font-size: 2rem; + } +} + +h3, +.h3 { + font-size: calc(1.3rem + 0.6vw); +} + +@media (min-width: 1200px) { + + h3, + .h3 { + font-size: 1.75rem; + } +} + +h4, +.h4 { + font-size: calc(1.275rem + 0.3vw); +} + +@media (min-width: 1200px) { + + h4, + .h4 { + font-size: 1.5rem; + } +} + +h5, +.h5 { + font-size: 1.25rem; +} + +h6, +.h6 { + font-size: 1rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-bs-original-title] { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + -webkit-text-decoration-skip-ink: none; + text-decoration-skip-ink: none; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul { + padding-left: 2rem; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: 0.5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small, +.small { + font-size: 0.875em; +} + +mark, +.mark { + padding: 0.2em; + background-color: #fcf8e3; +} + +sub, +sup { + position: relative; + font-size: 0.75em; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +a { + color: #0d6efd; + text-decoration: underline; +} + +a:hover { + color: #0a58ca; +} + +a:not([href]):not([class]), +a:not([href]):not([class]):hover { + color: inherit; + text-decoration: none; +} + +pre, +code, +kbd, +samp { + font-family: var(--bs-font-monospace); + font-size: 1em; + direction: ltr + /* rtl:ignore */ + ; + unicode-bidi: bidi-override; +} + +pre { + display: block; + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; + font-size: 0.875em; +} + +pre code { + font-size: inherit; + color: inherit; + word-break: normal; +} + +code { + font-size: 0.875em; + color: #d63384; + word-wrap: break-word; +} + +a>code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 0.875em; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} + +kbd kbd { + padding: 0; + font-size: 1em; + font-weight: 700; +} + +figure { + margin: 0 0 1rem; +} + +img, +svg { + vertical-align: middle; +} + +table { + caption-side: bottom; + border-collapse: collapse; +} + +caption { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + color: #6c757d; + text-align: left; +} + +th { + text-align: inherit; + text-align: -webkit-match-parent; +} + +thead, +tbody, +tfoot, +tr, +td, +th { + border-color: inherit; + border-style: solid; + border-width: 0; +} + +label { + display: inline-block; +} + +button { + border-radius: 0; +} + +button:focus:not(:focus-visible) { + outline: 0; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +select { + text-transform: none; +} + +[role=button] { + cursor: pointer; +} + +select { + word-wrap: normal; +} + +select:disabled { + opacity: 1; +} + +[list]::-webkit-calendar-picker-indicator { + display: none; +} + +button, +[type=button], +[type=reset], +[type=submit] { + -webkit-appearance: button; +} + +button:not(:disabled), +[type=button]:not(:disabled), +[type=reset]:not(:disabled), +[type=submit]:not(:disabled) { + cursor: pointer; +} + +::-moz-focus-inner { + padding: 0; + border-style: none; +} + +textarea { + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + float: left; + width: 100%; + padding: 0; + margin-bottom: 0.5rem; + font-size: calc(1.275rem + 0.3vw); + line-height: inherit; +} + +@media (min-width: 1200px) { + legend { + font-size: 1.5rem; + } +} + +legend+* { + clear: left; +} + +::-webkit-datetime-edit-fields-wrapper, +::-webkit-datetime-edit-text, +::-webkit-datetime-edit-minute, +::-webkit-datetime-edit-hour-field, +::-webkit-datetime-edit-day-field, +::-webkit-datetime-edit-month-field, +::-webkit-datetime-edit-year-field { + padding: 0; +} + +::-webkit-inner-spin-button { + height: auto; +} + +[type=search] { + outline-offset: -2px; + -webkit-appearance: textfield; +} + +/* rtl:raw: +[type="tel"], +[type="url"], +[type="email"], +[type="number"] { + direction: ltr; +} +*/ +::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-color-swatch-wrapper { + padding: 0; +} + +::file-selector-button { + font: inherit; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +iframe { + border: 0; +} + +summary { + display: list-item; + cursor: pointer; +} + +progress { + vertical-align: baseline; +} + +[hidden] { + display: none !important; +} + +.lead { + font-size: 1.25rem; + font-weight: 300; +} + +.display-1 { + font-size: calc(1.625rem + 4.5vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-1 { + font-size: 5rem; + } +} + +.display-2 { + font-size: calc(1.575rem + 3.9vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-2 { + font-size: 4.5rem; + } +} + +.display-3 { + font-size: calc(1.525rem + 3.3vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-3 { + font-size: 4rem; + } +} + +.display-4 { + font-size: calc(1.475rem + 2.7vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-4 { + font-size: 3.5rem; + } +} + +.display-5 { + font-size: calc(1.425rem + 2.1vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-5 { + font-size: 3rem; + } +} + +.display-6 { + font-size: calc(1.375rem + 1.5vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-6 { + font-size: 2.5rem; + } +} + +.list-unstyled { + padding-left: 0; + list-style: none; +} + +.list-inline { + padding-left: 0; + list-style: none; +} + +.list-inline-item { + display: inline-block; +} + +.list-inline-item:not(:last-child) { + margin-right: 0.5rem; +} + +.initialism { + font-size: 0.875em; + text-transform: uppercase; +} + +.blockquote { + margin-bottom: 1rem; + font-size: 1.25rem; +} + +.blockquote> :last-child { + margin-bottom: 0; +} + +.blockquote-footer { + margin-top: -1rem; + margin-bottom: 1rem; + font-size: 0.875em; + color: #6c757d; +} + +.blockquote-footer::before { + content: "— "; +} + +.img-fluid { + max-width: 100%; + height: auto; +} + +.img-thumbnail { + padding: 0.25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 0.25rem; + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.5rem; + line-height: 1; +} + +.figure-caption { + font-size: 0.875em; + color: #6c757d; +} + +.container, +.container-fluid, +.container-xxl, +.container-xl, +.container-lg, +.container-md, +.container-sm { + width: 100%; + padding-right: var(--bs-gutter-x, 0.75rem); + padding-left: var(--bs-gutter-x, 0.75rem); + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + + .container-sm, + .container { + max-width: 540px; + } +} + +@media (min-width: 768px) { + + .container-md, + .container-sm, + .container { + max-width: 720px; + } +} + +@media (min-width: 992px) { + + .container-lg, + .container-md, + .container-sm, + .container { + max-width: 960px; + } +} + +@media (min-width: 1200px) { + + .container-xl, + .container-lg, + .container-md, + .container-sm, + .container { + max-width: 1140px; + } +} + +@media (min-width: 1400px) { + + .container-xxl, + .container-xl, + .container-lg, + .container-md, + .container-sm, + .container { + max-width: 1320px; + } +} + +.row { + --bs-gutter-x: 1.5rem; + --bs-gutter-y: 0; + display: flex; + flex-wrap: wrap; + margin-top: calc(var(--bs-gutter-y) * -1); + margin-right: calc(var(--bs-gutter-x) / -2); + margin-left: calc(var(--bs-gutter-x) / -2); +} + +.row>* { + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); + margin-top: var(--bs-gutter-y); +} + +.col { + flex: 1 0 0%; +} + +.row-cols-auto>* { + flex: 0 0 auto; + width: auto; +} + +.row-cols-1>* { + flex: 0 0 auto; + width: 100%; +} + +.row-cols-2>* { + flex: 0 0 auto; + width: 50%; +} + +.row-cols-3>* { + flex: 0 0 auto; + width: 33.3333333333%; +} + +.row-cols-4>* { + flex: 0 0 auto; + width: 25%; +} + +.row-cols-5>* { + flex: 0 0 auto; + width: 20%; +} + +.row-cols-6>* { + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-auto { + flex: 0 0 auto; + width: auto; +} + +.col-1 { + flex: 0 0 auto; + width: 8.3333333333%; +} + +.col-2 { + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-3 { + flex: 0 0 auto; + width: 25%; +} + +.col-4 { + flex: 0 0 auto; + width: 33.3333333333%; +} + +.col-5 { + flex: 0 0 auto; + width: 41.6666666667%; +} + +.col-6 { + flex: 0 0 auto; + width: 50%; +} + +.col-7 { + flex: 0 0 auto; + width: 58.3333333333%; +} + +.col-8 { + flex: 0 0 auto; + width: 66.6666666667%; +} + +.col-9 { + flex: 0 0 auto; + width: 75%; +} + +.col-10 { + flex: 0 0 auto; + width: 83.3333333333%; +} + +.col-11 { + flex: 0 0 auto; + width: 91.6666666667%; +} + +.col-12 { + flex: 0 0 auto; + width: 100%; +} + +.offset-1 { + margin-left: 8.3333333333%; +} + +.offset-2 { + margin-left: 16.6666666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.3333333333%; +} + +.offset-5 { + margin-left: 41.6666666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.3333333333%; +} + +.offset-8 { + margin-left: 66.6666666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.3333333333%; +} + +.offset-11 { + margin-left: 91.6666666667%; +} + +.g-0, +.gx-0 { + --bs-gutter-x: 0; +} + +.g-0, +.gy-0 { + --bs-gutter-y: 0; +} + +.g-1, +.gx-1 { + --bs-gutter-x: 0.25rem; +} + +.g-1, +.gy-1 { + --bs-gutter-y: 0.25rem; +} + +.g-2, +.gx-2 { + --bs-gutter-x: 0.5rem; +} + +.g-2, +.gy-2 { + --bs-gutter-y: 0.5rem; +} + +.g-3, +.gx-3 { + --bs-gutter-x: 1rem; +} + +.g-3, +.gy-3 { + --bs-gutter-y: 1rem; +} + +.g-4, +.gx-4 { + --bs-gutter-x: 1.5rem; +} + +.g-4, +.gy-4 { + --bs-gutter-y: 1.5rem; +} + +.g-5, +.gx-5 { + --bs-gutter-x: 3rem; +} + +.g-5, +.gy-5 { + --bs-gutter-y: 3rem; +} + +@media (min-width: 576px) { + .col-sm { + flex: 1 0 0%; + } + + .row-cols-sm-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-sm-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-sm-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-sm-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-sm-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-sm-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-sm-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-auto { + flex: 0 0 auto; + width: auto; + } + + .col-sm-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-sm-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-sm-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-sm-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-sm-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-sm-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-sm-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-sm-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-sm-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-sm-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-sm-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-sm-0 { + margin-left: 0; + } + + .offset-sm-1 { + margin-left: 8.3333333333%; + } + + .offset-sm-2 { + margin-left: 16.6666666667%; + } + + .offset-sm-3 { + margin-left: 25%; + } + + .offset-sm-4 { + margin-left: 33.3333333333%; + } + + .offset-sm-5 { + margin-left: 41.6666666667%; + } + + .offset-sm-6 { + margin-left: 50%; + } + + .offset-sm-7 { + margin-left: 58.3333333333%; + } + + .offset-sm-8 { + margin-left: 66.6666666667%; + } + + .offset-sm-9 { + margin-left: 75%; + } + + .offset-sm-10 { + margin-left: 83.3333333333%; + } + + .offset-sm-11 { + margin-left: 91.6666666667%; + } + + .g-sm-0, + .gx-sm-0 { + --bs-gutter-x: 0; + } + + .g-sm-0, + .gy-sm-0 { + --bs-gutter-y: 0; + } + + .g-sm-1, + .gx-sm-1 { + --bs-gutter-x: 0.25rem; + } + + .g-sm-1, + .gy-sm-1 { + --bs-gutter-y: 0.25rem; + } + + .g-sm-2, + .gx-sm-2 { + --bs-gutter-x: 0.5rem; + } + + .g-sm-2, + .gy-sm-2 { + --bs-gutter-y: 0.5rem; + } + + .g-sm-3, + .gx-sm-3 { + --bs-gutter-x: 1rem; + } + + .g-sm-3, + .gy-sm-3 { + --bs-gutter-y: 1rem; + } + + .g-sm-4, + .gx-sm-4 { + --bs-gutter-x: 1.5rem; + } + + .g-sm-4, + .gy-sm-4 { + --bs-gutter-y: 1.5rem; + } + + .g-sm-5, + .gx-sm-5 { + --bs-gutter-x: 3rem; + } + + .g-sm-5, + .gy-sm-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 768px) { + .col-md { + flex: 1 0 0%; + } + + .row-cols-md-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-md-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-md-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-md-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-md-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-md-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-md-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-auto { + flex: 0 0 auto; + width: auto; + } + + .col-md-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-md-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-md-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-md-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-md-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-md-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-md-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-md-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-md-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-md-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-md-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-md-0 { + margin-left: 0; + } + + .offset-md-1 { + margin-left: 8.3333333333%; + } + + .offset-md-2 { + margin-left: 16.6666666667%; + } + + .offset-md-3 { + margin-left: 25%; + } + + .offset-md-4 { + margin-left: 33.3333333333%; + } + + .offset-md-5 { + margin-left: 41.6666666667%; + } + + .offset-md-6 { + margin-left: 50%; + } + + .offset-md-7 { + margin-left: 58.3333333333%; + } + + .offset-md-8 { + margin-left: 66.6666666667%; + } + + .offset-md-9 { + margin-left: 75%; + } + + .offset-md-10 { + margin-left: 83.3333333333%; + } + + .offset-md-11 { + margin-left: 91.6666666667%; + } + + .g-md-0, + .gx-md-0 { + --bs-gutter-x: 0; + } + + .g-md-0, + .gy-md-0 { + --bs-gutter-y: 0; + } + + .g-md-1, + .gx-md-1 { + --bs-gutter-x: 0.25rem; + } + + .g-md-1, + .gy-md-1 { + --bs-gutter-y: 0.25rem; + } + + .g-md-2, + .gx-md-2 { + --bs-gutter-x: 0.5rem; + } + + .g-md-2, + .gy-md-2 { + --bs-gutter-y: 0.5rem; + } + + .g-md-3, + .gx-md-3 { + --bs-gutter-x: 1rem; + } + + .g-md-3, + .gy-md-3 { + --bs-gutter-y: 1rem; + } + + .g-md-4, + .gx-md-4 { + --bs-gutter-x: 1.5rem; + } + + .g-md-4, + .gy-md-4 { + --bs-gutter-y: 1.5rem; + } + + .g-md-5, + .gx-md-5 { + --bs-gutter-x: 3rem; + } + + .g-md-5, + .gy-md-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 992px) { + .col-lg { + flex: 1 0 0%; + } + + .row-cols-lg-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-lg-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-lg-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-lg-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-lg-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-lg-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-lg-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-auto { + flex: 0 0 auto; + width: auto; + } + + .col-lg-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-lg-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-lg-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-lg-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-lg-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-lg-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-lg-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-lg-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-lg-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-lg-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-lg-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-lg-0 { + margin-left: 0; + } + + .offset-lg-1 { + margin-left: 8.3333333333%; + } + + .offset-lg-2 { + margin-left: 16.6666666667%; + } + + .offset-lg-3 { + margin-left: 25%; + } + + .offset-lg-4 { + margin-left: 33.3333333333%; + } + + .offset-lg-5 { + margin-left: 41.6666666667%; + } + + .offset-lg-6 { + margin-left: 50%; + } + + .offset-lg-7 { + margin-left: 58.3333333333%; + } + + .offset-lg-8 { + margin-left: 66.6666666667%; + } + + .offset-lg-9 { + margin-left: 75%; + } + + .offset-lg-10 { + margin-left: 83.3333333333%; + } + + .offset-lg-11 { + margin-left: 91.6666666667%; + } + + .g-lg-0, + .gx-lg-0 { + --bs-gutter-x: 0; + } + + .g-lg-0, + .gy-lg-0 { + --bs-gutter-y: 0; + } + + .g-lg-1, + .gx-lg-1 { + --bs-gutter-x: 0.25rem; + } + + .g-lg-1, + .gy-lg-1 { + --bs-gutter-y: 0.25rem; + } + + .g-lg-2, + .gx-lg-2 { + --bs-gutter-x: 0.5rem; + } + + .g-lg-2, + .gy-lg-2 { + --bs-gutter-y: 0.5rem; + } + + .g-lg-3, + .gx-lg-3 { + --bs-gutter-x: 1rem; + } + + .g-lg-3, + .gy-lg-3 { + --bs-gutter-y: 1rem; + } + + .g-lg-4, + .gx-lg-4 { + --bs-gutter-x: 1.5rem; + } + + .g-lg-4, + .gy-lg-4 { + --bs-gutter-y: 1.5rem; + } + + .g-lg-5, + .gx-lg-5 { + --bs-gutter-x: 3rem; + } + + .g-lg-5, + .gy-lg-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 1200px) { + .col-xl { + flex: 1 0 0%; + } + + .row-cols-xl-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xl-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xl-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xl-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xl-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xl-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xl-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xl-0 { + margin-left: 0; + } + + .offset-xl-1 { + margin-left: 8.3333333333%; + } + + .offset-xl-2 { + margin-left: 16.6666666667%; + } + + .offset-xl-3 { + margin-left: 25%; + } + + .offset-xl-4 { + margin-left: 33.3333333333%; + } + + .offset-xl-5 { + margin-left: 41.6666666667%; + } + + .offset-xl-6 { + margin-left: 50%; + } + + .offset-xl-7 { + margin-left: 58.3333333333%; + } + + .offset-xl-8 { + margin-left: 66.6666666667%; + } + + .offset-xl-9 { + margin-left: 75%; + } + + .offset-xl-10 { + margin-left: 83.3333333333%; + } + + .offset-xl-11 { + margin-left: 91.6666666667%; + } + + .g-xl-0, + .gx-xl-0 { + --bs-gutter-x: 0; + } + + .g-xl-0, + .gy-xl-0 { + --bs-gutter-y: 0; + } + + .g-xl-1, + .gx-xl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xl-1, + .gy-xl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xl-2, + .gx-xl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xl-2, + .gy-xl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xl-3, + .gx-xl-3 { + --bs-gutter-x: 1rem; + } + + .g-xl-3, + .gy-xl-3 { + --bs-gutter-y: 1rem; + } + + .g-xl-4, + .gx-xl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xl-4, + .gy-xl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xl-5, + .gx-xl-5 { + --bs-gutter-x: 3rem; + } + + .g-xl-5, + .gy-xl-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 1400px) { + .col-xxl { + flex: 1 0 0%; + } + + .row-cols-xxl-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xxl-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xxl-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xxl-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xxl-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xxl-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xxl-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xxl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xxl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xxl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xxl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xxl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xxl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xxl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xxl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xxl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xxl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xxl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xxl-0 { + margin-left: 0; + } + + .offset-xxl-1 { + margin-left: 8.3333333333%; + } + + .offset-xxl-2 { + margin-left: 16.6666666667%; + } + + .offset-xxl-3 { + margin-left: 25%; + } + + .offset-xxl-4 { + margin-left: 33.3333333333%; + } + + .offset-xxl-5 { + margin-left: 41.6666666667%; + } + + .offset-xxl-6 { + margin-left: 50%; + } + + .offset-xxl-7 { + margin-left: 58.3333333333%; + } + + .offset-xxl-8 { + margin-left: 66.6666666667%; + } + + .offset-xxl-9 { + margin-left: 75%; + } + + .offset-xxl-10 { + margin-left: 83.3333333333%; + } + + .offset-xxl-11 { + margin-left: 91.6666666667%; + } + + .g-xxl-0, + .gx-xxl-0 { + --bs-gutter-x: 0; + } + + .g-xxl-0, + .gy-xxl-0 { + --bs-gutter-y: 0; + } + + .g-xxl-1, + .gx-xxl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xxl-1, + .gy-xxl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xxl-2, + .gx-xxl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xxl-2, + .gy-xxl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xxl-3, + .gx-xxl-3 { + --bs-gutter-x: 1rem; + } + + .g-xxl-3, + .gy-xxl-3 { + --bs-gutter-y: 1rem; + } + + .g-xxl-4, + .gx-xxl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xxl-4, + .gy-xxl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xxl-5, + .gx-xxl-5 { + --bs-gutter-x: 3rem; + } + + .g-xxl-5, + .gy-xxl-5 { + --bs-gutter-y: 3rem; + } +} + +.table { + --bs-table-bg: transparent; + --bs-table-accent-bg: transparent; + --bs-table-striped-color: #212529; + --bs-table-striped-bg: rgba(0, 0, 0, 0.05); + --bs-table-active-color: #212529; + --bs-table-active-bg: rgba(0, 0, 0, 0.1); + --bs-table-hover-color: #212529; + --bs-table-hover-bg: rgba(0, 0, 0, 0.075); + width: 100%; + margin-bottom: 1rem; + color: #212529; + vertical-align: top; + border-color: #dee2e6; +} + +.table> :not(caption)>*>* { + padding: 0.5rem 0.5rem; + background-color: var(--bs-table-bg); + border-bottom-width: 1px; + box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg); +} + +.table>tbody { + vertical-align: inherit; +} + +.table>thead { + vertical-align: bottom; +} + +.table> :not(:last-child)> :last-child>* { + border-bottom-color: currentColor; +} + +.caption-top { + caption-side: top; +} + +.table-sm> :not(caption)>*>* { + padding: 0.25rem 0.25rem; +} + +.table-bordered> :not(caption)>* { + border-width: 1px 0; +} + +.table-bordered> :not(caption)>*>* { + border-width: 0 1px; +} + +.table-borderless> :not(caption)>*>* { + border-bottom-width: 0; +} + +.table-striped>tbody>tr:nth-of-type(odd) { + --bs-table-accent-bg: var(--bs-table-striped-bg); + color: var(--bs-table-striped-color); +} + +.table-active { + --bs-table-accent-bg: var(--bs-table-active-bg); + color: var(--bs-table-active-color); +} + +.table-hover>tbody>tr:hover { + --bs-table-accent-bg: var(--bs-table-hover-bg); + color: var(--bs-table-hover-color); +} + +.table-primary { + --bs-table-bg: #cfe2ff; + --bs-table-striped-bg: #c5d7f2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bacbe6; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfd1ec; + --bs-table-hover-color: #000; + color: #000; + border-color: #bacbe6; +} + +.table-secondary { + --bs-table-bg: #e2e3e5; + --bs-table-striped-bg: #d7d8da; + --bs-table-striped-color: #000; + --bs-table-active-bg: #cbccce; + --bs-table-active-color: #000; + --bs-table-hover-bg: #d1d2d4; + --bs-table-hover-color: #000; + color: #000; + border-color: #cbccce; +} + +.table-success { + --bs-table-bg: #d1e7dd; + --bs-table-striped-bg: #c7dbd2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bcd0c7; + --bs-table-active-color: #000; + --bs-table-hover-bg: #c1d6cc; + --bs-table-hover-color: #000; + color: #000; + border-color: #bcd0c7; +} + +.table-info { + --bs-table-bg: #cff4fc; + --bs-table-striped-bg: #c5e8ef; + --bs-table-striped-color: #000; + --bs-table-active-bg: #badce3; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfe2e9; + --bs-table-hover-color: #000; + color: #000; + border-color: #badce3; +} + +.table-warning { + --bs-table-bg: #fff3cd; + --bs-table-striped-bg: #f2e7c3; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dbb9; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece1be; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dbb9; +} + +.table-danger { + --bs-table-bg: #f8d7da; + --bs-table-striped-bg: #eccccf; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfc2c4; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5c7ca; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfc2c4; +} + +.table-light { + --bs-table-bg: #f8f9fa; + --bs-table-striped-bg: #ecedee; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfe0e1; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5e6e7; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfe0e1; +} + +.table-dark { + --bs-table-bg: #212529; + --bs-table-striped-bg: #2c3034; + --bs-table-striped-color: #fff; + --bs-table-active-bg: #373b3e; + --bs-table-active-color: #fff; + --bs-table-hover-bg: #323539; + --bs-table-hover-color: #fff; + color: #fff; + border-color: #373b3e; +} + +.table-responsive { + overflow-x: auto; + -webkit-overflow-scrolling: touch; +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 767.98px) { + .table-responsive-md { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 991.98px) { + .table-responsive-lg { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 1199.98px) { + .table-responsive-xl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 1399.98px) { + .table-responsive-xxl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +.form-label { + margin-bottom: 0.5rem; +} + +.col-form-label { + padding-top: calc(0.375rem + 1px); + padding-bottom: calc(0.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + 1px); + padding-bottom: calc(0.5rem + 1px); + font-size: 1.25rem; +} + +.col-form-label-sm { + padding-top: calc(0.25rem + 1px); + padding-bottom: calc(0.25rem + 1px); + font-size: 0.875rem; +} + +.form-text { + margin-top: 0.25rem; + font-size: 0.875em; + color: #6c757d; +} + +.form-control { + display: block; + width: 100%; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-control { + transition: none; + } +} + +.form-control[type=file] { + overflow: hidden; +} + +.form-control[type=file]:not(:disabled):not([readonly]) { + cursor: pointer; +} + +.form-control:focus { + color: #212529; + background-color: #fff; + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-control::-webkit-date-and-time-value { + height: 1.5em; +} + +.form-control::-moz-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control:disabled, +.form-control[readonly] { + background-color: #e9ecef; + opacity: 1; +} + +.form-control::file-selector-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-control::file-selector-button { + transition: none; + } +} + +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: #dde0e3; +} + +.form-control::-webkit-file-upload-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } +} + +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: #dde0e3; +} + +.form-control-plaintext { + display: block; + width: 100%; + padding: 0.375rem 0; + margin-bottom: 0; + line-height: 1.5; + color: #212529; + background-color: transparent; + border: solid transparent; + border-width: 1px 0; +} + +.form-control-plaintext.form-control-sm, +.form-control-plaintext.form-control-lg { + padding-right: 0; + padding-left: 0; +} + +.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.form-control-sm::file-selector-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} + +.form-control-sm::-webkit-file-upload-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} + +.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} + +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} + +textarea.form-control { + min-height: calc(1.5em + 0.75rem + 2px); +} + +textarea.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); +} + +textarea.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); +} + +.form-control-color { + max-width: 3rem; + height: auto; + padding: 0.375rem; +} + +.form-control-color:not(:disabled):not([readonly]) { + cursor: pointer; +} + +.form-control-color::-moz-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} + +.form-control-color::-webkit-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} + +.form-select { + display: block; + width: 100%; + padding: 0.375rem 2.25rem 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right 0.75rem center; + background-size: 16px 12px; + border: 1px solid #ced4da; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.form-select:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-select[multiple], +.form-select[size]:not([size="1"]) { + padding-right: 0.75rem; + background-image: none; +} + +.form-select:disabled { + background-color: #e9ecef; +} + +.form-select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #212529; +} + +.form-select-sm { + padding-top: 0.25rem; + padding-bottom: 0.25rem; + padding-left: 0.5rem; + font-size: 0.875rem; +} + +.form-select-lg { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 1rem; + font-size: 1.25rem; +} + +.form-check { + display: block; + min-height: 1.5rem; + padding-left: 1.5em; + margin-bottom: 0.125rem; +} + +.form-check .form-check-input { + float: left; + margin-left: -1.5em; +} + +.form-check-input { + width: 1em; + height: 1em; + margin-top: 0.25em; + vertical-align: top; + background-color: #fff; + background-repeat: no-repeat; + background-position: center; + background-size: contain; + border: 1px solid rgba(0, 0, 0, 0.25); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + -webkit-print-color-adjust: exact; + color-adjust: exact; +} + +.form-check-input[type=checkbox] { + border-radius: 0.25em; +} + +.form-check-input[type=radio] { + border-radius: 50%; +} + +.form-check-input:active { + filter: brightness(90%); +} + +.form-check-input:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-check-input:checked { + background-color: #0d6efd; + border-color: #0d6efd; +} + +.form-check-input:checked[type=checkbox] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e"); +} + +.form-check-input:checked[type=radio] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); +} + +.form-check-input[type=checkbox]:indeterminate { + background-color: #0d6efd; + border-color: #0d6efd; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); +} + +.form-check-input:disabled { + pointer-events: none; + filter: none; + opacity: 0.5; +} + +.form-check-input[disabled]~.form-check-label, +.form-check-input:disabled~.form-check-label { + opacity: 0.5; +} + +.form-switch { + padding-left: 2.5em; +} + +.form-switch .form-check-input { + width: 2em; + margin-left: -2.5em; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); + background-position: left center; + border-radius: 2em; + transition: background-position 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-switch .form-check-input { + transition: none; + } +} + +.form-switch .form-check-input:focus { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e"); +} + +.form-switch .form-check-input:checked { + background-position: right center; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); +} + +.form-check-inline { + display: inline-block; + margin-right: 1rem; +} + +.btn-check { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} + +.btn-check[disabled]+.btn, +.btn-check:disabled+.btn { + pointer-events: none; + filter: none; + opacity: 0.65; +} + +.form-range { + width: 100%; + height: 1.5rem; + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.form-range:focus { + outline: 0; +} + +.form-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-range::-moz-focus-outer { + border: 0; +} + +.form-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} + +@media (prefers-reduced-motion: reduce) { + .form-range::-webkit-slider-thumb { + -webkit-transition: none; + transition: none; + } +} + +.form-range::-webkit-slider-thumb:active { + background-color: #b6d4fe; +} + +.form-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.form-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} + +@media (prefers-reduced-motion: reduce) { + .form-range::-moz-range-thumb { + -moz-transition: none; + transition: none; + } +} + +.form-range::-moz-range-thumb:active { + background-color: #b6d4fe; +} + +.form-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.form-range:disabled { + pointer-events: none; +} + +.form-range:disabled::-webkit-slider-thumb { + background-color: #adb5bd; +} + +.form-range:disabled::-moz-range-thumb { + background-color: #adb5bd; +} + +.form-floating { + position: relative; +} + +.form-floating>.form-control, +.form-floating>.form-select { + height: calc(3.5rem + 2px); + padding: 1rem 0.75rem; +} + +.form-floating>label { + position: absolute; + top: 0; + left: 0; + height: 100%; + padding: 1rem 0.75rem; + pointer-events: none; + border: 1px solid transparent; + transform-origin: 0 0; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-floating>label { + transition: none; + } +} + +.form-floating>.form-control::-moz-placeholder { + color: transparent; +} + +.form-floating>.form-control::placeholder { + color: transparent; +} + +.form-floating>.form-control:not(:-moz-placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-control:focus, +.form-floating>.form-control:not(:placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-control:-webkit-autofill { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-select { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-control:not(:-moz-placeholder-shown)~label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.form-floating>.form-control:focus~label, +.form-floating>.form-control:not(:placeholder-shown)~label, +.form-floating>.form-select~label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.form-floating>.form-control:-webkit-autofill~label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.input-group { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: stretch; + width: 100%; +} + +.input-group>.form-control, +.input-group>.form-select { + position: relative; + flex: 1 1 auto; + width: 1%; + min-width: 0; +} + +.input-group>.form-control:focus, +.input-group>.form-select:focus { + z-index: 3; +} + +.input-group .btn { + position: relative; + z-index: 2; +} + +.input-group .btn:focus { + z-index: 3; +} + +.input-group-text { + display: flex; + align-items: center; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.input-group-lg>.form-control, +.input-group-lg>.form-select, +.input-group-lg>.input-group-text, +.input-group-lg>.btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.input-group-sm>.form-control, +.input-group-sm>.form-select, +.input-group-sm>.input-group-text, +.input-group-sm>.btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.input-group-lg>.form-select, +.input-group-sm>.form-select { + padding-right: 3rem; +} + +.input-group:not(.has-validation)> :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), +.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group.has-validation> :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), +.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group> :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { + margin-left: -1px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #198754; +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(25, 135, 84, 0.9); + border-radius: 0.25rem; +} + +.was-validated :valid~.valid-feedback, +.was-validated :valid~.valid-tooltip, +.is-valid~.valid-feedback, +.is-valid~.valid-tooltip { + display: block; +} + +.was-validated .form-control:valid, +.form-control.is-valid { + border-color: #198754; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.375em + 0.1875rem) center; + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-control:valid:focus, +.form-control.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated textarea.form-control:valid, +textarea.form-control.is-valid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .form-select:valid, +.form-select.is-valid { + border-color: #198754; +} + +.was-validated .form-select:valid:not([multiple]):not([size]), +.was-validated .form-select:valid:not([multiple])[size="1"], +.form-select.is-valid:not([multiple]):not([size]), +.form-select.is-valid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 2.25rem; + background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-select:valid:focus, +.form-select.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated .form-check-input:valid, +.form-check-input.is-valid { + border-color: #198754; +} + +.was-validated .form-check-input:valid:checked, +.form-check-input.is-valid:checked { + background-color: #198754; +} + +.was-validated .form-check-input:valid:focus, +.form-check-input.is-valid:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated .form-check-input:valid~.form-check-label, +.form-check-input.is-valid~.form-check-label { + color: #198754; +} + +.form-check-inline .form-check-input~.valid-feedback { + margin-left: 0.5em; +} + +.was-validated .input-group .form-control:valid, +.input-group .form-control.is-valid, +.was-validated .input-group .form-select:valid, +.input-group .form-select.is-valid { + z-index: 1; +} + +.was-validated .input-group .form-control:valid:focus, +.input-group .form-control.is-valid:focus, +.was-validated .input-group .form-select:valid:focus, +.input-group .form-select.is-valid:focus { + z-index: 3; +} + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #dc3545; +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(220, 53, 69, 0.9); + border-radius: 0.25rem; +} + +.was-validated :invalid~.invalid-feedback, +.was-validated :invalid~.invalid-tooltip, +.is-invalid~.invalid-feedback, +.is-invalid~.invalid-tooltip { + display: block; +} + +.was-validated .form-control:invalid, +.form-control.is-invalid { + border-color: #dc3545; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.375em + 0.1875rem) center; + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-control:invalid:focus, +.form-control.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated textarea.form-control:invalid, +textarea.form-control.is-invalid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .form-select:invalid, +.form-select.is-invalid { + border-color: #dc3545; +} + +.was-validated .form-select:invalid:not([multiple]):not([size]), +.was-validated .form-select:invalid:not([multiple])[size="1"], +.form-select.is-invalid:not([multiple]):not([size]), +.form-select.is-invalid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 2.25rem; + background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-select:invalid:focus, +.form-select.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-check-input:invalid, +.form-check-input.is-invalid { + border-color: #dc3545; +} + +.was-validated .form-check-input:invalid:checked, +.form-check-input.is-invalid:checked { + background-color: #dc3545; +} + +.was-validated .form-check-input:invalid:focus, +.form-check-input.is-invalid:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-check-input:invalid~.form-check-label, +.form-check-input.is-invalid~.form-check-label { + color: #dc3545; +} + +.form-check-inline .form-check-input~.invalid-feedback { + margin-left: 0.5em; +} + +.was-validated .input-group .form-control:invalid, +.input-group .form-control.is-invalid, +.was-validated .input-group .form-select:invalid, +.input-group .form-select.is-invalid { + z-index: 2; +} + +.was-validated .input-group .form-control:invalid:focus, +.input-group .form-control.is-invalid:focus, +.was-validated .input-group .form-select:invalid:focus, +.input-group .form-select.is-invalid:focus { + z-index: 3; +} + +.btn { + display: inline-block; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + text-decoration: none; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } +} + +.btn:hover { + color: #212529; +} + +.btn-check:focus+.btn, +.btn:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.btn:disabled, +.btn.disabled, +fieldset:disabled .btn { + pointer-events: none; + opacity: 0.65; +} + +.btn-primary { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-primary:hover { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; +} + +.btn-check:focus+.btn-primary, +.btn-primary:focus { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; + box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); +} + +.btn-check:checked+.btn-primary, +.btn-check:active+.btn-primary, +.btn-primary:active, +.btn-primary.active, +.show>.btn-primary.dropdown-toggle { + color: #fff; + background-color: #0a58ca; + border-color: #0a53be; +} + +.btn-check:checked+.btn-primary:focus, +.btn-check:active+.btn-primary:focus, +.btn-primary:active:focus, +.btn-primary.active:focus, +.show>.btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); +} + +.btn-primary:disabled, +.btn-primary.disabled { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-secondary { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-secondary:hover { + color: #fff; + background-color: #5c636a; + border-color: #565e64; +} + +.btn-check:focus+.btn-secondary, +.btn-secondary:focus { + color: #fff; + background-color: #5c636a; + border-color: #565e64; + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} + +.btn-check:checked+.btn-secondary, +.btn-check:active+.btn-secondary, +.btn-secondary:active, +.btn-secondary.active, +.show>.btn-secondary.dropdown-toggle { + color: #fff; + background-color: #565e64; + border-color: #51585e; +} + +.btn-check:checked+.btn-secondary:focus, +.btn-check:active+.btn-secondary:focus, +.btn-secondary:active:focus, +.btn-secondary.active:focus, +.show>.btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} + +.btn-secondary:disabled, +.btn-secondary.disabled { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-success { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-success:hover { + color: #fff; + background-color: #157347; + border-color: #146c43; +} + +.btn-check:focus+.btn-success, +.btn-success:focus { + color: #fff; + background-color: #157347; + border-color: #146c43; + box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); +} + +.btn-check:checked+.btn-success, +.btn-check:active+.btn-success, +.btn-success:active, +.btn-success.active, +.show>.btn-success.dropdown-toggle { + color: #fff; + background-color: #146c43; + border-color: #13653f; +} + +.btn-check:checked+.btn-success:focus, +.btn-check:active+.btn-success:focus, +.btn-success:active:focus, +.btn-success.active:focus, +.show>.btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); +} + +.btn-success:disabled, +.btn-success.disabled { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-info { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-info:hover { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; +} + +.btn-check:focus+.btn-info, +.btn-info:focus { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; + box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +} + +.btn-check:checked+.btn-info, +.btn-check:active+.btn-info, +.btn-info:active, +.btn-info.active, +.show>.btn-info.dropdown-toggle { + color: #000; + background-color: #3dd5f3; + border-color: #25cff2; +} + +.btn-check:checked+.btn-info:focus, +.btn-check:active+.btn-info:focus, +.btn-info:active:focus, +.btn-info.active:focus, +.show>.btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +} + +.btn-info:disabled, +.btn-info.disabled { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-warning { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-warning:hover { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; +} + +.btn-check:focus+.btn-warning, +.btn-warning:focus { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; + box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +} + +.btn-check:checked+.btn-warning, +.btn-check:active+.btn-warning, +.btn-warning:active, +.btn-warning.active, +.show>.btn-warning.dropdown-toggle { + color: #000; + background-color: #ffcd39; + border-color: #ffc720; +} + +.btn-check:checked+.btn-warning:focus, +.btn-check:active+.btn-warning:focus, +.btn-warning:active:focus, +.btn-warning.active:focus, +.show>.btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +} + +.btn-warning:disabled, +.btn-warning.disabled { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-danger { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-danger:hover { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; +} + +.btn-check:focus+.btn-danger, +.btn-danger:focus { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; + box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); +} + +.btn-check:checked+.btn-danger, +.btn-check:active+.btn-danger, +.btn-danger:active, +.btn-danger.active, +.show>.btn-danger.dropdown-toggle { + color: #fff; + background-color: #b02a37; + border-color: #a52834; +} + +.btn-check:checked+.btn-danger:focus, +.btn-check:active+.btn-danger:focus, +.btn-danger:active:focus, +.btn-danger.active:focus, +.show>.btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); +} + +.btn-danger:disabled, +.btn-danger.disabled { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-light { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-light:hover { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} + +.btn-check:focus+.btn-light, +.btn-light:focus { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} + +.btn-check:checked+.btn-light, +.btn-check:active+.btn-light, +.btn-light:active, +.btn-light.active, +.show>.btn-light.dropdown-toggle { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} + +.btn-check:checked+.btn-light:focus, +.btn-check:active+.btn-light:focus, +.btn-light:active:focus, +.btn-light.active:focus, +.show>.btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} + +.btn-light:disabled, +.btn-light.disabled { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-dark { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-dark:hover { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; +} + +.btn-check:focus+.btn-dark, +.btn-dark:focus { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} + +.btn-check:checked+.btn-dark, +.btn-check:active+.btn-dark, +.btn-dark:active, +.btn-dark.active, +.show>.btn-dark.dropdown-toggle { + color: #fff; + background-color: #1a1e21; + border-color: #191c1f; +} + +.btn-check:checked+.btn-dark:focus, +.btn-check:active+.btn-dark:focus, +.btn-dark:active:focus, +.btn-dark.active:focus, +.show>.btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} + +.btn-dark:disabled, +.btn-dark.disabled { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-outline-primary { + color: #0d6efd; + border-color: #0d6efd; +} + +.btn-outline-primary:hover { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-check:focus+.btn-outline-primary, +.btn-outline-primary:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +} + +.btn-check:checked+.btn-outline-primary, +.btn-check:active+.btn-outline-primary, +.btn-outline-primary:active, +.btn-outline-primary.active, +.btn-outline-primary.dropdown-toggle.show { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-check:checked+.btn-outline-primary:focus, +.btn-check:active+.btn-outline-primary:focus, +.btn-outline-primary:active:focus, +.btn-outline-primary.active:focus, +.btn-outline-primary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +} + +.btn-outline-primary:disabled, +.btn-outline-primary.disabled { + color: #0d6efd; + background-color: transparent; +} + +.btn-outline-secondary { + color: #6c757d; + border-color: #6c757d; +} + +.btn-outline-secondary:hover { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-check:focus+.btn-outline-secondary, +.btn-outline-secondary:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} + +.btn-check:checked+.btn-outline-secondary, +.btn-check:active+.btn-outline-secondary, +.btn-outline-secondary:active, +.btn-outline-secondary.active, +.btn-outline-secondary.dropdown-toggle.show { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-check:checked+.btn-outline-secondary:focus, +.btn-check:active+.btn-outline-secondary:focus, +.btn-outline-secondary:active:focus, +.btn-outline-secondary.active:focus, +.btn-outline-secondary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} + +.btn-outline-secondary:disabled, +.btn-outline-secondary.disabled { + color: #6c757d; + background-color: transparent; +} + +.btn-outline-success { + color: #198754; + border-color: #198754; +} + +.btn-outline-success:hover { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-check:focus+.btn-outline-success, +.btn-outline-success:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +} + +.btn-check:checked+.btn-outline-success, +.btn-check:active+.btn-outline-success, +.btn-outline-success:active, +.btn-outline-success.active, +.btn-outline-success.dropdown-toggle.show { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-check:checked+.btn-outline-success:focus, +.btn-check:active+.btn-outline-success:focus, +.btn-outline-success:active:focus, +.btn-outline-success.active:focus, +.btn-outline-success.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +} + +.btn-outline-success:disabled, +.btn-outline-success.disabled { + color: #198754; + background-color: transparent; +} + +.btn-outline-info { + color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-outline-info:hover { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-check:focus+.btn-outline-info, +.btn-outline-info:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +} + +.btn-check:checked+.btn-outline-info, +.btn-check:active+.btn-outline-info, +.btn-outline-info:active, +.btn-outline-info.active, +.btn-outline-info.dropdown-toggle.show { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-check:checked+.btn-outline-info:focus, +.btn-check:active+.btn-outline-info:focus, +.btn-outline-info:active:focus, +.btn-outline-info.active:focus, +.btn-outline-info.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +} + +.btn-outline-info:disabled, +.btn-outline-info.disabled { + color: #0dcaf0; + background-color: transparent; +} + +.btn-outline-warning { + color: #ffc107; + border-color: #ffc107; +} + +.btn-outline-warning:hover { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-check:focus+.btn-outline-warning, +.btn-outline-warning:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +} + +.btn-check:checked+.btn-outline-warning, +.btn-check:active+.btn-outline-warning, +.btn-outline-warning:active, +.btn-outline-warning.active, +.btn-outline-warning.dropdown-toggle.show { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-check:checked+.btn-outline-warning:focus, +.btn-check:active+.btn-outline-warning:focus, +.btn-outline-warning:active:focus, +.btn-outline-warning.active:focus, +.btn-outline-warning.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +} + +.btn-outline-warning:disabled, +.btn-outline-warning.disabled { + color: #ffc107; + background-color: transparent; +} + +.btn-outline-danger { + color: #dc3545; + border-color: #dc3545; +} + +.btn-outline-danger:hover { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-check:focus+.btn-outline-danger, +.btn-outline-danger:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +} + +.btn-check:checked+.btn-outline-danger, +.btn-check:active+.btn-outline-danger, +.btn-outline-danger:active, +.btn-outline-danger.active, +.btn-outline-danger.dropdown-toggle.show { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-check:checked+.btn-outline-danger:focus, +.btn-check:active+.btn-outline-danger:focus, +.btn-outline-danger:active:focus, +.btn-outline-danger.active:focus, +.btn-outline-danger.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +} + +.btn-outline-danger:disabled, +.btn-outline-danger.disabled { + color: #dc3545; + background-color: transparent; +} + +.btn-outline-light { + color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-outline-light:hover { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-check:focus+.btn-outline-light, +.btn-outline-light:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} + +.btn-check:checked+.btn-outline-light, +.btn-check:active+.btn-outline-light, +.btn-outline-light:active, +.btn-outline-light.active, +.btn-outline-light.dropdown-toggle.show { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-check:checked+.btn-outline-light:focus, +.btn-check:active+.btn-outline-light:focus, +.btn-outline-light:active:focus, +.btn-outline-light.active:focus, +.btn-outline-light.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} + +.btn-outline-light:disabled, +.btn-outline-light.disabled { + color: #f8f9fa; + background-color: transparent; +} + +.btn-outline-dark { + color: #212529; + border-color: #212529; +} + +.btn-outline-dark:hover { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-check:focus+.btn-outline-dark, +.btn-outline-dark:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +} + +.btn-check:checked+.btn-outline-dark, +.btn-check:active+.btn-outline-dark, +.btn-outline-dark:active, +.btn-outline-dark.active, +.btn-outline-dark.dropdown-toggle.show { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-check:checked+.btn-outline-dark:focus, +.btn-check:active+.btn-outline-dark:focus, +.btn-outline-dark:active:focus, +.btn-outline-dark.active:focus, +.btn-outline-dark.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +} + +.btn-outline-dark:disabled, +.btn-outline-dark.disabled { + color: #212529; + background-color: transparent; +} + +.btn-link { + font-weight: 400; + color: #0d6efd; + text-decoration: underline; +} + +.btn-link:hover { + color: #0a58ca; +} + +.btn-link:disabled, +.btn-link.disabled { + color: #6c757d; +} + +.btn-lg, +.btn-group-lg>.btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.btn-sm, +.btn-group-sm>.btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.fade { + transition: opacity 0.15s linear; +} + +@media (prefers-reduced-motion: reduce) { + .fade { + transition: none; + } +} + +.fade:not(.show) { + opacity: 0; +} + +.collapse:not(.show) { + display: none; +} + +.collapsing { + height: 0; + overflow: hidden; + transition: height 0.35s ease; +} + +@media (prefers-reduced-motion: reduce) { + .collapsing { + transition: none; + } +} + +.dropup, +.dropend, +.dropdown, +.dropstart { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; +} + +.dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid; + border-right: 0.3em solid transparent; + border-bottom: 0; + border-left: 0.3em solid transparent; +} + +.dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropdown-menu { + position: absolute; + z-index: 1000; + display: none; + min-width: 10rem; + padding: 0.5rem 0; + margin: 0; + font-size: 1rem; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} + +.dropdown-menu[data-bs-popper] { + top: 100%; + left: 0; + margin-top: 0.125rem; +} + +.dropdown-menu-start { + --bs-position: start; +} + +.dropdown-menu-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; +} + +.dropdown-menu-end { + --bs-position: end; +} + +.dropdown-menu-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; +} + +@media (min-width: 576px) { + .dropdown-menu-sm-start { + --bs-position: start; + } + + .dropdown-menu-sm-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-sm-end { + --bs-position: end; + } + + .dropdown-menu-sm-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 768px) { + .dropdown-menu-md-start { + --bs-position: start; + } + + .dropdown-menu-md-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-md-end { + --bs-position: end; + } + + .dropdown-menu-md-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 992px) { + .dropdown-menu-lg-start { + --bs-position: start; + } + + .dropdown-menu-lg-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-lg-end { + --bs-position: end; + } + + .dropdown-menu-lg-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 1200px) { + .dropdown-menu-xl-start { + --bs-position: start; + } + + .dropdown-menu-xl-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-xl-end { + --bs-position: end; + } + + .dropdown-menu-xl-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 1400px) { + .dropdown-menu-xxl-start { + --bs-position: start; + } + + .dropdown-menu-xxl-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-xxl-end { + --bs-position: end; + } + + .dropdown-menu-xxl-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +.dropup .dropdown-menu[data-bs-popper] { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: 0.125rem; +} + +.dropup .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0; + border-right: 0.3em solid transparent; + border-bottom: 0.3em solid; + border-left: 0.3em solid transparent; +} + +.dropup .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropend .dropdown-menu[data-bs-popper] { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: 0.125rem; +} + +.dropend .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0; + border-bottom: 0.3em solid transparent; + border-left: 0.3em solid; +} + +.dropend .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropend .dropdown-toggle::after { + vertical-align: 0; +} + +.dropstart .dropdown-menu[data-bs-popper] { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: 0.125rem; +} + +.dropstart .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; +} + +.dropstart .dropdown-toggle::after { + display: none; +} + +.dropstart .dropdown-toggle::before { + display: inline-block; + margin-right: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0.3em solid; + border-bottom: 0.3em solid transparent; +} + +.dropstart .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropstart .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-divider { + height: 0; + margin: 0.5rem 0; + overflow: hidden; + border-top: 1px solid rgba(0, 0, 0, 0.15); +} + +.dropdown-item { + display: block; + width: 100%; + padding: 0.25rem 1rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + text-decoration: none; + white-space: nowrap; + background-color: transparent; + border: 0; +} + +.dropdown-item:hover, +.dropdown-item:focus { + color: #1e2125; + background-color: #e9ecef; +} + +.dropdown-item.active, +.dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #0d6efd; +} + +.dropdown-item.disabled, +.dropdown-item:disabled { + color: #adb5bd; + pointer-events: none; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 0.875rem; + color: #6c757d; + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: 0.25rem 1rem; + color: #212529; +} + +.dropdown-menu-dark { + color: #dee2e6; + background-color: #343a40; + border-color: rgba(0, 0, 0, 0.15); +} + +.dropdown-menu-dark .dropdown-item { + color: #dee2e6; +} + +.dropdown-menu-dark .dropdown-item:hover, +.dropdown-menu-dark .dropdown-item:focus { + color: #fff; + background-color: rgba(255, 255, 255, 0.15); +} + +.dropdown-menu-dark .dropdown-item.active, +.dropdown-menu-dark .dropdown-item:active { + color: #fff; + background-color: #0d6efd; +} + +.dropdown-menu-dark .dropdown-item.disabled, +.dropdown-menu-dark .dropdown-item:disabled { + color: #adb5bd; +} + +.dropdown-menu-dark .dropdown-divider { + border-color: rgba(0, 0, 0, 0.15); +} + +.dropdown-menu-dark .dropdown-item-text { + color: #dee2e6; +} + +.dropdown-menu-dark .dropdown-header { + color: #adb5bd; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-flex; + vertical-align: middle; +} + +.btn-group>.btn, +.btn-group-vertical>.btn { + position: relative; + flex: 1 1 auto; +} + +.btn-group>.btn-check:checked+.btn, +.btn-group>.btn-check:focus+.btn, +.btn-group>.btn:hover, +.btn-group>.btn:focus, +.btn-group>.btn:active, +.btn-group>.btn.active, +.btn-group-vertical>.btn-check:checked+.btn, +.btn-group-vertical>.btn-check:focus+.btn, +.btn-group-vertical>.btn:hover, +.btn-group-vertical>.btn:focus, +.btn-group-vertical>.btn:active, +.btn-group-vertical>.btn.active { + z-index: 1; +} + +.btn-toolbar { + display: flex; + flex-wrap: wrap; + justify-content: flex-start; +} + +.btn-toolbar .input-group { + width: auto; +} + +.btn-group>.btn:not(:first-child), +.btn-group>.btn-group:not(:first-child) { + margin-left: -1px; +} + +.btn-group>.btn:not(:last-child):not(.dropdown-toggle), +.btn-group>.btn-group:not(:last-child)>.btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.btn-group>.btn:nth-child(n+3), +.btn-group> :not(.btn-check)+.btn, +.btn-group>.btn-group:not(:first-child)>.btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.dropdown-toggle-split { + padding-right: 0.5625rem; + padding-left: 0.5625rem; +} + +.dropdown-toggle-split::after, +.dropup .dropdown-toggle-split::after, +.dropend .dropdown-toggle-split::after { + margin-left: 0; +} + +.dropstart .dropdown-toggle-split::before { + margin-right: 0; +} + +.btn-sm+.dropdown-toggle-split, +.btn-group-sm>.btn+.dropdown-toggle-split { + padding-right: 0.375rem; + padding-left: 0.375rem; +} + +.btn-lg+.dropdown-toggle-split, +.btn-group-lg>.btn+.dropdown-toggle-split { + padding-right: 0.75rem; + padding-left: 0.75rem; +} + +.btn-group-vertical { + flex-direction: column; + align-items: flex-start; + justify-content: center; +} + +.btn-group-vertical>.btn, +.btn-group-vertical>.btn-group { + width: 100%; +} + +.btn-group-vertical>.btn:not(:first-child), +.btn-group-vertical>.btn-group:not(:first-child) { + margin-top: -1px; +} + +.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical>.btn-group:not(:last-child)>.btn { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.btn-group-vertical>.btn~.btn, +.btn-group-vertical>.btn-group:not(:first-child)>.btn { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav { + display: flex; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: 0.5rem 1rem; + color: #0d6efd; + text-decoration: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .nav-link { + transition: none; + } +} + +.nav-link:hover, +.nav-link:focus { + color: #0a58ca; +} + +.nav-link.disabled { + color: #6c757d; + pointer-events: none; + cursor: default; +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6; +} + +.nav-tabs .nav-link { + margin-bottom: -1px; + background: none; + border: 1px solid transparent; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.nav-tabs .nav-link:hover, +.nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; + isolation: isolate; +} + +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent; +} + +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav-pills .nav-link { + background: none; + border: 0; + border-radius: 0.25rem; +} + +.nav-pills .nav-link.active, +.nav-pills .show>.nav-link { + color: #fff; + background-color: #0d6efd; +} + +.nav-fill>.nav-link, +.nav-fill .nav-item { + flex: 1 1 auto; + text-align: center; +} + +.nav-justified>.nav-link, +.nav-justified .nav-item { + flex-basis: 0; + flex-grow: 1; + text-align: center; +} + +.nav-fill .nav-item .nav-link, +.nav-justified .nav-item .nav-link { + width: 100%; +} + +.tab-content>.tab-pane { + display: none; +} + +.tab-content>.active { + display: block; +} + +.navbar { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar>.container, +.navbar>.container-fluid, +.navbar>.container-sm, +.navbar>.container-md, +.navbar>.container-lg, +.navbar>.container-xl, +.navbar>.container-xxl { + display: flex; + flex-wrap: inherit; + align-items: center; + justify-content: space-between; +} + +.navbar-brand { + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; + margin-right: 1rem; + font-size: 1.25rem; + text-decoration: none; + white-space: nowrap; +} + +.navbar-nav { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0; +} + +.navbar-nav .dropdown-menu { + position: static; +} + +.navbar-text { + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar-collapse { + flex-basis: 100%; + flex-grow: 1; + align-items: center; +} + +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; + transition: box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .navbar-toggler { + transition: none; + } +} + +.navbar-toggler:hover { + text-decoration: none; +} + +.navbar-toggler:focus { + text-decoration: none; + outline: 0; + box-shadow: 0 0 0 0.25rem; +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + background-repeat: no-repeat; + background-position: center; + background-size: 100%; +} + +.navbar-nav-scroll { + max-height: var(--bs-scroll-height, 75vh); + overflow-y: auto; +} + +@media (min-width: 576px) { + .navbar-expand-sm { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-sm .navbar-nav { + flex-direction: row; + } + + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-sm .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-sm .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-sm .navbar-toggler { + display: none; + } +} + +@media (min-width: 768px) { + .navbar-expand-md { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-md .navbar-nav { + flex-direction: row; + } + + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-md .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-md .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-md .navbar-toggler { + display: none; + } +} + +@media (min-width: 992px) { + .navbar-expand-lg { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-lg .navbar-nav { + flex-direction: row; + } + + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-lg .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-lg .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-lg .navbar-toggler { + display: none; + } +} + +@media (min-width: 1200px) { + .navbar-expand-xl { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-xl .navbar-nav { + flex-direction: row; + } + + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-xl .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-xl .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-xl .navbar-toggler { + display: none; + } +} + +@media (min-width: 1400px) { + .navbar-expand-xxl { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-xxl .navbar-nav { + flex-direction: row; + } + + .navbar-expand-xxl .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-xxl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-xxl .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-xxl .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-xxl .navbar-toggler { + display: none; + } +} + +.navbar-expand { + flex-wrap: nowrap; + justify-content: flex-start; +} + +.navbar-expand .navbar-nav { + flex-direction: row; +} + +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} + +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} + +.navbar-expand .navbar-nav-scroll { + overflow: visible; +} + +.navbar-expand .navbar-collapse { + display: flex !important; + flex-basis: auto; +} + +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-brand:hover, +.navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.55); +} + +.navbar-light .navbar-nav .nav-link:hover, +.navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} + +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} + +.navbar-light .navbar-nav .show>.nav-link, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.55); + border-color: rgba(0, 0, 0, 0.1); +} + +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.55); +} + +.navbar-light .navbar-text a, +.navbar-light .navbar-text a:hover, +.navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} + +.navbar-dark .navbar-brand:hover, +.navbar-dark .navbar-brand:focus { + color: #fff; +} + +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.55); +} + +.navbar-dark .navbar-nav .nav-link:hover, +.navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} + +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} + +.navbar-dark .navbar-nav .show>.nav-link, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} + +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1); +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.55); +} + +.navbar-dark .navbar-text a, +.navbar-dark .navbar-text a:hover, +.navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} + +.card>hr { + margin-right: 0; + margin-left: 0; +} + +.card>.list-group { + border-top: inherit; + border-bottom: inherit; +} + +.card>.list-group:first-child { + border-top-width: 0; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card>.list-group:last-child { + border-bottom-width: 0; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card>.card-header+.list-group, +.card>.list-group+.card-footer { + border-top: 0; +} + +.card-body { + flex: 1 1 auto; + padding: 1rem 1rem; +} + +.card-title { + margin-bottom: 0.5rem; +} + +.card-subtitle { + margin-top: -0.25rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} + +.card-link+.card-link { + margin-left: 1rem; +} + +.card-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-footer { + padding: 0.5rem 1rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.card-header-tabs { + margin-right: -0.5rem; + margin-bottom: -0.5rem; + margin-left: -0.5rem; + border-bottom: 0; +} + +.card-header-pills { + margin-right: -0.5rem; + margin-left: -0.5rem; +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1rem; + border-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; +} + +.card-img, +.card-img-top { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-bottom { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-group>.card { + margin-bottom: 0.75rem; +} + +@media (min-width: 576px) { + .card-group { + display: flex; + flex-flow: row wrap; + } + + .card-group>.card { + flex: 1 0 0%; + margin-bottom: 0; + } + + .card-group>.card+.card { + margin-left: 0; + border-left: 0; + } + + .card-group>.card:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + .card-group>.card:not(:last-child) .card-img-top, + .card-group>.card:not(:last-child) .card-header { + border-top-right-radius: 0; + } + + .card-group>.card:not(:last-child) .card-img-bottom, + .card-group>.card:not(:last-child) .card-footer { + border-bottom-right-radius: 0; + } + + .card-group>.card:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + + .card-group>.card:not(:first-child) .card-img-top, + .card-group>.card:not(:first-child) .card-header { + border-top-left-radius: 0; + } + + .card-group>.card:not(:first-child) .card-img-bottom, + .card-group>.card:not(:first-child) .card-footer { + border-bottom-left-radius: 0; + } +} + +.accordion-button { + position: relative; + display: flex; + align-items: center; + width: 100%; + padding: 1rem 1.25rem; + font-size: 1rem; + color: #212529; + text-align: left; + background-color: #fff; + border: 0; + border-radius: 0; + overflow-anchor: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; +} + +@media (prefers-reduced-motion: reduce) { + .accordion-button { + transition: none; + } +} + +.accordion-button:not(.collapsed) { + color: #0c63e4; + background-color: #e7f1ff; + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125); +} + +.accordion-button:not(.collapsed)::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + transform: rotate(-180deg); +} + +.accordion-button::after { + flex-shrink: 0; + width: 1.25rem; + height: 1.25rem; + margin-left: auto; + content: ""; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-size: 1.25rem; + transition: transform 0.2s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .accordion-button::after { + transition: none; + } +} + +.accordion-button:hover { + z-index: 2; +} + +.accordion-button:focus { + z-index: 3; + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item { + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} + +.accordion-item:first-of-type { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.accordion-item:first-of-type .accordion-button { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.accordion-item:not(:first-of-type) { + border-top: 0; +} + +.accordion-item:last-of-type { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.accordion-item:last-of-type .accordion-collapse { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-body { + padding: 1rem 1.25rem; +} + +.accordion-flush .accordion-collapse { + border-width: 0; +} + +.accordion-flush .accordion-item { + border-right: 0; + border-left: 0; + border-radius: 0; +} + +.accordion-flush .accordion-item:first-child { + border-top: 0; +} + +.accordion-flush .accordion-item:last-child { + border-bottom: 0; +} + +.accordion-flush .accordion-item .accordion-button { + border-radius: 0; +} + +.breadcrumb { + display: flex; + flex-wrap: wrap; + padding: 0 0; + margin-bottom: 1rem; + list-style: none; +} + +.breadcrumb-item+.breadcrumb-item { + padding-left: 0.5rem; +} + +.breadcrumb-item+.breadcrumb-item::before { + float: left; + padding-right: 0.5rem; + color: #6c757d; + content: var(--bs-breadcrumb-divider, "/") + /* rtl: var(--bs-breadcrumb-divider, "/") */ + ; +} + +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: flex; + padding-left: 0; + list-style: none; +} + +.page-link { + position: relative; + display: block; + color: #0d6efd; + text-decoration: none; + background-color: #fff; + border: 1px solid #dee2e6; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .page-link { + transition: none; + } +} + +.page-link:hover { + z-index: 2; + color: #0a58ca; + background-color: #e9ecef; + border-color: #dee2e6; +} + +.page-link:focus { + z-index: 3; + color: #0a58ca; + background-color: #e9ecef; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.page-item:not(:first-child) .page-link { + margin-left: -1px; +} + +.page-item.active .page-link { + z-index: 3; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + background-color: #fff; + border-color: #dee2e6; +} + +.page-link { + padding: 0.375rem 0.75rem; +} + +.page-item:first-child .page-link { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; +} + +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} + +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; +} + +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} + +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.35em 0.65em; + font-size: 0.75em; + font-weight: 700; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; +} + +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.alert { + position: relative; + padding: 1rem 1rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; +} + +.alert-dismissible { + padding-right: 3rem; +} + +.alert-dismissible .btn-close { + position: absolute; + top: 0; + right: 0; + z-index: 2; + padding: 1.25rem 1rem; +} + +.alert-primary { + color: #084298; + background-color: #cfe2ff; + border-color: #b6d4fe; +} + +.alert-primary .alert-link { + color: #06357a; +} + +.alert-secondary { + color: #41464b; + background-color: #e2e3e5; + border-color: #d3d6d8; +} + +.alert-secondary .alert-link { + color: #34383c; +} + +.alert-success { + color: #0f5132; + background-color: #d1e7dd; + border-color: #badbcc; +} + +.alert-success .alert-link { + color: #0c4128; +} + +.alert-info { + color: #055160; + background-color: #cff4fc; + border-color: #b6effb; +} + +.alert-info .alert-link { + color: #04414d; +} + +.alert-warning { + color: #664d03; + background-color: #fff3cd; + border-color: #ffecb5; +} + +.alert-warning .alert-link { + color: #523e02; +} + +.alert-danger { + color: #842029; + background-color: #f8d7da; + border-color: #f5c2c7; +} + +.alert-danger .alert-link { + color: #6a1a21; +} + +.alert-light { + color: #636464; + background-color: #fefefe; + border-color: #fdfdfe; +} + +.alert-light .alert-link { + color: #4f5050; +} + +.alert-dark { + color: #141619; + background-color: #d3d3d4; + border-color: #bcbebf; +} + +.alert-dark .alert-link { + color: #101214; +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +.progress { + display: flex; + height: 1rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: flex; + flex-direction: column; + justify-content: center; + overflow: hidden; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #0d6efd; + transition: width 0.6s ease; +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar { + transition: none; + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem; +} + +.progress-bar-animated { + -webkit-animation: 1s linear infinite progress-bar-stripes; + animation: 1s linear infinite progress-bar-stripes; +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + -webkit-animation: none; + animation: none; + } +} + +.list-group { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + border-radius: 0.25rem; +} + +.list-group-numbered { + list-style-type: none; + counter-reset: section; +} + +.list-group-numbered>li::before { + content: counters(section, ".") ". "; + counter-increment: section; +} + +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit; +} + +.list-group-item-action:hover, +.list-group-item-action:focus { + z-index: 1; + color: #495057; + text-decoration: none; + background-color: #f8f9fa; +} + +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; +} + +.list-group-item { + position: relative; + display: block; + padding: 0.5rem 1rem; + color: #212529; + text-decoration: none; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} + +.list-group-item:first-child { + border-top-left-radius: inherit; + border-top-right-radius: inherit; +} + +.list-group-item:last-child { + border-bottom-right-radius: inherit; + border-bottom-left-radius: inherit; +} + +.list-group-item.disabled, +.list-group-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: #fff; +} + +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.list-group-item+.list-group-item { + border-top-width: 0; +} + +.list-group-item+.list-group-item.active { + margin-top: -1px; + border-top-width: 1px; +} + +.list-group-horizontal { + flex-direction: row; +} + +.list-group-horizontal>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; +} + +.list-group-horizontal>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; +} + +.list-group-horizontal>.list-group-item.active { + margin-top: 0; +} + +.list-group-horizontal>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; +} + +.list-group-horizontal>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; +} + +@media (min-width: 576px) { + .list-group-horizontal-sm { + flex-direction: row; + } + + .list-group-horizontal-sm>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-sm>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-sm>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-sm>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-sm>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 768px) { + .list-group-horizontal-md { + flex-direction: row; + } + + .list-group-horizontal-md>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-md>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-md>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-md>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-md>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 992px) { + .list-group-horizontal-lg { + flex-direction: row; + } + + .list-group-horizontal-lg>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-lg>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-lg>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-lg>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-lg>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 1200px) { + .list-group-horizontal-xl { + flex-direction: row; + } + + .list-group-horizontal-xl>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-xl>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-xl>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-xl>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-xl>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 1400px) { + .list-group-horizontal-xxl { + flex-direction: row; + } + + .list-group-horizontal-xxl>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-xxl>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-xxl>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-xxl>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-xxl>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +.list-group-flush { + border-radius: 0; +} + +.list-group-flush>.list-group-item { + border-width: 0 0 1px; +} + +.list-group-flush>.list-group-item:last-child { + border-bottom-width: 0; +} + +.list-group-item-primary { + color: #084298; + background-color: #cfe2ff; +} + +.list-group-item-primary.list-group-item-action:hover, +.list-group-item-primary.list-group-item-action:focus { + color: #084298; + background-color: #bacbe6; +} + +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #084298; + border-color: #084298; +} + +.list-group-item-secondary { + color: #41464b; + background-color: #e2e3e5; +} + +.list-group-item-secondary.list-group-item-action:hover, +.list-group-item-secondary.list-group-item-action:focus { + color: #41464b; + background-color: #cbccce; +} + +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #41464b; + border-color: #41464b; +} + +.list-group-item-success { + color: #0f5132; + background-color: #d1e7dd; +} + +.list-group-item-success.list-group-item-action:hover, +.list-group-item-success.list-group-item-action:focus { + color: #0f5132; + background-color: #bcd0c7; +} + +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #0f5132; + border-color: #0f5132; +} + +.list-group-item-info { + color: #055160; + background-color: #cff4fc; +} + +.list-group-item-info.list-group-item-action:hover, +.list-group-item-info.list-group-item-action:focus { + color: #055160; + background-color: #badce3; +} + +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #055160; + border-color: #055160; +} + +.list-group-item-warning { + color: #664d03; + background-color: #fff3cd; +} + +.list-group-item-warning.list-group-item-action:hover, +.list-group-item-warning.list-group-item-action:focus { + color: #664d03; + background-color: #e6dbb9; +} + +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #664d03; + border-color: #664d03; +} + +.list-group-item-danger { + color: #842029; + background-color: #f8d7da; +} + +.list-group-item-danger.list-group-item-action:hover, +.list-group-item-danger.list-group-item-action:focus { + color: #842029; + background-color: #dfc2c4; +} + +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #842029; + border-color: #842029; +} + +.list-group-item-light { + color: #636464; + background-color: #fefefe; +} + +.list-group-item-light.list-group-item-action:hover, +.list-group-item-light.list-group-item-action:focus { + color: #636464; + background-color: #e5e5e5; +} + +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #636464; + border-color: #636464; +} + +.list-group-item-dark { + color: #141619; + background-color: #d3d3d4; +} + +.list-group-item-dark.list-group-item-action:hover, +.list-group-item-dark.list-group-item-action:focus { + color: #141619; + background-color: #bebebf; +} + +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #141619; + border-color: #141619; +} + +.btn-close { + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.25em; + color: #000; + background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat; + border: 0; + border-radius: 0.25rem; + opacity: 0.5; +} + +.btn-close:hover { + color: #000; + text-decoration: none; + opacity: 0.75; +} + +.btn-close:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + opacity: 1; +} + +.btn-close:disabled, +.btn-close.disabled { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + opacity: 0.25; +} + +.btn-close-white { + filter: invert(1) grayscale(100%) brightness(200%); +} + +.toast { + width: 350px; + max-width: 100%; + font-size: 0.875rem; + pointer-events: auto; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} + +.toast:not(.showing):not(.show) { + opacity: 0; +} + +.toast.hide { + display: none; +} + +.toast-container { + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + max-width: 100%; + pointer-events: none; +} + +.toast-container> :not(:last-child) { + margin-bottom: 0.75rem; +} + +.toast-header { + display: flex; + align-items: center; + padding: 0.5rem 0.75rem; + color: #6c757d; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.toast-header .btn-close { + margin-right: -0.375rem; + margin-left: 0.75rem; +} + +.toast-body { + padding: 0.75rem; + word-wrap: break-word; +} + +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1060; + display: none; + width: 100%; + height: 100%; + overflow-x: hidden; + overflow-y: auto; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; +} + +.modal.fade .modal-dialog { + transition: transform 0.3s ease-out; + transform: translate(0, -50px); +} + +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } +} + +.modal.show .modal-dialog { + transform: none; +} + +.modal.modal-static .modal-dialog { + transform: scale(1.02); +} + +.modal-dialog-scrollable { + height: calc(100% - 1rem); +} + +.modal-dialog-scrollable .modal-content { + max-height: 100%; + overflow: hidden; +} + +.modal-dialog-scrollable .modal-body { + overflow-y: auto; +} + +.modal-dialog-centered { + display: flex; + align-items: center; + min-height: calc(100% - 1rem); +} + +.modal-content { + position: relative; + display: flex; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; +} + +.modal-backdrop { + position: fixed; + top: 0; + left: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000; +} + +.modal-backdrop.fade { + opacity: 0; +} + +.modal-backdrop.show { + opacity: 0.5; +} + +.modal-header { + display: flex; + flex-shrink: 0; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} + +.modal-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5; +} + +.modal-body { + position: relative; + flex: 1 1 auto; + padding: 1rem; +} + +.modal-footer { + display: flex; + flex-wrap: wrap; + flex-shrink: 0; + align-items: center; + justify-content: flex-end; + padding: 0.75rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: calc(0.3rem - 1px); + border-bottom-left-radius: calc(0.3rem - 1px); +} + +.modal-footer>* { + margin: 0.25rem; +} + +@media (min-width: 576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto; + } + + .modal-dialog-scrollable { + height: calc(100% - 3.5rem); + } + + .modal-dialog-centered { + min-height: calc(100% - 3.5rem); + } + + .modal-sm { + max-width: 300px; + } +} + +@media (min-width: 992px) { + + .modal-lg, + .modal-xl { + max-width: 800px; + } +} + +@media (min-width: 1200px) { + .modal-xl { + max-width: 1140px; + } +} + +.modal-fullscreen { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; +} + +.modal-fullscreen .modal-content { + height: 100%; + border: 0; + border-radius: 0; +} + +.modal-fullscreen .modal-header { + border-radius: 0; +} + +.modal-fullscreen .modal-body { + overflow-y: auto; +} + +.modal-fullscreen .modal-footer { + border-radius: 0; +} + +@media (max-width: 575.98px) { + .modal-fullscreen-sm-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-sm-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-sm-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-sm-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 767.98px) { + .modal-fullscreen-md-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-md-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-md-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-md-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-md-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 991.98px) { + .modal-fullscreen-lg-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-lg-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-lg-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-lg-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 1199.98px) { + .modal-fullscreen-xl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-xl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-xl-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-xl-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 1399.98px) { + .modal-fullscreen-xxl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-xxl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-xxl-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-xxl-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-xxl-down .modal-footer { + border-radius: 0; + } +} + +.tooltip { + position: absolute; + z-index: 1080; + display: block; + margin: 0; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + opacity: 0; +} + +.tooltip.show { + opacity: 0.9; +} + +.tooltip .tooltip-arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.4rem; +} + +.tooltip .tooltip-arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-tooltip-top, +.bs-tooltip-auto[data-popper-placement^=top] { + padding: 0.4rem 0; +} + +.bs-tooltip-top .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow { + bottom: 0; +} + +.bs-tooltip-top .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before { + top: -1px; + border-width: 0.4rem 0.4rem 0; + border-top-color: #000; +} + +.bs-tooltip-end, +.bs-tooltip-auto[data-popper-placement^=right] { + padding: 0 0.4rem; +} + +.bs-tooltip-end .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-end .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { + right: -1px; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; +} + +.bs-tooltip-bottom, +.bs-tooltip-auto[data-popper-placement^=bottom] { + padding: 0.4rem 0; +} + +.bs-tooltip-bottom .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow { + top: 0; +} + +.bs-tooltip-bottom .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before { + bottom: -1px; + border-width: 0 0.4rem 0.4rem; + border-bottom-color: #000; +} + +.bs-tooltip-start, +.bs-tooltip-auto[data-popper-placement^=left] { + padding: 0 0.4rem; +} + +.bs-tooltip-start .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-start .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { + left: -1px; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; +} + +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 0.25rem; +} + +.popover { + position: absolute; + top: 0; + left: 0 + /* rtl:ignore */ + ; + z-index: 1070; + display: block; + max-width: 276px; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; +} + +.popover .popover-arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.5rem; +} + +.popover .popover-arrow::before, +.popover .popover-arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-popover-top>.popover-arrow, +.bs-popover-auto[data-popper-placement^=top]>.popover-arrow { + bottom: calc(-0.5rem - 1px); +} + +.bs-popover-top>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before { + bottom: 0; + border-width: 0.5rem 0.5rem 0; + border-top-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-top>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after { + bottom: 1px; + border-width: 0.5rem 0.5rem 0; + border-top-color: #fff; +} + +.bs-popover-end>.popover-arrow, +.bs-popover-auto[data-popper-placement^=right]>.popover-arrow { + left: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; +} + +.bs-popover-end>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before { + left: 0; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-end>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after { + left: 1px; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: #fff; +} + +.bs-popover-bottom>.popover-arrow, +.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow { + top: calc(-0.5rem - 1px); +} + +.bs-popover-bottom>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before { + top: 0; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-bottom>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after { + top: 1px; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: #fff; +} + +.bs-popover-bottom .popover-header::before, +.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -0.5rem; + content: ""; + border-bottom: 1px solid #f0f0f0; +} + +.bs-popover-start>.popover-arrow, +.bs-popover-auto[data-popper-placement^=left]>.popover-arrow { + right: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; +} + +.bs-popover-start>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before { + right: 0; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-start>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after { + right: 1px; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: #fff; +} + +.popover-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 1rem; + background-color: #f0f0f0; + border-bottom: 1px solid #d8d8d8; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} + +.popover-header:empty { + display: none; +} + +.popover-body { + padding: 1rem 1rem; + color: #212529; +} + +.carousel { + position: relative; +} + +.carousel.pointer-event { + touch-action: pan-y; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} + +.carousel-inner::after { + display: block; + clear: both; + content: ""; +} + +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transition: transform 0.6s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none; + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +/* rtl:begin:ignore */ +.carousel-item-next:not(.carousel-item-start), +.active.carousel-item-end { + transform: translateX(100%); +} + +.carousel-item-prev:not(.carousel-item-end), +.active.carousel-item-start { + transform: translateX(-100%); +} + +/* rtl:end:ignore */ +.carousel-fade .carousel-item { + opacity: 0; + transition-property: opacity; + transform: none; +} + +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-start, +.carousel-fade .carousel-item-prev.carousel-item-end { + z-index: 1; + opacity: 1; +} + +.carousel-fade .active.carousel-item-start, +.carousel-fade .active.carousel-item-end { + z-index: 0; + opacity: 0; + transition: opacity 0s 0.6s; +} + +@media (prefers-reduced-motion: reduce) { + + .carousel-fade .active.carousel-item-start, + .carousel-fade .active.carousel-item-end { + transition: none; + } +} + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + z-index: 1; + display: flex; + align-items: center; + justify-content: center; + width: 15%; + padding: 0; + color: #fff; + text-align: center; + background: none; + border: 0; + opacity: 0.5; + transition: opacity 0.15s ease; +} + +@media (prefers-reduced-motion: reduce) { + + .carousel-control-prev, + .carousel-control-next { + transition: none; + } +} + +.carousel-control-prev:hover, +.carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: 0.9; +} + +.carousel-control-prev { + left: 0; +} + +.carousel-control-next { + right: 0; +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 2rem; + height: 2rem; + background-repeat: no-repeat; + background-position: 50%; + background-size: 100% 100%; +} + +/* rtl:options: { + "autoRename": true, + "stringMap":[ { + "name" : "prev-next", + "search" : "prev", + "replace" : "next" + } ] +} */ +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e"); +} + +.carousel-control-next-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); +} + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + display: flex; + justify-content: center; + padding: 0; + margin-right: 15%; + margin-bottom: 1rem; + margin-left: 15%; + list-style: none; +} + +.carousel-indicators [data-bs-target] { + box-sizing: content-box; + flex: 0 1 auto; + width: 30px; + height: 3px; + padding: 0; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border: 0; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: 0.5; + transition: opacity 0.6s ease; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-indicators [data-bs-target] { + transition: none; + } +} + +.carousel-indicators .active { + opacity: 1; +} + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 1.25rem; + left: 15%; + padding-top: 1.25rem; + padding-bottom: 1.25rem; + color: #fff; + text-align: center; +} + +.carousel-dark .carousel-control-prev-icon, +.carousel-dark .carousel-control-next-icon { + filter: invert(1) grayscale(100); +} + +.carousel-dark .carousel-indicators [data-bs-target] { + background-color: #000; +} + +.carousel-dark .carousel-caption { + color: #000; +} + +@-webkit-keyframes spinner-border { + to { + transform: rotate(360deg) + /* rtl:ignore */ + ; + } +} + +@keyframes spinner-border { + to { + transform: rotate(360deg) + /* rtl:ignore */ + ; + } +} + +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + border: 0.25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + -webkit-animation: 0.75s linear infinite spinner-border; + animation: 0.75s linear infinite spinner-border; +} + +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: 0.2em; +} + +@-webkit-keyframes spinner-grow { + 0% { + transform: scale(0); + } + + 50% { + opacity: 1; + transform: none; + } +} + +@keyframes spinner-grow { + 0% { + transform: scale(0); + } + + 50% { + opacity: 1; + transform: none; + } +} + +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + -webkit-animation: 0.75s linear infinite spinner-grow; + animation: 0.75s linear infinite spinner-grow; +} + +.spinner-grow-sm { + width: 1rem; + height: 1rem; +} + +@media (prefers-reduced-motion: reduce) { + + .spinner-border, + .spinner-grow { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; + } +} + +.offcanvas { + position: fixed; + bottom: 0; + z-index: 1050; + display: flex; + flex-direction: column; + max-width: 100%; + visibility: hidden; + background-color: #fff; + background-clip: padding-box; + outline: 0; + transition: transform 0.3s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .offcanvas { + transition: none; + } +} + +.offcanvas-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; +} + +.offcanvas-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.offcanvas-title { + margin-bottom: 0; + line-height: 1.5; +} + +.offcanvas-body { + flex-grow: 1; + padding: 1rem 1rem; + overflow-y: auto; +} + +.offcanvas-start { + top: 0; + left: 0; + width: 400px; + border-right: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(-100%); +} + +.offcanvas-end { + top: 0; + right: 0; + width: 400px; + border-left: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(100%); +} + +.offcanvas-top { + top: 0; + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(-100%); +} + +.offcanvas-bottom { + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-top: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(100%); +} + +.offcanvas.show { + transform: none; +} + +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.link-primary { + color: #0d6efd; +} + +.link-primary:hover, +.link-primary:focus { + color: #0a58ca; +} + +.link-secondary { + color: #6c757d; +} + +.link-secondary:hover, +.link-secondary:focus { + color: #565e64; +} + +.link-success { + color: #198754; +} + +.link-success:hover, +.link-success:focus { + color: #146c43; +} + +.link-info { + color: #0dcaf0; +} + +.link-info:hover, +.link-info:focus { + color: #3dd5f3; +} + +.link-warning { + color: #ffc107; +} + +.link-warning:hover, +.link-warning:focus { + color: #ffcd39; +} + +.link-danger { + color: #dc3545; +} + +.link-danger:hover, +.link-danger:focus { + color: #b02a37; +} + +.link-light { + color: #f8f9fa; +} + +.link-light:hover, +.link-light:focus { + color: #f9fafb; +} + +.link-dark { + color: #212529; +} + +.link-dark:hover, +.link-dark:focus { + color: #1a1e21; +} + +.ratio { + position: relative; + width: 100%; +} + +.ratio::before { + display: block; + padding-top: var(--bs-aspect-ratio); + content: ""; +} + +.ratio>* { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} + +.ratio-1x1 { + --bs-aspect-ratio: 100%; +} + +.ratio-4x3 { + --bs-aspect-ratio: calc(3 / 4 * 100%); +} + +.ratio-16x9 { + --bs-aspect-ratio: calc(9 / 16 * 100%); +} + +.ratio-21x9 { + --bs-aspect-ratio: calc(9 / 21 * 100%); +} + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; +} + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; +} + +.sticky-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; +} + +@media (min-width: 576px) { + .sticky-sm-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 768px) { + .sticky-md-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 992px) { + .sticky-lg-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 1200px) { + .sticky-xl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 1400px) { + .sticky-xxl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +.visually-hidden, +.visually-hidden-focusable:not(:focus):not(:focus-within) { + position: absolute !important; + width: 1px !important; + height: 1px !important; + padding: 0 !important; + margin: -1px !important; + overflow: hidden !important; + clip: rect(0, 0, 0, 0) !important; + white-space: nowrap !important; + border: 0 !important; +} + +.stretched-link::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1; + content: ""; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.float-start { + float: left !important; +} + +.float-end { + float: right !important; +} + +.float-none { + float: none !important; +} + +.overflow-auto { + overflow: auto !important; +} + +.overflow-hidden { + overflow: hidden !important; +} + +.overflow-visible { + overflow: visible !important; +} + +.overflow-scroll { + overflow: scroll !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-grid { + display: grid !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: flex !important; +} + +.d-inline-flex { + display: inline-flex !important; +} + +.d-none { + display: none !important; +} + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; +} + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; +} + +.shadow-none { + box-shadow: none !important; +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important; +} + +.top-0 { + top: 0 !important; +} + +.top-50 { + top: 50% !important; +} + +.top-100 { + top: 100% !important; +} + +.bottom-0 { + bottom: 0 !important; +} + +.bottom-50 { + bottom: 50% !important; +} + +.bottom-100 { + bottom: 100% !important; +} + +.start-0 { + left: 0 !important; +} + +.start-50 { + left: 50% !important; +} + +.start-100 { + left: 100% !important; +} + +.end-0 { + right: 0 !important; +} + +.end-50 { + right: 50% !important; +} + +.end-100 { + right: 100% !important; +} + +.translate-middle { + transform: translate(-50%, -50%) !important; +} + +.translate-middle-x { + transform: translateX(-50%) !important; +} + +.translate-middle-y { + transform: translateY(-50%) !important; +} + +.border { + border: 1px solid #dee2e6 !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top { + border-top: 1px solid #dee2e6 !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-end { + border-right: 1px solid #dee2e6 !important; +} + +.border-end-0 { + border-right: 0 !important; +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-start { + border-left: 1px solid #dee2e6 !important; +} + +.border-start-0 { + border-left: 0 !important; +} + +.border-primary { + border-color: #0d6efd !important; +} + +.border-secondary { + border-color: #6c757d !important; +} + +.border-success { + border-color: #198754 !important; +} + +.border-info { + border-color: #0dcaf0 !important; +} + +.border-warning { + border-color: #ffc107 !important; +} + +.border-danger { + border-color: #dc3545 !important; +} + +.border-light { + border-color: #f8f9fa !important; +} + +.border-dark { + border-color: #212529 !important; +} + +.border-white { + border-color: #fff !important; +} + +.border-1 { + border-width: 1px !important; +} + +.border-2 { + border-width: 2px !important; +} + +.border-3 { + border-width: 3px !important; +} + +.border-4 { + border-width: 4px !important; +} + +.border-5 { + border-width: 5px !important; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.vw-100 { + width: 100vw !important; +} + +.min-vw-100 { + min-width: 100vw !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.vh-100 { + height: 100vh !important; +} + +.min-vh-100 { + min-height: 100vh !important; +} + +.flex-fill { + flex: 1 1 auto !important; +} + +.flex-row { + flex-direction: row !important; +} + +.flex-column { + flex-direction: column !important; +} + +.flex-row-reverse { + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + flex-direction: column-reverse !important; +} + +.flex-grow-0 { + flex-grow: 0 !important; +} + +.flex-grow-1 { + flex-grow: 1 !important; +} + +.flex-shrink-0 { + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + flex-shrink: 1 !important; +} + +.flex-wrap { + flex-wrap: wrap !important; +} + +.flex-nowrap { + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important; +} + +.gap-0 { + gap: 0 !important; +} + +.gap-1 { + gap: 0.25rem !important; +} + +.gap-2 { + gap: 0.5rem !important; +} + +.gap-3 { + gap: 1rem !important; +} + +.gap-4 { + gap: 1.5rem !important; +} + +.gap-5 { + gap: 3rem !important; +} + +.justify-content-start { + justify-content: flex-start !important; +} + +.justify-content-end { + justify-content: flex-end !important; +} + +.justify-content-center { + justify-content: center !important; +} + +.justify-content-between { + justify-content: space-between !important; +} + +.justify-content-around { + justify-content: space-around !important; +} + +.justify-content-evenly { + justify-content: space-evenly !important; +} + +.align-items-start { + align-items: flex-start !important; +} + +.align-items-end { + align-items: flex-end !important; +} + +.align-items-center { + align-items: center !important; +} + +.align-items-baseline { + align-items: baseline !important; +} + +.align-items-stretch { + align-items: stretch !important; +} + +.align-content-start { + align-content: flex-start !important; +} + +.align-content-end { + align-content: flex-end !important; +} + +.align-content-center { + align-content: center !important; +} + +.align-content-between { + align-content: space-between !important; +} + +.align-content-around { + align-content: space-around !important; +} + +.align-content-stretch { + align-content: stretch !important; +} + +.align-self-auto { + align-self: auto !important; +} + +.align-self-start { + align-self: flex-start !important; +} + +.align-self-end { + align-self: flex-end !important; +} + +.align-self-center { + align-self: center !important; +} + +.align-self-baseline { + align-self: baseline !important; +} + +.align-self-stretch { + align-self: stretch !important; +} + +.order-first { + order: -1 !important; +} + +.order-0 { + order: 0 !important; +} + +.order-1 { + order: 1 !important; +} + +.order-2 { + order: 2 !important; +} + +.order-3 { + order: 3 !important; +} + +.order-4 { + order: 4 !important; +} + +.order-5 { + order: 5 !important; +} + +.order-last { + order: 6 !important; +} + +.m-0 { + margin: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.m-3 { + margin: 1rem !important; +} + +.m-4 { + margin: 1.5rem !important; +} + +.m-5 { + margin: 3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mx-0 { + margin-right: 0 !important; + margin-left: 0 !important; +} + +.mx-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; +} + +.mx-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; +} + +.mx-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; +} + +.mx-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; +} + +.mx-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; +} + +.mx-auto { + margin-right: auto !important; + margin-left: auto !important; +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.my-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; +} + +.my-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; +} + +.my-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; +} + +.my-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; +} + +.my-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; +} + +.mt-0 { + margin-top: 0 !important; +} + +.mt-1 { + margin-top: 0.25rem !important; +} + +.mt-2 { + margin-top: 0.5rem !important; +} + +.mt-3 { + margin-top: 1rem !important; +} + +.mt-4 { + margin-top: 1.5rem !important; +} + +.mt-5 { + margin-top: 3rem !important; +} + +.mt-auto { + margin-top: auto !important; +} + +.me-0 { + margin-right: 0 !important; +} + +.me-1 { + margin-right: 0.25rem !important; +} + +.me-2 { + margin-right: 0.5rem !important; +} + +.me-3 { + margin-right: 1rem !important; +} + +.me-4 { + margin-right: 1.5rem !important; +} + +.me-5 { + margin-right: 3rem !important; +} + +.me-auto { + margin-right: auto !important; +} + +.mb-0 { + margin-bottom: 0 !important; +} + +.mb-1 { + margin-bottom: 0.25rem !important; +} + +.mb-2 { + margin-bottom: 0.5rem !important; +} + +.mb-3 { + margin-bottom: 1rem !important; +} + +.mb-4 { + margin-bottom: 1.5rem !important; +} + +.mb-5 { + margin-bottom: 3rem !important; +} + +.mb-auto { + margin-bottom: auto !important; +} + +.ms-0 { + margin-left: 0 !important; +} + +.ms-1 { + margin-left: 0.25rem !important; +} + +.ms-2 { + margin-left: 0.5rem !important; +} + +.ms-3 { + margin-left: 1rem !important; +} + +.ms-4 { + margin-left: 1.5rem !important; +} + +.ms-5 { + margin-left: 3rem !important; +} + +.ms-auto { + margin-left: auto !important; +} + +.p-0 { + padding: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.p-3 { + padding: 1rem !important; +} + +.p-4 { + padding: 1.5rem !important; +} + +.p-5 { + padding: 3rem !important; +} + +.px-0 { + padding-right: 0 !important; + padding-left: 0 !important; +} + +.px-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; +} + +.px-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; +} + +.px-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; +} + +.px-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; +} + +.px-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; +} + +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + +.py-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; +} + +.py-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; +} + +.py-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; +} + +.py-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; +} + +.py-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; +} + +.pt-0 { + padding-top: 0 !important; +} + +.pt-1 { + padding-top: 0.25rem !important; +} + +.pt-2 { + padding-top: 0.5rem !important; +} + +.pt-3 { + padding-top: 1rem !important; +} + +.pt-4 { + padding-top: 1.5rem !important; +} + +.pt-5 { + padding-top: 3rem !important; +} + +.pe-0 { + padding-right: 0 !important; +} + +.pe-1 { + padding-right: 0.25rem !important; +} + +.pe-2 { + padding-right: 0.5rem !important; +} + +.pe-3 { + padding-right: 1rem !important; +} + +.pe-4 { + padding-right: 1.5rem !important; +} + +.pe-5 { + padding-right: 3rem !important; +} + +.pb-0 { + padding-bottom: 0 !important; +} + +.pb-1 { + padding-bottom: 0.25rem !important; +} + +.pb-2 { + padding-bottom: 0.5rem !important; +} + +.pb-3 { + padding-bottom: 1rem !important; +} + +.pb-4 { + padding-bottom: 1.5rem !important; +} + +.pb-5 { + padding-bottom: 3rem !important; +} + +.ps-0 { + padding-left: 0 !important; +} + +.ps-1 { + padding-left: 0.25rem !important; +} + +.ps-2 { + padding-left: 0.5rem !important; +} + +.ps-3 { + padding-left: 1rem !important; +} + +.ps-4 { + padding-left: 1.5rem !important; +} + +.ps-5 { + padding-left: 3rem !important; +} + +.font-monospace { + font-family: var(--bs-font-monospace) !important; +} + +.fs-1 { + font-size: calc(1.375rem + 1.5vw) !important; +} + +.fs-2 { + font-size: calc(1.325rem + 0.9vw) !important; +} + +.fs-3 { + font-size: calc(1.3rem + 0.6vw) !important; +} + +.fs-4 { + font-size: calc(1.275rem + 0.3vw) !important; +} + +.fs-5 { + font-size: 1.25rem !important; +} + +.fs-6 { + font-size: 1rem !important; +} + +.fst-italic { + font-style: italic !important; +} + +.fst-normal { + font-style: normal !important; +} + +.fw-light { + font-weight: 300 !important; +} + +.fw-lighter { + font-weight: lighter !important; +} + +.fw-normal { + font-weight: 400 !important; +} + +.fw-bold { + font-weight: 700 !important; +} + +.fw-bolder { + font-weight: bolder !important; +} + +.lh-1 { + line-height: 1 !important; +} + +.lh-sm { + line-height: 1.25 !important; +} + +.lh-base { + line-height: 1.5 !important; +} + +.lh-lg { + line-height: 2 !important; +} + +.text-start { + text-align: left !important; +} + +.text-end { + text-align: right !important; +} + +.text-center { + text-align: center !important; +} + +.text-decoration-none { + text-decoration: none !important; +} + +.text-decoration-underline { + text-decoration: underline !important; +} + +.text-decoration-line-through { + text-decoration: line-through !important; +} + +.text-lowercase { + text-transform: lowercase !important; +} + +.text-uppercase { + text-transform: uppercase !important; +} + +.text-capitalize { + text-transform: capitalize !important; +} + +.text-wrap { + white-space: normal !important; +} + +.text-nowrap { + white-space: nowrap !important; +} + +/* rtl:begin:remove */ +.text-break { + word-wrap: break-word !important; + word-break: break-word !important; +} + +/* rtl:end:remove */ +.text-primary { + color: #0d6efd !important; +} + +.text-secondary { + color: #6c757d !important; +} + +.text-success { + color: #198754 !important; +} + +.text-info { + color: #0dcaf0 !important; +} + +.text-warning { + color: #ffc107 !important; +} + +.text-danger { + color: #dc3545 !important; +} + +.text-light { + color: #f8f9fa !important; +} + +.text-dark { + color: #212529 !important; +} + +.text-white { + color: #fff !important; +} + +.text-body { + color: #212529 !important; +} + +.text-muted { + color: #6c757d !important; +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-reset { + color: inherit !important; +} + +.bg-primary { + background-color: #0d6efd !important; +} + +.bg-secondary { + background-color: #6c757d !important; +} + +.bg-success { + background-color: #198754 !important; +} + +.bg-info { + background-color: #0dcaf0 !important; +} + +.bg-warning { + background-color: #ffc107 !important; +} + +.bg-danger { + background-color: #dc3545 !important; +} + +.bg-light { + background-color: #f8f9fa !important; +} + +.bg-dark { + background-color: #212529 !important; +} + +.bg-body { + background-color: #fff !important; +} + +.bg-white { + background-color: #fff !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.bg-gradient { + background-image: var(--bs-gradient) !important; +} + +.user-select-all { + -webkit-user-select: all !important; + -moz-user-select: all !important; + user-select: all !important; +} + +.user-select-auto { + -webkit-user-select: auto !important; + -moz-user-select: auto !important; + user-select: auto !important; +} + +.user-select-none { + -webkit-user-select: none !important; + -moz-user-select: none !important; + user-select: none !important; +} + +.pe-none { + pointer-events: none !important; +} + +.pe-auto { + pointer-events: auto !important; +} + +.rounded { + border-radius: 0.25rem !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.rounded-1 { + border-radius: 0.2rem !important; +} + +.rounded-2 { + border-radius: 0.25rem !important; +} + +.rounded-3 { + border-radius: 0.3rem !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-pill { + border-radius: 50rem !important; +} + +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} + +.rounded-end { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} + +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-start { + border-bottom-left-radius: 0.25rem !important; + border-top-left-radius: 0.25rem !important; +} + +.visible { + visibility: visible !important; +} + +.invisible { + visibility: hidden !important; +} + +@media (min-width: 576px) { + .float-sm-start { + float: left !important; + } + + .float-sm-end { + float: right !important; + } + + .float-sm-none { + float: none !important; + } + + .d-sm-inline { + display: inline !important; + } + + .d-sm-inline-block { + display: inline-block !important; + } + + .d-sm-block { + display: block !important; + } + + .d-sm-grid { + display: grid !important; + } + + .d-sm-table { + display: table !important; + } + + .d-sm-table-row { + display: table-row !important; + } + + .d-sm-table-cell { + display: table-cell !important; + } + + .d-sm-flex { + display: flex !important; + } + + .d-sm-inline-flex { + display: inline-flex !important; + } + + .d-sm-none { + display: none !important; + } + + .flex-sm-fill { + flex: 1 1 auto !important; + } + + .flex-sm-row { + flex-direction: row !important; + } + + .flex-sm-column { + flex-direction: column !important; + } + + .flex-sm-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-sm-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-sm-grow-0 { + flex-grow: 0 !important; + } + + .flex-sm-grow-1 { + flex-grow: 1 !important; + } + + .flex-sm-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-sm-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-sm-wrap { + flex-wrap: wrap !important; + } + + .flex-sm-nowrap { + flex-wrap: nowrap !important; + } + + .flex-sm-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-sm-0 { + gap: 0 !important; + } + + .gap-sm-1 { + gap: 0.25rem !important; + } + + .gap-sm-2 { + gap: 0.5rem !important; + } + + .gap-sm-3 { + gap: 1rem !important; + } + + .gap-sm-4 { + gap: 1.5rem !important; + } + + .gap-sm-5 { + gap: 3rem !important; + } + + .justify-content-sm-start { + justify-content: flex-start !important; + } + + .justify-content-sm-end { + justify-content: flex-end !important; + } + + .justify-content-sm-center { + justify-content: center !important; + } + + .justify-content-sm-between { + justify-content: space-between !important; + } + + .justify-content-sm-around { + justify-content: space-around !important; + } + + .justify-content-sm-evenly { + justify-content: space-evenly !important; + } + + .align-items-sm-start { + align-items: flex-start !important; + } + + .align-items-sm-end { + align-items: flex-end !important; + } + + .align-items-sm-center { + align-items: center !important; + } + + .align-items-sm-baseline { + align-items: baseline !important; + } + + .align-items-sm-stretch { + align-items: stretch !important; + } + + .align-content-sm-start { + align-content: flex-start !important; + } + + .align-content-sm-end { + align-content: flex-end !important; + } + + .align-content-sm-center { + align-content: center !important; + } + + .align-content-sm-between { + align-content: space-between !important; + } + + .align-content-sm-around { + align-content: space-around !important; + } + + .align-content-sm-stretch { + align-content: stretch !important; + } + + .align-self-sm-auto { + align-self: auto !important; + } + + .align-self-sm-start { + align-self: flex-start !important; + } + + .align-self-sm-end { + align-self: flex-end !important; + } + + .align-self-sm-center { + align-self: center !important; + } + + .align-self-sm-baseline { + align-self: baseline !important; + } + + .align-self-sm-stretch { + align-self: stretch !important; + } + + .order-sm-first { + order: -1 !important; + } + + .order-sm-0 { + order: 0 !important; + } + + .order-sm-1 { + order: 1 !important; + } + + .order-sm-2 { + order: 2 !important; + } + + .order-sm-3 { + order: 3 !important; + } + + .order-sm-4 { + order: 4 !important; + } + + .order-sm-5 { + order: 5 !important; + } + + .order-sm-last { + order: 6 !important; + } + + .m-sm-0 { + margin: 0 !important; + } + + .m-sm-1 { + margin: 0.25rem !important; + } + + .m-sm-2 { + margin: 0.5rem !important; + } + + .m-sm-3 { + margin: 1rem !important; + } + + .m-sm-4 { + margin: 1.5rem !important; + } + + .m-sm-5 { + margin: 3rem !important; + } + + .m-sm-auto { + margin: auto !important; + } + + .mx-sm-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-sm-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-sm-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-sm-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-sm-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-sm-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-sm-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-sm-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-sm-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-sm-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-sm-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-sm-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-sm-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-sm-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-sm-0 { + margin-top: 0 !important; + } + + .mt-sm-1 { + margin-top: 0.25rem !important; + } + + .mt-sm-2 { + margin-top: 0.5rem !important; + } + + .mt-sm-3 { + margin-top: 1rem !important; + } + + .mt-sm-4 { + margin-top: 1.5rem !important; + } + + .mt-sm-5 { + margin-top: 3rem !important; + } + + .mt-sm-auto { + margin-top: auto !important; + } + + .me-sm-0 { + margin-right: 0 !important; + } + + .me-sm-1 { + margin-right: 0.25rem !important; + } + + .me-sm-2 { + margin-right: 0.5rem !important; + } + + .me-sm-3 { + margin-right: 1rem !important; + } + + .me-sm-4 { + margin-right: 1.5rem !important; + } + + .me-sm-5 { + margin-right: 3rem !important; + } + + .me-sm-auto { + margin-right: auto !important; + } + + .mb-sm-0 { + margin-bottom: 0 !important; + } + + .mb-sm-1 { + margin-bottom: 0.25rem !important; + } + + .mb-sm-2 { + margin-bottom: 0.5rem !important; + } + + .mb-sm-3 { + margin-bottom: 1rem !important; + } + + .mb-sm-4 { + margin-bottom: 1.5rem !important; + } + + .mb-sm-5 { + margin-bottom: 3rem !important; + } + + .mb-sm-auto { + margin-bottom: auto !important; + } + + .ms-sm-0 { + margin-left: 0 !important; + } + + .ms-sm-1 { + margin-left: 0.25rem !important; + } + + .ms-sm-2 { + margin-left: 0.5rem !important; + } + + .ms-sm-3 { + margin-left: 1rem !important; + } + + .ms-sm-4 { + margin-left: 1.5rem !important; + } + + .ms-sm-5 { + margin-left: 3rem !important; + } + + .ms-sm-auto { + margin-left: auto !important; + } + + .p-sm-0 { + padding: 0 !important; + } + + .p-sm-1 { + padding: 0.25rem !important; + } + + .p-sm-2 { + padding: 0.5rem !important; + } + + .p-sm-3 { + padding: 1rem !important; + } + + .p-sm-4 { + padding: 1.5rem !important; + } + + .p-sm-5 { + padding: 3rem !important; + } + + .px-sm-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-sm-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-sm-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-sm-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-sm-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-sm-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-sm-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-sm-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-sm-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-sm-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-sm-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-sm-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-sm-0 { + padding-top: 0 !important; + } + + .pt-sm-1 { + padding-top: 0.25rem !important; + } + + .pt-sm-2 { + padding-top: 0.5rem !important; + } + + .pt-sm-3 { + padding-top: 1rem !important; + } + + .pt-sm-4 { + padding-top: 1.5rem !important; + } + + .pt-sm-5 { + padding-top: 3rem !important; + } + + .pe-sm-0 { + padding-right: 0 !important; + } + + .pe-sm-1 { + padding-right: 0.25rem !important; + } + + .pe-sm-2 { + padding-right: 0.5rem !important; + } + + .pe-sm-3 { + padding-right: 1rem !important; + } + + .pe-sm-4 { + padding-right: 1.5rem !important; + } + + .pe-sm-5 { + padding-right: 3rem !important; + } + + .pb-sm-0 { + padding-bottom: 0 !important; + } + + .pb-sm-1 { + padding-bottom: 0.25rem !important; + } + + .pb-sm-2 { + padding-bottom: 0.5rem !important; + } + + .pb-sm-3 { + padding-bottom: 1rem !important; + } + + .pb-sm-4 { + padding-bottom: 1.5rem !important; + } + + .pb-sm-5 { + padding-bottom: 3rem !important; + } + + .ps-sm-0 { + padding-left: 0 !important; + } + + .ps-sm-1 { + padding-left: 0.25rem !important; + } + + .ps-sm-2 { + padding-left: 0.5rem !important; + } + + .ps-sm-3 { + padding-left: 1rem !important; + } + + .ps-sm-4 { + padding-left: 1.5rem !important; + } + + .ps-sm-5 { + padding-left: 3rem !important; + } + + .text-sm-start { + text-align: left !important; + } + + .text-sm-end { + text-align: right !important; + } + + .text-sm-center { + text-align: center !important; + } +} + +@media (min-width: 768px) { + .float-md-start { + float: left !important; + } + + .float-md-end { + float: right !important; + } + + .float-md-none { + float: none !important; + } + + .d-md-inline { + display: inline !important; + } + + .d-md-inline-block { + display: inline-block !important; + } + + .d-md-block { + display: block !important; + } + + .d-md-grid { + display: grid !important; + } + + .d-md-table { + display: table !important; + } + + .d-md-table-row { + display: table-row !important; + } + + .d-md-table-cell { + display: table-cell !important; + } + + .d-md-flex { + display: flex !important; + } + + .d-md-inline-flex { + display: inline-flex !important; + } + + .d-md-none { + display: none !important; + } + + .flex-md-fill { + flex: 1 1 auto !important; + } + + .flex-md-row { + flex-direction: row !important; + } + + .flex-md-column { + flex-direction: column !important; + } + + .flex-md-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-md-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-md-grow-0 { + flex-grow: 0 !important; + } + + .flex-md-grow-1 { + flex-grow: 1 !important; + } + + .flex-md-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-md-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-md-wrap { + flex-wrap: wrap !important; + } + + .flex-md-nowrap { + flex-wrap: nowrap !important; + } + + .flex-md-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-md-0 { + gap: 0 !important; + } + + .gap-md-1 { + gap: 0.25rem !important; + } + + .gap-md-2 { + gap: 0.5rem !important; + } + + .gap-md-3 { + gap: 1rem !important; + } + + .gap-md-4 { + gap: 1.5rem !important; + } + + .gap-md-5 { + gap: 3rem !important; + } + + .justify-content-md-start { + justify-content: flex-start !important; + } + + .justify-content-md-end { + justify-content: flex-end !important; + } + + .justify-content-md-center { + justify-content: center !important; + } + + .justify-content-md-between { + justify-content: space-between !important; + } + + .justify-content-md-around { + justify-content: space-around !important; + } + + .justify-content-md-evenly { + justify-content: space-evenly !important; + } + + .align-items-md-start { + align-items: flex-start !important; + } + + .align-items-md-end { + align-items: flex-end !important; + } + + .align-items-md-center { + align-items: center !important; + } + + .align-items-md-baseline { + align-items: baseline !important; + } + + .align-items-md-stretch { + align-items: stretch !important; + } + + .align-content-md-start { + align-content: flex-start !important; + } + + .align-content-md-end { + align-content: flex-end !important; + } + + .align-content-md-center { + align-content: center !important; + } + + .align-content-md-between { + align-content: space-between !important; + } + + .align-content-md-around { + align-content: space-around !important; + } + + .align-content-md-stretch { + align-content: stretch !important; + } + + .align-self-md-auto { + align-self: auto !important; + } + + .align-self-md-start { + align-self: flex-start !important; + } + + .align-self-md-end { + align-self: flex-end !important; + } + + .align-self-md-center { + align-self: center !important; + } + + .align-self-md-baseline { + align-self: baseline !important; + } + + .align-self-md-stretch { + align-self: stretch !important; + } + + .order-md-first { + order: -1 !important; + } + + .order-md-0 { + order: 0 !important; + } + + .order-md-1 { + order: 1 !important; + } + + .order-md-2 { + order: 2 !important; + } + + .order-md-3 { + order: 3 !important; + } + + .order-md-4 { + order: 4 !important; + } + + .order-md-5 { + order: 5 !important; + } + + .order-md-last { + order: 6 !important; + } + + .m-md-0 { + margin: 0 !important; + } + + .m-md-1 { + margin: 0.25rem !important; + } + + .m-md-2 { + margin: 0.5rem !important; + } + + .m-md-3 { + margin: 1rem !important; + } + + .m-md-4 { + margin: 1.5rem !important; + } + + .m-md-5 { + margin: 3rem !important; + } + + .m-md-auto { + margin: auto !important; + } + + .mx-md-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-md-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-md-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-md-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-md-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-md-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-md-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-md-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-md-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-md-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-md-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-md-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-md-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-md-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-md-0 { + margin-top: 0 !important; + } + + .mt-md-1 { + margin-top: 0.25rem !important; + } + + .mt-md-2 { + margin-top: 0.5rem !important; + } + + .mt-md-3 { + margin-top: 1rem !important; + } + + .mt-md-4 { + margin-top: 1.5rem !important; + } + + .mt-md-5 { + margin-top: 3rem !important; + } + + .mt-md-auto { + margin-top: auto !important; + } + + .me-md-0 { + margin-right: 0 !important; + } + + .me-md-1 { + margin-right: 0.25rem !important; + } + + .me-md-2 { + margin-right: 0.5rem !important; + } + + .me-md-3 { + margin-right: 1rem !important; + } + + .me-md-4 { + margin-right: 1.5rem !important; + } + + .me-md-5 { + margin-right: 3rem !important; + } + + .me-md-auto { + margin-right: auto !important; + } + + .mb-md-0 { + margin-bottom: 0 !important; + } + + .mb-md-1 { + margin-bottom: 0.25rem !important; + } + + .mb-md-2 { + margin-bottom: 0.5rem !important; + } + + .mb-md-3 { + margin-bottom: 1rem !important; + } + + .mb-md-4 { + margin-bottom: 1.5rem !important; + } + + .mb-md-5 { + margin-bottom: 3rem !important; + } + + .mb-md-auto { + margin-bottom: auto !important; + } + + .ms-md-0 { + margin-left: 0 !important; + } + + .ms-md-1 { + margin-left: 0.25rem !important; + } + + .ms-md-2 { + margin-left: 0.5rem !important; + } + + .ms-md-3 { + margin-left: 1rem !important; + } + + .ms-md-4 { + margin-left: 1.5rem !important; + } + + .ms-md-5 { + margin-left: 3rem !important; + } + + .ms-md-auto { + margin-left: auto !important; + } + + .p-md-0 { + padding: 0 !important; + } + + .p-md-1 { + padding: 0.25rem !important; + } + + .p-md-2 { + padding: 0.5rem !important; + } + + .p-md-3 { + padding: 1rem !important; + } + + .p-md-4 { + padding: 1.5rem !important; + } + + .p-md-5 { + padding: 3rem !important; + } + + .px-md-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-md-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-md-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-md-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-md-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-md-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-md-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-md-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-md-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-md-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-md-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-md-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-md-0 { + padding-top: 0 !important; + } + + .pt-md-1 { + padding-top: 0.25rem !important; + } + + .pt-md-2 { + padding-top: 0.5rem !important; + } + + .pt-md-3 { + padding-top: 1rem !important; + } + + .pt-md-4 { + padding-top: 1.5rem !important; + } + + .pt-md-5 { + padding-top: 3rem !important; + } + + .pe-md-0 { + padding-right: 0 !important; + } + + .pe-md-1 { + padding-right: 0.25rem !important; + } + + .pe-md-2 { + padding-right: 0.5rem !important; + } + + .pe-md-3 { + padding-right: 1rem !important; + } + + .pe-md-4 { + padding-right: 1.5rem !important; + } + + .pe-md-5 { + padding-right: 3rem !important; + } + + .pb-md-0 { + padding-bottom: 0 !important; + } + + .pb-md-1 { + padding-bottom: 0.25rem !important; + } + + .pb-md-2 { + padding-bottom: 0.5rem !important; + } + + .pb-md-3 { + padding-bottom: 1rem !important; + } + + .pb-md-4 { + padding-bottom: 1.5rem !important; + } + + .pb-md-5 { + padding-bottom: 3rem !important; + } + + .ps-md-0 { + padding-left: 0 !important; + } + + .ps-md-1 { + padding-left: 0.25rem !important; + } + + .ps-md-2 { + padding-left: 0.5rem !important; + } + + .ps-md-3 { + padding-left: 1rem !important; + } + + .ps-md-4 { + padding-left: 1.5rem !important; + } + + .ps-md-5 { + padding-left: 3rem !important; + } + + .text-md-start { + text-align: left !important; + } + + .text-md-end { + text-align: right !important; + } + + .text-md-center { + text-align: center !important; + } +} + +@media (min-width: 992px) { + .float-lg-start { + float: left !important; + } + + .float-lg-end { + float: right !important; + } + + .float-lg-none { + float: none !important; + } + + .d-lg-inline { + display: inline !important; + } + + .d-lg-inline-block { + display: inline-block !important; + } + + .d-lg-block { + display: block !important; + } + + .d-lg-grid { + display: grid !important; + } + + .d-lg-table { + display: table !important; + } + + .d-lg-table-row { + display: table-row !important; + } + + .d-lg-table-cell { + display: table-cell !important; + } + + .d-lg-flex { + display: flex !important; + } + + .d-lg-inline-flex { + display: inline-flex !important; + } + + .d-lg-none { + display: none !important; + } + + .flex-lg-fill { + flex: 1 1 auto !important; + } + + .flex-lg-row { + flex-direction: row !important; + } + + .flex-lg-column { + flex-direction: column !important; + } + + .flex-lg-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-lg-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-lg-grow-0 { + flex-grow: 0 !important; + } + + .flex-lg-grow-1 { + flex-grow: 1 !important; + } + + .flex-lg-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-lg-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-lg-wrap { + flex-wrap: wrap !important; + } + + .flex-lg-nowrap { + flex-wrap: nowrap !important; + } + + .flex-lg-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-lg-0 { + gap: 0 !important; + } + + .gap-lg-1 { + gap: 0.25rem !important; + } + + .gap-lg-2 { + gap: 0.5rem !important; + } + + .gap-lg-3 { + gap: 1rem !important; + } + + .gap-lg-4 { + gap: 1.5rem !important; + } + + .gap-lg-5 { + gap: 3rem !important; + } + + .justify-content-lg-start { + justify-content: flex-start !important; + } + + .justify-content-lg-end { + justify-content: flex-end !important; + } + + .justify-content-lg-center { + justify-content: center !important; + } + + .justify-content-lg-between { + justify-content: space-between !important; + } + + .justify-content-lg-around { + justify-content: space-around !important; + } + + .justify-content-lg-evenly { + justify-content: space-evenly !important; + } + + .align-items-lg-start { + align-items: flex-start !important; + } + + .align-items-lg-end { + align-items: flex-end !important; + } + + .align-items-lg-center { + align-items: center !important; + } + + .align-items-lg-baseline { + align-items: baseline !important; + } + + .align-items-lg-stretch { + align-items: stretch !important; + } + + .align-content-lg-start { + align-content: flex-start !important; + } + + .align-content-lg-end { + align-content: flex-end !important; + } + + .align-content-lg-center { + align-content: center !important; + } + + .align-content-lg-between { + align-content: space-between !important; + } + + .align-content-lg-around { + align-content: space-around !important; + } + + .align-content-lg-stretch { + align-content: stretch !important; + } + + .align-self-lg-auto { + align-self: auto !important; + } + + .align-self-lg-start { + align-self: flex-start !important; + } + + .align-self-lg-end { + align-self: flex-end !important; + } + + .align-self-lg-center { + align-self: center !important; + } + + .align-self-lg-baseline { + align-self: baseline !important; + } + + .align-self-lg-stretch { + align-self: stretch !important; + } + + .order-lg-first { + order: -1 !important; + } + + .order-lg-0 { + order: 0 !important; + } + + .order-lg-1 { + order: 1 !important; + } + + .order-lg-2 { + order: 2 !important; + } + + .order-lg-3 { + order: 3 !important; + } + + .order-lg-4 { + order: 4 !important; + } + + .order-lg-5 { + order: 5 !important; + } + + .order-lg-last { + order: 6 !important; + } + + .m-lg-0 { + margin: 0 !important; + } + + .m-lg-1 { + margin: 0.25rem !important; + } + + .m-lg-2 { + margin: 0.5rem !important; + } + + .m-lg-3 { + margin: 1rem !important; + } + + .m-lg-4 { + margin: 1.5rem !important; + } + + .m-lg-5 { + margin: 3rem !important; + } + + .m-lg-auto { + margin: auto !important; + } + + .mx-lg-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-lg-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-lg-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-lg-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-lg-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-lg-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-lg-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-lg-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-lg-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-lg-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-lg-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-lg-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-lg-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-lg-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-lg-0 { + margin-top: 0 !important; + } + + .mt-lg-1 { + margin-top: 0.25rem !important; + } + + .mt-lg-2 { + margin-top: 0.5rem !important; + } + + .mt-lg-3 { + margin-top: 1rem !important; + } + + .mt-lg-4 { + margin-top: 1.5rem !important; + } + + .mt-lg-5 { + margin-top: 3rem !important; + } + + .mt-lg-auto { + margin-top: auto !important; + } + + .me-lg-0 { + margin-right: 0 !important; + } + + .me-lg-1 { + margin-right: 0.25rem !important; + } + + .me-lg-2 { + margin-right: 0.5rem !important; + } + + .me-lg-3 { + margin-right: 1rem !important; + } + + .me-lg-4 { + margin-right: 1.5rem !important; + } + + .me-lg-5 { + margin-right: 3rem !important; + } + + .me-lg-auto { + margin-right: auto !important; + } + + .mb-lg-0 { + margin-bottom: 0 !important; + } + + .mb-lg-1 { + margin-bottom: 0.25rem !important; + } + + .mb-lg-2 { + margin-bottom: 0.5rem !important; + } + + .mb-lg-3 { + margin-bottom: 1rem !important; + } + + .mb-lg-4 { + margin-bottom: 1.5rem !important; + } + + .mb-lg-5 { + margin-bottom: 3rem !important; + } + + .mb-lg-auto { + margin-bottom: auto !important; + } + + .ms-lg-0 { + margin-left: 0 !important; + } + + .ms-lg-1 { + margin-left: 0.25rem !important; + } + + .ms-lg-2 { + margin-left: 0.5rem !important; + } + + .ms-lg-3 { + margin-left: 1rem !important; + } + + .ms-lg-4 { + margin-left: 1.5rem !important; + } + + .ms-lg-5 { + margin-left: 3rem !important; + } + + .ms-lg-auto { + margin-left: auto !important; + } + + .p-lg-0 { + padding: 0 !important; + } + + .p-lg-1 { + padding: 0.25rem !important; + } + + .p-lg-2 { + padding: 0.5rem !important; + } + + .p-lg-3 { + padding: 1rem !important; + } + + .p-lg-4 { + padding: 1.5rem !important; + } + + .p-lg-5 { + padding: 3rem !important; + } + + .px-lg-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-lg-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-lg-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-lg-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-lg-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-lg-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-lg-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-lg-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-lg-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-lg-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-lg-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-lg-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-lg-0 { + padding-top: 0 !important; + } + + .pt-lg-1 { + padding-top: 0.25rem !important; + } + + .pt-lg-2 { + padding-top: 0.5rem !important; + } + + .pt-lg-3 { + padding-top: 1rem !important; + } + + .pt-lg-4 { + padding-top: 1.5rem !important; + } + + .pt-lg-5 { + padding-top: 3rem !important; + } + + .pe-lg-0 { + padding-right: 0 !important; + } + + .pe-lg-1 { + padding-right: 0.25rem !important; + } + + .pe-lg-2 { + padding-right: 0.5rem !important; + } + + .pe-lg-3 { + padding-right: 1rem !important; + } + + .pe-lg-4 { + padding-right: 1.5rem !important; + } + + .pe-lg-5 { + padding-right: 3rem !important; + } + + .pb-lg-0 { + padding-bottom: 0 !important; + } + + .pb-lg-1 { + padding-bottom: 0.25rem !important; + } + + .pb-lg-2 { + padding-bottom: 0.5rem !important; + } + + .pb-lg-3 { + padding-bottom: 1rem !important; + } + + .pb-lg-4 { + padding-bottom: 1.5rem !important; + } + + .pb-lg-5 { + padding-bottom: 3rem !important; + } + + .ps-lg-0 { + padding-left: 0 !important; + } + + .ps-lg-1 { + padding-left: 0.25rem !important; + } + + .ps-lg-2 { + padding-left: 0.5rem !important; + } + + .ps-lg-3 { + padding-left: 1rem !important; + } + + .ps-lg-4 { + padding-left: 1.5rem !important; + } + + .ps-lg-5 { + padding-left: 3rem !important; + } + + .text-lg-start { + text-align: left !important; + } + + .text-lg-end { + text-align: right !important; + } + + .text-lg-center { + text-align: center !important; + } +} + +@media (min-width: 1200px) { + .float-xl-start { + float: left !important; + } + + .float-xl-end { + float: right !important; + } + + .float-xl-none { + float: none !important; + } + + .d-xl-inline { + display: inline !important; + } + + .d-xl-inline-block { + display: inline-block !important; + } + + .d-xl-block { + display: block !important; + } + + .d-xl-grid { + display: grid !important; + } + + .d-xl-table { + display: table !important; + } + + .d-xl-table-row { + display: table-row !important; + } + + .d-xl-table-cell { + display: table-cell !important; + } + + .d-xl-flex { + display: flex !important; + } + + .d-xl-inline-flex { + display: inline-flex !important; + } + + .d-xl-none { + display: none !important; + } + + .flex-xl-fill { + flex: 1 1 auto !important; + } + + .flex-xl-row { + flex-direction: row !important; + } + + .flex-xl-column { + flex-direction: column !important; + } + + .flex-xl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xl-wrap { + flex-wrap: wrap !important; + } + + .flex-xl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xl-0 { + gap: 0 !important; + } + + .gap-xl-1 { + gap: 0.25rem !important; + } + + .gap-xl-2 { + gap: 0.5rem !important; + } + + .gap-xl-3 { + gap: 1rem !important; + } + + .gap-xl-4 { + gap: 1.5rem !important; + } + + .gap-xl-5 { + gap: 3rem !important; + } + + .justify-content-xl-start { + justify-content: flex-start !important; + } + + .justify-content-xl-end { + justify-content: flex-end !important; + } + + .justify-content-xl-center { + justify-content: center !important; + } + + .justify-content-xl-between { + justify-content: space-between !important; + } + + .justify-content-xl-around { + justify-content: space-around !important; + } + + .justify-content-xl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xl-start { + align-items: flex-start !important; + } + + .align-items-xl-end { + align-items: flex-end !important; + } + + .align-items-xl-center { + align-items: center !important; + } + + .align-items-xl-baseline { + align-items: baseline !important; + } + + .align-items-xl-stretch { + align-items: stretch !important; + } + + .align-content-xl-start { + align-content: flex-start !important; + } + + .align-content-xl-end { + align-content: flex-end !important; + } + + .align-content-xl-center { + align-content: center !important; + } + + .align-content-xl-between { + align-content: space-between !important; + } + + .align-content-xl-around { + align-content: space-around !important; + } + + .align-content-xl-stretch { + align-content: stretch !important; + } + + .align-self-xl-auto { + align-self: auto !important; + } + + .align-self-xl-start { + align-self: flex-start !important; + } + + .align-self-xl-end { + align-self: flex-end !important; + } + + .align-self-xl-center { + align-self: center !important; + } + + .align-self-xl-baseline { + align-self: baseline !important; + } + + .align-self-xl-stretch { + align-self: stretch !important; + } + + .order-xl-first { + order: -1 !important; + } + + .order-xl-0 { + order: 0 !important; + } + + .order-xl-1 { + order: 1 !important; + } + + .order-xl-2 { + order: 2 !important; + } + + .order-xl-3 { + order: 3 !important; + } + + .order-xl-4 { + order: 4 !important; + } + + .order-xl-5 { + order: 5 !important; + } + + .order-xl-last { + order: 6 !important; + } + + .m-xl-0 { + margin: 0 !important; + } + + .m-xl-1 { + margin: 0.25rem !important; + } + + .m-xl-2 { + margin: 0.5rem !important; + } + + .m-xl-3 { + margin: 1rem !important; + } + + .m-xl-4 { + margin: 1.5rem !important; + } + + .m-xl-5 { + margin: 3rem !important; + } + + .m-xl-auto { + margin: auto !important; + } + + .mx-xl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xl-0 { + margin-top: 0 !important; + } + + .mt-xl-1 { + margin-top: 0.25rem !important; + } + + .mt-xl-2 { + margin-top: 0.5rem !important; + } + + .mt-xl-3 { + margin-top: 1rem !important; + } + + .mt-xl-4 { + margin-top: 1.5rem !important; + } + + .mt-xl-5 { + margin-top: 3rem !important; + } + + .mt-xl-auto { + margin-top: auto !important; + } + + .me-xl-0 { + margin-right: 0 !important; + } + + .me-xl-1 { + margin-right: 0.25rem !important; + } + + .me-xl-2 { + margin-right: 0.5rem !important; + } + + .me-xl-3 { + margin-right: 1rem !important; + } + + .me-xl-4 { + margin-right: 1.5rem !important; + } + + .me-xl-5 { + margin-right: 3rem !important; + } + + .me-xl-auto { + margin-right: auto !important; + } + + .mb-xl-0 { + margin-bottom: 0 !important; + } + + .mb-xl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xl-3 { + margin-bottom: 1rem !important; + } + + .mb-xl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xl-5 { + margin-bottom: 3rem !important; + } + + .mb-xl-auto { + margin-bottom: auto !important; + } + + .ms-xl-0 { + margin-left: 0 !important; + } + + .ms-xl-1 { + margin-left: 0.25rem !important; + } + + .ms-xl-2 { + margin-left: 0.5rem !important; + } + + .ms-xl-3 { + margin-left: 1rem !important; + } + + .ms-xl-4 { + margin-left: 1.5rem !important; + } + + .ms-xl-5 { + margin-left: 3rem !important; + } + + .ms-xl-auto { + margin-left: auto !important; + } + + .p-xl-0 { + padding: 0 !important; + } + + .p-xl-1 { + padding: 0.25rem !important; + } + + .p-xl-2 { + padding: 0.5rem !important; + } + + .p-xl-3 { + padding: 1rem !important; + } + + .p-xl-4 { + padding: 1.5rem !important; + } + + .p-xl-5 { + padding: 3rem !important; + } + + .px-xl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xl-0 { + padding-top: 0 !important; + } + + .pt-xl-1 { + padding-top: 0.25rem !important; + } + + .pt-xl-2 { + padding-top: 0.5rem !important; + } + + .pt-xl-3 { + padding-top: 1rem !important; + } + + .pt-xl-4 { + padding-top: 1.5rem !important; + } + + .pt-xl-5 { + padding-top: 3rem !important; + } + + .pe-xl-0 { + padding-right: 0 !important; + } + + .pe-xl-1 { + padding-right: 0.25rem !important; + } + + .pe-xl-2 { + padding-right: 0.5rem !important; + } + + .pe-xl-3 { + padding-right: 1rem !important; + } + + .pe-xl-4 { + padding-right: 1.5rem !important; + } + + .pe-xl-5 { + padding-right: 3rem !important; + } + + .pb-xl-0 { + padding-bottom: 0 !important; + } + + .pb-xl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xl-3 { + padding-bottom: 1rem !important; + } + + .pb-xl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xl-5 { + padding-bottom: 3rem !important; + } + + .ps-xl-0 { + padding-left: 0 !important; + } + + .ps-xl-1 { + padding-left: 0.25rem !important; + } + + .ps-xl-2 { + padding-left: 0.5rem !important; + } + + .ps-xl-3 { + padding-left: 1rem !important; + } + + .ps-xl-4 { + padding-left: 1.5rem !important; + } + + .ps-xl-5 { + padding-left: 3rem !important; + } + + .text-xl-start { + text-align: left !important; + } + + .text-xl-end { + text-align: right !important; + } + + .text-xl-center { + text-align: center !important; + } +} + +@media (min-width: 1400px) { + .float-xxl-start { + float: left !important; + } + + .float-xxl-end { + float: right !important; + } + + .float-xxl-none { + float: none !important; + } + + .d-xxl-inline { + display: inline !important; + } + + .d-xxl-inline-block { + display: inline-block !important; + } + + .d-xxl-block { + display: block !important; + } + + .d-xxl-grid { + display: grid !important; + } + + .d-xxl-table { + display: table !important; + } + + .d-xxl-table-row { + display: table-row !important; + } + + .d-xxl-table-cell { + display: table-cell !important; + } + + .d-xxl-flex { + display: flex !important; + } + + .d-xxl-inline-flex { + display: inline-flex !important; + } + + .d-xxl-none { + display: none !important; + } + + .flex-xxl-fill { + flex: 1 1 auto !important; + } + + .flex-xxl-row { + flex-direction: row !important; + } + + .flex-xxl-column { + flex-direction: column !important; + } + + .flex-xxl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xxl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xxl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xxl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xxl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xxl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xxl-wrap { + flex-wrap: wrap !important; + } + + .flex-xxl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xxl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xxl-0 { + gap: 0 !important; + } + + .gap-xxl-1 { + gap: 0.25rem !important; + } + + .gap-xxl-2 { + gap: 0.5rem !important; + } + + .gap-xxl-3 { + gap: 1rem !important; + } + + .gap-xxl-4 { + gap: 1.5rem !important; + } + + .gap-xxl-5 { + gap: 3rem !important; + } + + .justify-content-xxl-start { + justify-content: flex-start !important; + } + + .justify-content-xxl-end { + justify-content: flex-end !important; + } + + .justify-content-xxl-center { + justify-content: center !important; + } + + .justify-content-xxl-between { + justify-content: space-between !important; + } + + .justify-content-xxl-around { + justify-content: space-around !important; + } + + .justify-content-xxl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xxl-start { + align-items: flex-start !important; + } + + .align-items-xxl-end { + align-items: flex-end !important; + } + + .align-items-xxl-center { + align-items: center !important; + } + + .align-items-xxl-baseline { + align-items: baseline !important; + } + + .align-items-xxl-stretch { + align-items: stretch !important; + } + + .align-content-xxl-start { + align-content: flex-start !important; + } + + .align-content-xxl-end { + align-content: flex-end !important; + } + + .align-content-xxl-center { + align-content: center !important; + } + + .align-content-xxl-between { + align-content: space-between !important; + } + + .align-content-xxl-around { + align-content: space-around !important; + } + + .align-content-xxl-stretch { + align-content: stretch !important; + } + + .align-self-xxl-auto { + align-self: auto !important; + } + + .align-self-xxl-start { + align-self: flex-start !important; + } + + .align-self-xxl-end { + align-self: flex-end !important; + } + + .align-self-xxl-center { + align-self: center !important; + } + + .align-self-xxl-baseline { + align-self: baseline !important; + } + + .align-self-xxl-stretch { + align-self: stretch !important; + } + + .order-xxl-first { + order: -1 !important; + } + + .order-xxl-0 { + order: 0 !important; + } + + .order-xxl-1 { + order: 1 !important; + } + + .order-xxl-2 { + order: 2 !important; + } + + .order-xxl-3 { + order: 3 !important; + } + + .order-xxl-4 { + order: 4 !important; + } + + .order-xxl-5 { + order: 5 !important; + } + + .order-xxl-last { + order: 6 !important; + } + + .m-xxl-0 { + margin: 0 !important; + } + + .m-xxl-1 { + margin: 0.25rem !important; + } + + .m-xxl-2 { + margin: 0.5rem !important; + } + + .m-xxl-3 { + margin: 1rem !important; + } + + .m-xxl-4 { + margin: 1.5rem !important; + } + + .m-xxl-5 { + margin: 3rem !important; + } + + .m-xxl-auto { + margin: auto !important; + } + + .mx-xxl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xxl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xxl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xxl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xxl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xxl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xxl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xxl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xxl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xxl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xxl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xxl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xxl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xxl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xxl-0 { + margin-top: 0 !important; + } + + .mt-xxl-1 { + margin-top: 0.25rem !important; + } + + .mt-xxl-2 { + margin-top: 0.5rem !important; + } + + .mt-xxl-3 { + margin-top: 1rem !important; + } + + .mt-xxl-4 { + margin-top: 1.5rem !important; + } + + .mt-xxl-5 { + margin-top: 3rem !important; + } + + .mt-xxl-auto { + margin-top: auto !important; + } + + .me-xxl-0 { + margin-right: 0 !important; + } + + .me-xxl-1 { + margin-right: 0.25rem !important; + } + + .me-xxl-2 { + margin-right: 0.5rem !important; + } + + .me-xxl-3 { + margin-right: 1rem !important; + } + + .me-xxl-4 { + margin-right: 1.5rem !important; + } + + .me-xxl-5 { + margin-right: 3rem !important; + } + + .me-xxl-auto { + margin-right: auto !important; + } + + .mb-xxl-0 { + margin-bottom: 0 !important; + } + + .mb-xxl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xxl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xxl-3 { + margin-bottom: 1rem !important; + } + + .mb-xxl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xxl-5 { + margin-bottom: 3rem !important; + } + + .mb-xxl-auto { + margin-bottom: auto !important; + } + + .ms-xxl-0 { + margin-left: 0 !important; + } + + .ms-xxl-1 { + margin-left: 0.25rem !important; + } + + .ms-xxl-2 { + margin-left: 0.5rem !important; + } + + .ms-xxl-3 { + margin-left: 1rem !important; + } + + .ms-xxl-4 { + margin-left: 1.5rem !important; + } + + .ms-xxl-5 { + margin-left: 3rem !important; + } + + .ms-xxl-auto { + margin-left: auto !important; + } + + .p-xxl-0 { + padding: 0 !important; + } + + .p-xxl-1 { + padding: 0.25rem !important; + } + + .p-xxl-2 { + padding: 0.5rem !important; + } + + .p-xxl-3 { + padding: 1rem !important; + } + + .p-xxl-4 { + padding: 1.5rem !important; + } + + .p-xxl-5 { + padding: 3rem !important; + } + + .px-xxl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xxl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xxl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xxl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xxl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xxl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xxl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xxl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xxl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xxl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xxl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xxl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xxl-0 { + padding-top: 0 !important; + } + + .pt-xxl-1 { + padding-top: 0.25rem !important; + } + + .pt-xxl-2 { + padding-top: 0.5rem !important; + } + + .pt-xxl-3 { + padding-top: 1rem !important; + } + + .pt-xxl-4 { + padding-top: 1.5rem !important; + } + + .pt-xxl-5 { + padding-top: 3rem !important; + } + + .pe-xxl-0 { + padding-right: 0 !important; + } + + .pe-xxl-1 { + padding-right: 0.25rem !important; + } + + .pe-xxl-2 { + padding-right: 0.5rem !important; + } + + .pe-xxl-3 { + padding-right: 1rem !important; + } + + .pe-xxl-4 { + padding-right: 1.5rem !important; + } + + .pe-xxl-5 { + padding-right: 3rem !important; + } + + .pb-xxl-0 { + padding-bottom: 0 !important; + } + + .pb-xxl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xxl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xxl-3 { + padding-bottom: 1rem !important; + } + + .pb-xxl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xxl-5 { + padding-bottom: 3rem !important; + } + + .ps-xxl-0 { + padding-left: 0 !important; + } + + .ps-xxl-1 { + padding-left: 0.25rem !important; + } + + .ps-xxl-2 { + padding-left: 0.5rem !important; + } + + .ps-xxl-3 { + padding-left: 1rem !important; + } + + .ps-xxl-4 { + padding-left: 1.5rem !important; + } + + .ps-xxl-5 { + padding-left: 3rem !important; + } + + .text-xxl-start { + text-align: left !important; + } + + .text-xxl-end { + text-align: right !important; + } + + .text-xxl-center { + text-align: center !important; + } +} + +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.5rem !important; + } + + .fs-2 { + font-size: 2rem !important; + } + + .fs-3 { + font-size: 1.75rem !important; + } + + .fs-4 { + font-size: 1.5rem !important; + } +} + +@media print { + .d-print-inline { + display: inline !important; + } + + .d-print-inline-block { + display: inline-block !important; + } + + .d-print-block { + display: block !important; + } + + .d-print-grid { + display: grid !important; + } + + .d-print-table { + display: table !important; + } + + .d-print-table-row { + display: table-row !important; + } + + .d-print-table-cell { + display: table-cell !important; + } + + .d-print-flex { + display: flex !important; + } + + .d-print-inline-flex { + display: inline-flex !important; + } + + .d-print-none { + display: none !important; + } +} + +/*# sourceMappingURL=bootstrap.css.map */ +/* //bootstrap */ + +/* css style */ +:root { + --primary-color: #fbb034; + --secondary-color: #00a4f5; + --bg-color: #fff; + --heading-color: #060606; + --font-color: #6f6f6f; + --border-radius: 8px; + --border-radius-full: 30px; + --border-color-light: #eee; + --iframe-filter: grayscale(0%); + --bg-grey: #f4f4f4; + --bg-light: #fbfbfb; + --box-shadow: 0 0.5rem 1rem rgb(12 12 12 / 5%); + --banner-layer: rgb(255 255 255 / 90%); + --gradient-color: linear-gradient(to left, #11d5ff 0%, #0089cd 100%); + --gradient-color-banner: linear-gradient(to left, #00c9f5 0%, #00a4f5 100%); + --layer: rgb(1 121 179 / 75%); + --subscribe-footer-input: #fff; +} + +[data-theme="dark"] { + --primary-color: #fbb034; + --secondary-color: #00a4f5; + --bg-color: #08171e; + --heading-color: #fdfffc; + --font-color: #b7b7b7; + --border-color-light: rgba(255, 255, 255, 0.2); + --iframe-filter: grayscale(100%); + --bg-grey: #040b0e; + --bg-light: #131917; + --box-shadow: 0 0.5rem 1rem rgb(5 14 18); + --banner-layer: rgb(8 23 30 / 85%); + --subscribe-footer-input: #040b0e; +} + +* { + box-sizing: border-box; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; + font-family: 'Ubuntu', sans-serif; +} + +.noscroll { + min-height: 100vh; + overflow: hidden; +} + +html { + scroll-behavior: smooth; +} + +body, +html { + margin: 0; + padding: 0; + background: var(--bg-color); + color: var(--heading-color); +} + +body a, +button, +.btn { + cursor: pointer !important; +} + +a { + color: var(--heading-color); + text-decoration: none; + background-color: transparent; +} + +a:hover { + color: var(--primary-color); + text-decoration: underline; +} + +a, +a:hover, +button, +button:hover { + text-decoration: none; + transition: .5s all; + -moz-transition: .5s all; +} + +.clear { + clear: both; +} + +.img-responsive { + max-width: 100%; + display: block; + width: 100%; +} + +.d-grid { + display: grid; +} + +button, +input, +select, +label, +li, +span { + -webkit-appearance: none; + outline: none; +} + +a, +a:hover, +button, +button:hover { + text-decoration: none; + transition: .5s all; + -moz-transition: .5s all; +} + +iframe { + border: none; + display: block; +} + +ul { + margin: 0; + padding: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 0; + padding: 0; + color: var(--heading-color); +} + +p { + margin: 0; + padding: 0; + font-size: 16px; + line-height: 28px; + color: var(--heading-color); +} + +li { + list-style-type: none; +} + +.radius-image { + border-radius: var(--border-radius); +} + +.radius-image-full { + border-radius: var(--border-radius-full); +} + +/* container */ +.container { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 992px) { + .container { + max-width: 960px; + margin-right: auto; + margin-left: auto; + } +} + +@media (min-width: 1200px) { + .container { + max-width: 1140px; + margin-right: auto; + margin-left: auto; + } +} + +@media (min-width: 1280px) { + .container { + max-width: 1200px; + } +} + +/* //container */ + +/* toggle switch */ +.theme-switch-wrapper { + display: flex; + align-items: center; +} + +.theme-switch-wrapper em { + margin-left: 10px; + font-size: 1rem; +} + +.theme-switch { + display: inline-block; + position: relative; + margin: 0; +} + +.theme-switch input { + display: none; +} + +/* //toggle switch */ +/* //css style */ + +/* font awesome css */ +/*! + * Font Awesome Free 5.15.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa, +.fas, +.far, +.fal, +.fad, +.fab { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; +} + +.fa-lg { + font-size: 1.33333em; + line-height: 0.75em; + vertical-align: -.0667em; +} + +.fa-xs { + font-size: .75em; +} + +.fa-sm { + font-size: .875em; +} + +.fa-1x { + font-size: 1em; +} + +.fa-2x { + font-size: 2em; +} + +.fa-3x { + font-size: 3em; +} + +.fa-4x { + font-size: 4em; +} + +.fa-5x { + font-size: 5em; +} + +.fa-6x { + font-size: 6em; +} + +.fa-7x { + font-size: 7em; +} + +.fa-8x { + font-size: 8em; +} + +.fa-9x { + font-size: 9em; +} + +.fa-10x { + font-size: 10em; +} + +.fa-fw { + text-align: center; + width: 1.25em; +} + +.fa-ul { + list-style-type: none; + margin-left: 2.5em; + padding-left: 0; +} + +.fa-ul>li { + position: relative; +} + +.fa-li { + left: -2em; + position: absolute; + text-align: center; + width: 2em; + line-height: inherit; +} + +.fa-border { + border: solid 0.08em #eee; + border-radius: .1em; + padding: .2em .25em .15em; +} + +.fa-pull-left { + float: left; +} + +.fa-pull-right { + float: right; +} + +.fa.fa-pull-left, +.fas.fa-pull-left, +.far.fa-pull-left, +.fal.fa-pull-left, +.fab.fa-pull-left { + margin-right: .3em; +} + +.fa.fa-pull-right, +.fas.fa-pull-right, +.far.fa-pull-right, +.fal.fa-pull-right, +.fab.fa-pull-right { + margin-left: .3em; +} + +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; +} + +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); +} + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); +} + +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + -webkit-transform: rotate(180deg); + transform: rotate(180deg); +} + +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + -webkit-transform: rotate(270deg); + transform: rotate(270deg); +} + +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); +} + +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(1, -1); + transform: scale(1, -1); +} + +.fa-flip-both, +.fa-flip-horizontal.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); +} + +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical, +:root .fa-flip-both { + -webkit-filter: none; + filter: none; +} + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; +} + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; +} + +.fa-stack-1x { + line-height: inherit; +} + +.fa-stack-2x { + font-size: 2em; +} + +.fa-inverse { + color: #fff; +} + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ +.fa-500px:before { + content: "\f26e"; +} + +.fa-accessible-icon:before { + content: "\f368"; +} + +.fa-accusoft:before { + content: "\f369"; +} + +.fa-acquisitions-incorporated:before { + content: "\f6af"; +} + +.fa-ad:before { + content: "\f641"; +} + +.fa-address-book:before { + content: "\f2b9"; +} + +.fa-address-card:before { + content: "\f2bb"; +} + +.fa-adjust:before { + content: "\f042"; +} + +.fa-adn:before { + content: "\f170"; +} + +.fa-adversal:before { + content: "\f36a"; +} + +.fa-affiliatetheme:before { + content: "\f36b"; +} + +.fa-air-freshener:before { + content: "\f5d0"; +} + +.fa-airbnb:before { + content: "\f834"; +} + +.fa-algolia:before { + content: "\f36c"; +} + +.fa-align-center:before { + content: "\f037"; +} + +.fa-align-justify:before { + content: "\f039"; +} + +.fa-align-left:before { + content: "\f036"; +} + +.fa-align-right:before { + content: "\f038"; +} + +.fa-alipay:before { + content: "\f642"; +} + +.fa-allergies:before { + content: "\f461"; +} + +.fa-amazon:before { + content: "\f270"; +} + +.fa-amazon-pay:before { + content: "\f42c"; +} + +.fa-ambulance:before { + content: "\f0f9"; +} + +.fa-american-sign-language-interpreting:before { + content: "\f2a3"; +} + +.fa-amilia:before { + content: "\f36d"; +} + +.fa-anchor:before { + content: "\f13d"; +} + +.fa-android:before { + content: "\f17b"; +} + +.fa-angellist:before { + content: "\f209"; +} + +.fa-angle-double-down:before { + content: "\f103"; +} + +.fa-angle-double-left:before { + content: "\f100"; +} + +.fa-angle-double-right:before { + content: "\f101"; +} + +.fa-angle-double-up:before { + content: "\f102"; +} + +.fa-angle-down:before { + content: "\f107"; +} + +.fa-angle-left:before { + content: "\f104"; +} + +.fa-angle-right:before { + content: "\f105"; +} + +.fa-angle-up:before { + content: "\f106"; +} + +.fa-angry:before { + content: "\f556"; +} + +.fa-angrycreative:before { + content: "\f36e"; +} + +.fa-angular:before { + content: "\f420"; +} + +.fa-ankh:before { + content: "\f644"; +} + +.fa-app-store:before { + content: "\f36f"; +} + +.fa-app-store-ios:before { + content: "\f370"; +} + +.fa-apper:before { + content: "\f371"; +} + +.fa-apple:before { + content: "\f179"; +} + +.fa-apple-alt:before { + content: "\f5d1"; +} + +.fa-apple-pay:before { + content: "\f415"; +} + +.fa-archive:before { + content: "\f187"; +} + +.fa-archway:before { + content: "\f557"; +} + +.fa-arrow-alt-circle-down:before { + content: "\f358"; +} + +.fa-arrow-alt-circle-left:before { + content: "\f359"; +} + +.fa-arrow-alt-circle-right:before { + content: "\f35a"; +} + +.fa-arrow-alt-circle-up:before { + content: "\f35b"; +} + +.fa-arrow-circle-down:before { + content: "\f0ab"; +} + +.fa-arrow-circle-left:before { + content: "\f0a8"; +} + +.fa-arrow-circle-right:before { + content: "\f0a9"; +} + +.fa-arrow-circle-up:before { + content: "\f0aa"; +} + +.fa-arrow-down:before { + content: "\f063"; +} + +.fa-arrow-left:before { + content: "\f060"; +} + +.fa-arrow-right:before { + content: "\f061"; +} + +.fa-arrow-up:before { + content: "\f062"; +} + +.fa-arrows-alt:before { + content: "\f0b2"; +} + +.fa-arrows-alt-h:before { + content: "\f337"; +} + +.fa-arrows-alt-v:before { + content: "\f338"; +} + +.fa-artstation:before { + content: "\f77a"; +} + +.fa-assistive-listening-systems:before { + content: "\f2a2"; +} + +.fa-asterisk:before { + content: "\f069"; +} + +.fa-asymmetrik:before { + content: "\f372"; +} + +.fa-at:before { + content: "\f1fa"; +} + +.fa-atlas:before { + content: "\f558"; +} + +.fa-atlassian:before { + content: "\f77b"; +} + +.fa-atom:before { + content: "\f5d2"; +} + +.fa-audible:before { + content: "\f373"; +} + +.fa-audio-description:before { + content: "\f29e"; +} + +.fa-autoprefixer:before { + content: "\f41c"; +} + +.fa-avianex:before { + content: "\f374"; +} + +.fa-aviato:before { + content: "\f421"; +} + +.fa-award:before { + content: "\f559"; +} + +.fa-aws:before { + content: "\f375"; +} + +.fa-baby:before { + content: "\f77c"; +} + +.fa-baby-carriage:before { + content: "\f77d"; +} + +.fa-backspace:before { + content: "\f55a"; +} + +.fa-backward:before { + content: "\f04a"; +} + +.fa-bacon:before { + content: "\f7e5"; +} + +.fa-bacteria:before { + content: "\e059"; +} + +.fa-bacterium:before { + content: "\e05a"; +} + +.fa-bahai:before { + content: "\f666"; +} + +.fa-balance-scale:before { + content: "\f24e"; +} + +.fa-balance-scale-left:before { + content: "\f515"; +} + +.fa-balance-scale-right:before { + content: "\f516"; +} + +.fa-ban:before { + content: "\f05e"; +} + +.fa-band-aid:before { + content: "\f462"; +} + +.fa-bandcamp:before { + content: "\f2d5"; +} + +.fa-barcode:before { + content: "\f02a"; +} + +.fa-bars:before { + content: "\f0c9"; +} + +.fa-baseball-ball:before { + content: "\f433"; +} + +.fa-basketball-ball:before { + content: "\f434"; +} + +.fa-bath:before { + content: "\f2cd"; +} + +.fa-battery-empty:before { + content: "\f244"; +} + +.fa-battery-full:before { + content: "\f240"; +} + +.fa-battery-half:before { + content: "\f242"; +} + +.fa-battery-quarter:before { + content: "\f243"; +} + +.fa-battery-three-quarters:before { + content: "\f241"; +} + +.fa-battle-net:before { + content: "\f835"; +} + +.fa-bed:before { + content: "\f236"; +} + +.fa-beer:before { + content: "\f0fc"; +} + +.fa-behance:before { + content: "\f1b4"; +} + +.fa-behance-square:before { + content: "\f1b5"; +} + +.fa-bell:before { + content: "\f0f3"; +} + +.fa-bell-slash:before { + content: "\f1f6"; +} + +.fa-bezier-curve:before { + content: "\f55b"; +} + +.fa-bible:before { + content: "\f647"; +} + +.fa-bicycle:before { + content: "\f206"; +} + +.fa-biking:before { + content: "\f84a"; +} + +.fa-bimobject:before { + content: "\f378"; +} + +.fa-binoculars:before { + content: "\f1e5"; +} + +.fa-biohazard:before { + content: "\f780"; +} + +.fa-birthday-cake:before { + content: "\f1fd"; +} + +.fa-bitbucket:before { + content: "\f171"; +} + +.fa-bitcoin:before { + content: "\f379"; +} + +.fa-bity:before { + content: "\f37a"; +} + +.fa-black-tie:before { + content: "\f27e"; +} + +.fa-blackberry:before { + content: "\f37b"; +} + +.fa-blender:before { + content: "\f517"; +} + +.fa-blender-phone:before { + content: "\f6b6"; +} + +.fa-blind:before { + content: "\f29d"; +} + +.fa-blog:before { + content: "\f781"; +} + +.fa-blogger:before { + content: "\f37c"; +} + +.fa-blogger-b:before { + content: "\f37d"; +} + +.fa-bluetooth:before { + content: "\f293"; +} + +.fa-bluetooth-b:before { + content: "\f294"; +} + +.fa-bold:before { + content: "\f032"; +} + +.fa-bolt:before { + content: "\f0e7"; +} + +.fa-bomb:before { + content: "\f1e2"; +} + +.fa-bone:before { + content: "\f5d7"; +} + +.fa-bong:before { + content: "\f55c"; +} + +.fa-book:before { + content: "\f02d"; +} + +.fa-book-dead:before { + content: "\f6b7"; +} + +.fa-book-medical:before { + content: "\f7e6"; +} + +.fa-book-open:before { + content: "\f518"; +} + +.fa-book-reader:before { + content: "\f5da"; +} + +.fa-bookmark:before { + content: "\f02e"; +} + +.fa-bootstrap:before { + content: "\f836"; +} + +.fa-border-all:before { + content: "\f84c"; +} + +.fa-border-none:before { + content: "\f850"; +} + +.fa-border-style:before { + content: "\f853"; +} + +.fa-bowling-ball:before { + content: "\f436"; +} + +.fa-box:before { + content: "\f466"; +} + +.fa-box-open:before { + content: "\f49e"; +} + +.fa-box-tissue:before { + content: "\e05b"; +} + +.fa-boxes:before { + content: "\f468"; +} + +.fa-braille:before { + content: "\f2a1"; +} + +.fa-brain:before { + content: "\f5dc"; +} + +.fa-bread-slice:before { + content: "\f7ec"; +} + +.fa-briefcase:before { + content: "\f0b1"; +} + +.fa-briefcase-medical:before { + content: "\f469"; +} + +.fa-broadcast-tower:before { + content: "\f519"; +} + +.fa-broom:before { + content: "\f51a"; +} + +.fa-brush:before { + content: "\f55d"; +} + +.fa-btc:before { + content: "\f15a"; +} + +.fa-buffer:before { + content: "\f837"; +} + +.fa-bug:before { + content: "\f188"; +} + +.fa-building:before { + content: "\f1ad"; +} + +.fa-bullhorn:before { + content: "\f0a1"; +} + +.fa-bullseye:before { + content: "\f140"; +} + +.fa-burn:before { + content: "\f46a"; +} + +.fa-buromobelexperte:before { + content: "\f37f"; +} + +.fa-bus:before { + content: "\f207"; +} + +.fa-bus-alt:before { + content: "\f55e"; +} + +.fa-business-time:before { + content: "\f64a"; +} + +.fa-buy-n-large:before { + content: "\f8a6"; +} + +.fa-buysellads:before { + content: "\f20d"; +} + +.fa-calculator:before { + content: "\f1ec"; +} + +.fa-calendar:before { + content: "\f133"; +} + +.fa-calendar-alt:before { + content: "\f073"; +} + +.fa-calendar-check:before { + content: "\f274"; +} + +.fa-calendar-day:before { + content: "\f783"; +} + +.fa-calendar-minus:before { + content: "\f272"; +} + +.fa-calendar-plus:before { + content: "\f271"; +} + +.fa-calendar-times:before { + content: "\f273"; +} + +.fa-calendar-week:before { + content: "\f784"; +} + +.fa-camera:before { + content: "\f030"; +} + +.fa-camera-retro:before { + content: "\f083"; +} + +.fa-campground:before { + content: "\f6bb"; +} + +.fa-canadian-maple-leaf:before { + content: "\f785"; +} + +.fa-candy-cane:before { + content: "\f786"; +} + +.fa-cannabis:before { + content: "\f55f"; +} + +.fa-capsules:before { + content: "\f46b"; +} + +.fa-car:before { + content: "\f1b9"; +} + +.fa-car-alt:before { + content: "\f5de"; +} + +.fa-car-battery:before { + content: "\f5df"; +} + +.fa-car-crash:before { + content: "\f5e1"; +} + +.fa-car-side:before { + content: "\f5e4"; +} + +.fa-caravan:before { + content: "\f8ff"; +} + +.fa-caret-down:before { + content: "\f0d7"; +} + +.fa-caret-left:before { + content: "\f0d9"; +} + +.fa-caret-right:before { + content: "\f0da"; +} + +.fa-caret-square-down:before { + content: "\f150"; +} + +.fa-caret-square-left:before { + content: "\f191"; +} + +.fa-caret-square-right:before { + content: "\f152"; +} + +.fa-caret-square-up:before { + content: "\f151"; +} + +.fa-caret-up:before { + content: "\f0d8"; +} + +.fa-carrot:before { + content: "\f787"; +} + +.fa-cart-arrow-down:before { + content: "\f218"; +} + +.fa-cart-plus:before { + content: "\f217"; +} + +.fa-cash-register:before { + content: "\f788"; +} + +.fa-cat:before { + content: "\f6be"; +} + +.fa-cc-amazon-pay:before { + content: "\f42d"; +} + +.fa-cc-amex:before { + content: "\f1f3"; +} + +.fa-cc-apple-pay:before { + content: "\f416"; +} + +.fa-cc-diners-club:before { + content: "\f24c"; +} + +.fa-cc-discover:before { + content: "\f1f2"; +} + +.fa-cc-jcb:before { + content: "\f24b"; +} + +.fa-cc-mastercard:before { + content: "\f1f1"; +} + +.fa-cc-paypal:before { + content: "\f1f4"; +} + +.fa-cc-stripe:before { + content: "\f1f5"; +} + +.fa-cc-visa:before { + content: "\f1f0"; +} + +.fa-centercode:before { + content: "\f380"; +} + +.fa-centos:before { + content: "\f789"; +} + +.fa-certificate:before { + content: "\f0a3"; +} + +.fa-chair:before { + content: "\f6c0"; +} + +.fa-chalkboard:before { + content: "\f51b"; +} + +.fa-chalkboard-teacher:before { + content: "\f51c"; +} + +.fa-charging-station:before { + content: "\f5e7"; +} + +.fa-chart-area:before { + content: "\f1fe"; +} + +.fa-chart-bar:before { + content: "\f080"; +} + +.fa-chart-line:before { + content: "\f201"; +} + +.fa-chart-pie:before { + content: "\f200"; +} + +.fa-check:before { + content: "\f00c"; +} + +.fa-check-circle:before { + content: "\f058"; +} + +.fa-check-double:before { + content: "\f560"; +} + +.fa-check-square:before { + content: "\f14a"; +} + +.fa-cheese:before { + content: "\f7ef"; +} + +.fa-chess:before { + content: "\f439"; +} + +.fa-chess-bishop:before { + content: "\f43a"; +} + +.fa-chess-board:before { + content: "\f43c"; +} + +.fa-chess-king:before { + content: "\f43f"; +} + +.fa-chess-knight:before { + content: "\f441"; +} + +.fa-chess-pawn:before { + content: "\f443"; +} + +.fa-chess-queen:before { + content: "\f445"; +} + +.fa-chess-rook:before { + content: "\f447"; +} + +.fa-chevron-circle-down:before { + content: "\f13a"; +} + +.fa-chevron-circle-left:before { + content: "\f137"; +} + +.fa-chevron-circle-right:before { + content: "\f138"; +} + +.fa-chevron-circle-up:before { + content: "\f139"; +} + +.fa-chevron-down:before { + content: "\f078"; +} + +.fa-chevron-left:before { + content: "\f053"; +} + +.fa-chevron-right:before { + content: "\f054"; +} + +.fa-chevron-up:before { + content: "\f077"; +} + +.fa-child:before { + content: "\f1ae"; +} + +.fa-chrome:before { + content: "\f268"; +} + +.fa-chromecast:before { + content: "\f838"; +} + +.fa-church:before { + content: "\f51d"; +} + +.fa-circle:before { + content: "\f111"; +} + +.fa-circle-notch:before { + content: "\f1ce"; +} + +.fa-city:before { + content: "\f64f"; +} + +.fa-clinic-medical:before { + content: "\f7f2"; +} + +.fa-clipboard:before { + content: "\f328"; +} + +.fa-clipboard-check:before { + content: "\f46c"; +} + +.fa-clipboard-list:before { + content: "\f46d"; +} + +.fa-clock:before { + content: "\f017"; +} + +.fa-clone:before { + content: "\f24d"; +} + +.fa-closed-captioning:before { + content: "\f20a"; +} + +.fa-cloud:before { + content: "\f0c2"; +} + +.fa-cloud-download-alt:before { + content: "\f381"; +} + +.fa-cloud-meatball:before { + content: "\f73b"; +} + +.fa-cloud-moon:before { + content: "\f6c3"; +} + +.fa-cloud-moon-rain:before { + content: "\f73c"; +} + +.fa-cloud-rain:before { + content: "\f73d"; +} + +.fa-cloud-showers-heavy:before { + content: "\f740"; +} + +.fa-cloud-sun:before { + content: "\f6c4"; +} + +.fa-cloud-sun-rain:before { + content: "\f743"; +} + +.fa-cloud-upload-alt:before { + content: "\f382"; +} + +.fa-cloudflare:before { + content: "\e07d"; +} + +.fa-cloudscale:before { + content: "\f383"; +} + +.fa-cloudsmith:before { + content: "\f384"; +} + +.fa-cloudversify:before { + content: "\f385"; +} + +.fa-cocktail:before { + content: "\f561"; +} + +.fa-code:before { + content: "\f121"; +} + +.fa-code-branch:before { + content: "\f126"; +} + +.fa-codepen:before { + content: "\f1cb"; +} + +.fa-codiepie:before { + content: "\f284"; +} + +.fa-coffee:before { + content: "\f0f4"; +} + +.fa-cog:before { + content: "\f013"; +} + +.fa-cogs:before { + content: "\f085"; +} + +.fa-coins:before { + content: "\f51e"; +} + +.fa-columns:before { + content: "\f0db"; +} + +.fa-comment:before { + content: "\f075"; +} + +.fa-comment-alt:before { + content: "\f27a"; +} + +.fa-comment-dollar:before { + content: "\f651"; +} + +.fa-comment-dots:before { + content: "\f4ad"; +} + +.fa-comment-medical:before { + content: "\f7f5"; +} + +.fa-comment-slash:before { + content: "\f4b3"; +} + +.fa-comments:before { + content: "\f086"; +} + +.fa-comments-dollar:before { + content: "\f653"; +} + +.fa-compact-disc:before { + content: "\f51f"; +} + +.fa-compass:before { + content: "\f14e"; +} + +.fa-compress:before { + content: "\f066"; +} + +.fa-compress-alt:before { + content: "\f422"; +} + +.fa-compress-arrows-alt:before { + content: "\f78c"; +} + +.fa-concierge-bell:before { + content: "\f562"; +} + +.fa-confluence:before { + content: "\f78d"; +} + +.fa-connectdevelop:before { + content: "\f20e"; +} + +.fa-contao:before { + content: "\f26d"; +} + +.fa-cookie:before { + content: "\f563"; +} + +.fa-cookie-bite:before { + content: "\f564"; +} + +.fa-copy:before { + content: "\f0c5"; +} + +.fa-copyright:before { + content: "\f1f9"; +} + +.fa-cotton-bureau:before { + content: "\f89e"; +} + +.fa-couch:before { + content: "\f4b8"; +} + +.fa-cpanel:before { + content: "\f388"; +} + +.fa-creative-commons:before { + content: "\f25e"; +} + +.fa-creative-commons-by:before { + content: "\f4e7"; +} + +.fa-creative-commons-nc:before { + content: "\f4e8"; +} + +.fa-creative-commons-nc-eu:before { + content: "\f4e9"; +} + +.fa-creative-commons-nc-jp:before { + content: "\f4ea"; +} + +.fa-creative-commons-nd:before { + content: "\f4eb"; +} + +.fa-creative-commons-pd:before { + content: "\f4ec"; +} + +.fa-creative-commons-pd-alt:before { + content: "\f4ed"; +} + +.fa-creative-commons-remix:before { + content: "\f4ee"; +} + +.fa-creative-commons-sa:before { + content: "\f4ef"; +} + +.fa-creative-commons-sampling:before { + content: "\f4f0"; +} + +.fa-creative-commons-sampling-plus:before { + content: "\f4f1"; +} + +.fa-creative-commons-share:before { + content: "\f4f2"; +} + +.fa-creative-commons-zero:before { + content: "\f4f3"; +} + +.fa-credit-card:before { + content: "\f09d"; +} + +.fa-critical-role:before { + content: "\f6c9"; +} + +.fa-crop:before { + content: "\f125"; +} + +.fa-crop-alt:before { + content: "\f565"; +} + +.fa-cross:before { + content: "\f654"; +} + +.fa-crosshairs:before { + content: "\f05b"; +} + +.fa-crow:before { + content: "\f520"; +} + +.fa-crown:before { + content: "\f521"; +} + +.fa-crutch:before { + content: "\f7f7"; +} + +.fa-css3:before { + content: "\f13c"; +} + +.fa-css3-alt:before { + content: "\f38b"; +} + +.fa-cube:before { + content: "\f1b2"; +} + +.fa-cubes:before { + content: "\f1b3"; +} + +.fa-cut:before { + content: "\f0c4"; +} + +.fa-cuttlefish:before { + content: "\f38c"; +} + +.fa-d-and-d:before { + content: "\f38d"; +} + +.fa-d-and-d-beyond:before { + content: "\f6ca"; +} + +.fa-dailymotion:before { + content: "\e052"; +} + +.fa-dashcube:before { + content: "\f210"; +} + +.fa-database:before { + content: "\f1c0"; +} + +.fa-deaf:before { + content: "\f2a4"; +} + +.fa-deezer:before { + content: "\e077"; +} + +.fa-delicious:before { + content: "\f1a5"; +} + +.fa-democrat:before { + content: "\f747"; +} + +.fa-deploydog:before { + content: "\f38e"; +} + +.fa-deskpro:before { + content: "\f38f"; +} + +.fa-desktop:before { + content: "\f108"; +} + +.fa-dev:before { + content: "\f6cc"; +} + +.fa-deviantart:before { + content: "\f1bd"; +} + +.fa-dharmachakra:before { + content: "\f655"; +} + +.fa-dhl:before { + content: "\f790"; +} + +.fa-diagnoses:before { + content: "\f470"; +} + +.fa-diaspora:before { + content: "\f791"; +} + +.fa-dice:before { + content: "\f522"; +} + +.fa-dice-d20:before { + content: "\f6cf"; +} + +.fa-dice-d6:before { + content: "\f6d1"; +} + +.fa-dice-five:before { + content: "\f523"; +} + +.fa-dice-four:before { + content: "\f524"; +} + +.fa-dice-one:before { + content: "\f525"; +} + +.fa-dice-six:before { + content: "\f526"; +} + +.fa-dice-three:before { + content: "\f527"; +} + +.fa-dice-two:before { + content: "\f528"; +} + +.fa-digg:before { + content: "\f1a6"; +} + +.fa-digital-ocean:before { + content: "\f391"; +} + +.fa-digital-tachograph:before { + content: "\f566"; +} + +.fa-directions:before { + content: "\f5eb"; +} + +.fa-discord:before { + content: "\f392"; +} + +.fa-discourse:before { + content: "\f393"; +} + +.fa-disease:before { + content: "\f7fa"; +} + +.fa-divide:before { + content: "\f529"; +} + +.fa-dizzy:before { + content: "\f567"; +} + +.fa-dna:before { + content: "\f471"; +} + +.fa-dochub:before { + content: "\f394"; +} + +.fa-docker:before { + content: "\f395"; +} + +.fa-dog:before { + content: "\f6d3"; +} + +.fa-dollar-sign:before { + content: "\f155"; +} + +.fa-dolly:before { + content: "\f472"; +} + +.fa-dolly-flatbed:before { + content: "\f474"; +} + +.fa-donate:before { + content: "\f4b9"; +} + +.fa-door-closed:before { + content: "\f52a"; +} + +.fa-door-open:before { + content: "\f52b"; +} + +.fa-dot-circle:before { + content: "\f192"; +} + +.fa-dove:before { + content: "\f4ba"; +} + +.fa-download:before { + content: "\f019"; +} + +.fa-draft2digital:before { + content: "\f396"; +} + +.fa-drafting-compass:before { + content: "\f568"; +} + +.fa-dragon:before { + content: "\f6d5"; +} + +.fa-draw-polygon:before { + content: "\f5ee"; +} + +.fa-dribbble:before { + content: "\f17d"; +} + +.fa-dribbble-square:before { + content: "\f397"; +} + +.fa-dropbox:before { + content: "\f16b"; +} + +.fa-drum:before { + content: "\f569"; +} + +.fa-drum-steelpan:before { + content: "\f56a"; +} + +.fa-drumstick-bite:before { + content: "\f6d7"; +} + +.fa-drupal:before { + content: "\f1a9"; +} + +.fa-dumbbell:before { + content: "\f44b"; +} + +.fa-dumpster:before { + content: "\f793"; +} + +.fa-dumpster-fire:before { + content: "\f794"; +} + +.fa-dungeon:before { + content: "\f6d9"; +} + +.fa-dyalog:before { + content: "\f399"; +} + +.fa-earlybirds:before { + content: "\f39a"; +} + +.fa-ebay:before { + content: "\f4f4"; +} + +.fa-edge:before { + content: "\f282"; +} + +.fa-edge-legacy:before { + content: "\e078"; +} + +.fa-edit:before { + content: "\f044"; +} + +.fa-egg:before { + content: "\f7fb"; +} + +.fa-eject:before { + content: "\f052"; +} + +.fa-elementor:before { + content: "\f430"; +} + +.fa-ellipsis-h:before { + content: "\f141"; +} + +.fa-ellipsis-v:before { + content: "\f142"; +} + +.fa-ello:before { + content: "\f5f1"; +} + +.fa-ember:before { + content: "\f423"; +} + +.fa-empire:before { + content: "\f1d1"; +} + +.fa-envelope:before { + content: "\f0e0"; +} + +.fa-envelope-open:before { + content: "\f2b6"; +} + +.fa-envelope-open-text:before { + content: "\f658"; +} + +.fa-envelope-square:before { + content: "\f199"; +} + +.fa-envira:before { + content: "\f299"; +} + +.fa-equals:before { + content: "\f52c"; +} + +.fa-eraser:before { + content: "\f12d"; +} + +.fa-erlang:before { + content: "\f39d"; +} + +.fa-ethereum:before { + content: "\f42e"; +} + +.fa-ethernet:before { + content: "\f796"; +} + +.fa-etsy:before { + content: "\f2d7"; +} + +.fa-euro-sign:before { + content: "\f153"; +} + +.fa-evernote:before { + content: "\f839"; +} + +.fa-exchange-alt:before { + content: "\f362"; +} + +.fa-exclamation:before { + content: "\f12a"; +} + +.fa-exclamation-circle:before { + content: "\f06a"; +} + +.fa-exclamation-triangle:before { + content: "\f071"; +} + +.fa-expand:before { + content: "\f065"; +} + +.fa-expand-alt:before { + content: "\f424"; +} + +.fa-expand-arrows-alt:before { + content: "\f31e"; +} + +.fa-expeditedssl:before { + content: "\f23e"; +} + +.fa-external-link-alt:before { + content: "\f35d"; +} + +.fa-external-link-square-alt:before { + content: "\f360"; +} + +.fa-eye:before { + content: "\f06e"; +} + +.fa-eye-dropper:before { + content: "\f1fb"; +} + +.fa-eye-slash:before { + content: "\f070"; +} + +.fa-facebook:before { + content: "\f09a"; +} + +.fa-facebook-f:before { + content: "\f39e"; +} + +.fa-facebook-messenger:before { + content: "\f39f"; +} + +.fa-facebook-square:before { + content: "\f082"; +} + +.fa-fan:before { + content: "\f863"; +} + +.fa-fantasy-flight-games:before { + content: "\f6dc"; +} + +.fa-fast-backward:before { + content: "\f049"; +} + +.fa-fast-forward:before { + content: "\f050"; +} + +.fa-faucet:before { + content: "\e005"; +} + +.fa-fax:before { + content: "\f1ac"; +} + +.fa-feather:before { + content: "\f52d"; +} + +.fa-feather-alt:before { + content: "\f56b"; +} + +.fa-fedex:before { + content: "\f797"; +} + +.fa-fedora:before { + content: "\f798"; +} + +.fa-female:before { + content: "\f182"; +} + +.fa-fighter-jet:before { + content: "\f0fb"; +} + +.fa-figma:before { + content: "\f799"; +} + +.fa-file:before { + content: "\f15b"; +} + +.fa-file-alt:before { + content: "\f15c"; +} + +.fa-file-archive:before { + content: "\f1c6"; +} + +.fa-file-audio:before { + content: "\f1c7"; +} + +.fa-file-code:before { + content: "\f1c9"; +} + +.fa-file-contract:before { + content: "\f56c"; +} + +.fa-file-csv:before { + content: "\f6dd"; +} + +.fa-file-download:before { + content: "\f56d"; +} + +.fa-file-excel:before { + content: "\f1c3"; +} + +.fa-file-export:before { + content: "\f56e"; +} + +.fa-file-image:before { + content: "\f1c5"; +} + +.fa-file-import:before { + content: "\f56f"; +} + +.fa-file-invoice:before { + content: "\f570"; +} + +.fa-file-invoice-dollar:before { + content: "\f571"; +} + +.fa-file-medical:before { + content: "\f477"; +} + +.fa-file-medical-alt:before { + content: "\f478"; +} + +.fa-file-pdf:before { + content: "\f1c1"; +} + +.fa-file-powerpoint:before { + content: "\f1c4"; +} + +.fa-file-prescription:before { + content: "\f572"; +} + +.fa-file-signature:before { + content: "\f573"; +} + +.fa-file-upload:before { + content: "\f574"; +} + +.fa-file-video:before { + content: "\f1c8"; +} + +.fa-file-word:before { + content: "\f1c2"; +} + +.fa-fill:before { + content: "\f575"; +} + +.fa-fill-drip:before { + content: "\f576"; +} + +.fa-film:before { + content: "\f008"; +} + +.fa-filter:before { + content: "\f0b0"; +} + +.fa-fingerprint:before { + content: "\f577"; +} + +.fa-fire:before { + content: "\f06d"; +} + +.fa-fire-alt:before { + content: "\f7e4"; +} + +.fa-fire-extinguisher:before { + content: "\f134"; +} + +.fa-firefox:before { + content: "\f269"; +} + +.fa-firefox-browser:before { + content: "\e007"; +} + +.fa-first-aid:before { + content: "\f479"; +} + +.fa-first-order:before { + content: "\f2b0"; +} + +.fa-first-order-alt:before { + content: "\f50a"; +} + +.fa-firstdraft:before { + content: "\f3a1"; +} + +.fa-fish:before { + content: "\f578"; +} + +.fa-fist-raised:before { + content: "\f6de"; +} + +.fa-flag:before { + content: "\f024"; +} + +.fa-flag-checkered:before { + content: "\f11e"; +} + +.fa-flag-usa:before { + content: "\f74d"; +} + +.fa-flask:before { + content: "\f0c3"; +} + +.fa-flickr:before { + content: "\f16e"; +} + +.fa-flipboard:before { + content: "\f44d"; +} + +.fa-flushed:before { + content: "\f579"; +} + +.fa-fly:before { + content: "\f417"; +} + +.fa-folder:before { + content: "\f07b"; +} + +.fa-folder-minus:before { + content: "\f65d"; +} + +.fa-folder-open:before { + content: "\f07c"; +} + +.fa-folder-plus:before { + content: "\f65e"; +} + +.fa-font:before { + content: "\f031"; +} + +.fa-font-awesome:before { + content: "\f2b4"; +} + +.fa-font-awesome-alt:before { + content: "\f35c"; +} + +.fa-font-awesome-flag:before { + content: "\f425"; +} + +.fa-font-awesome-logo-full:before { + content: "\f4e6"; +} + +.fa-fonticons:before { + content: "\f280"; +} + +.fa-fonticons-fi:before { + content: "\f3a2"; +} + +.fa-football-ball:before { + content: "\f44e"; +} + +.fa-fort-awesome:before { + content: "\f286"; +} + +.fa-fort-awesome-alt:before { + content: "\f3a3"; +} + +.fa-forumbee:before { + content: "\f211"; +} + +.fa-forward:before { + content: "\f04e"; +} + +.fa-foursquare:before { + content: "\f180"; +} + +.fa-free-code-camp:before { + content: "\f2c5"; +} + +.fa-freebsd:before { + content: "\f3a4"; +} + +.fa-frog:before { + content: "\f52e"; +} + +.fa-frown:before { + content: "\f119"; +} + +.fa-frown-open:before { + content: "\f57a"; +} + +.fa-fulcrum:before { + content: "\f50b"; +} + +.fa-funnel-dollar:before { + content: "\f662"; +} + +.fa-futbol:before { + content: "\f1e3"; +} + +.fa-galactic-republic:before { + content: "\f50c"; +} + +.fa-galactic-senate:before { + content: "\f50d"; +} + +.fa-gamepad:before { + content: "\f11b"; +} + +.fa-gas-pump:before { + content: "\f52f"; +} + +.fa-gavel:before { + content: "\f0e3"; +} + +.fa-gem:before { + content: "\f3a5"; +} + +.fa-genderless:before { + content: "\f22d"; +} + +.fa-get-pocket:before { + content: "\f265"; +} + +.fa-gg:before { + content: "\f260"; +} + +.fa-gg-circle:before { + content: "\f261"; +} + +.fa-ghost:before { + content: "\f6e2"; +} + +.fa-gift:before { + content: "\f06b"; +} + +.fa-gifts:before { + content: "\f79c"; +} + +.fa-git:before { + content: "\f1d3"; +} + +.fa-git-alt:before { + content: "\f841"; +} + +.fa-git-square:before { + content: "\f1d2"; +} + +.fa-github:before { + content: "\f09b"; +} + +.fa-github-alt:before { + content: "\f113"; +} + +.fa-github-square:before { + content: "\f092"; +} + +.fa-gitkraken:before { + content: "\f3a6"; +} + +.fa-gitlab:before { + content: "\f296"; +} + +.fa-gitter:before { + content: "\f426"; +} + +.fa-glass-cheers:before { + content: "\f79f"; +} + +.fa-glass-martini:before { + content: "\f000"; +} + +.fa-glass-martini-alt:before { + content: "\f57b"; +} + +.fa-glass-whiskey:before { + content: "\f7a0"; +} + +.fa-glasses:before { + content: "\f530"; +} + +.fa-glide:before { + content: "\f2a5"; +} + +.fa-glide-g:before { + content: "\f2a6"; +} + +.fa-globe:before { + content: "\f0ac"; +} + +.fa-globe-africa:before { + content: "\f57c"; +} + +.fa-globe-americas:before { + content: "\f57d"; +} + +.fa-globe-asia:before { + content: "\f57e"; +} + +.fa-globe-europe:before { + content: "\f7a2"; +} + +.fa-gofore:before { + content: "\f3a7"; +} + +.fa-golf-ball:before { + content: "\f450"; +} + +.fa-goodreads:before { + content: "\f3a8"; +} + +.fa-goodreads-g:before { + content: "\f3a9"; +} + +.fa-google:before { + content: "\f1a0"; +} + +.fa-google-drive:before { + content: "\f3aa"; +} + +.fa-google-pay:before { + content: "\e079"; +} + +.fa-google-play:before { + content: "\f3ab"; +} + +.fa-google-plus:before { + content: "\f2b3"; +} + +.fa-google-plus-g:before { + content: "\f0d5"; +} + +.fa-google-plus-square:before { + content: "\f0d4"; +} + +.fa-google-wallet:before { + content: "\f1ee"; +} + +.fa-gopuram:before { + content: "\f664"; +} + +.fa-graduation-cap:before { + content: "\f19d"; +} + +.fa-gratipay:before { + content: "\f184"; +} + +.fa-grav:before { + content: "\f2d6"; +} + +.fa-greater-than:before { + content: "\f531"; +} + +.fa-greater-than-equal:before { + content: "\f532"; +} + +.fa-grimace:before { + content: "\f57f"; +} + +.fa-grin:before { + content: "\f580"; +} + +.fa-grin-alt:before { + content: "\f581"; +} + +.fa-grin-beam:before { + content: "\f582"; +} + +.fa-grin-beam-sweat:before { + content: "\f583"; +} + +.fa-grin-hearts:before { + content: "\f584"; +} + +.fa-grin-squint:before { + content: "\f585"; +} + +.fa-grin-squint-tears:before { + content: "\f586"; +} + +.fa-grin-stars:before { + content: "\f587"; +} + +.fa-grin-tears:before { + content: "\f588"; +} + +.fa-grin-tongue:before { + content: "\f589"; +} + +.fa-grin-tongue-squint:before { + content: "\f58a"; +} + +.fa-grin-tongue-wink:before { + content: "\f58b"; +} + +.fa-grin-wink:before { + content: "\f58c"; +} + +.fa-grip-horizontal:before { + content: "\f58d"; +} + +.fa-grip-lines:before { + content: "\f7a4"; +} + +.fa-grip-lines-vertical:before { + content: "\f7a5"; +} + +.fa-grip-vertical:before { + content: "\f58e"; +} + +.fa-gripfire:before { + content: "\f3ac"; +} + +.fa-grunt:before { + content: "\f3ad"; +} + +.fa-guilded:before { + content: "\e07e"; +} + +.fa-guitar:before { + content: "\f7a6"; +} + +.fa-gulp:before { + content: "\f3ae"; +} + +.fa-h-square:before { + content: "\f0fd"; +} + +.fa-hacker-news:before { + content: "\f1d4"; +} + +.fa-hacker-news-square:before { + content: "\f3af"; +} + +.fa-hackerrank:before { + content: "\f5f7"; +} + +.fa-hamburger:before { + content: "\f805"; +} + +.fa-hammer:before { + content: "\f6e3"; +} + +.fa-hamsa:before { + content: "\f665"; +} + +.fa-hand-holding:before { + content: "\f4bd"; +} + +.fa-hand-holding-heart:before { + content: "\f4be"; +} + +.fa-hand-holding-medical:before { + content: "\e05c"; +} + +.fa-hand-holding-usd:before { + content: "\f4c0"; +} + +.fa-hand-holding-water:before { + content: "\f4c1"; +} + +.fa-hand-lizard:before { + content: "\f258"; +} + +.fa-hand-middle-finger:before { + content: "\f806"; +} + +.fa-hand-paper:before { + content: "\f256"; +} + +.fa-hand-peace:before { + content: "\f25b"; +} + +.fa-hand-point-down:before { + content: "\f0a7"; +} + +.fa-hand-point-left:before { + content: "\f0a5"; +} + +.fa-hand-point-right:before { + content: "\f0a4"; +} + +.fa-hand-point-up:before { + content: "\f0a6"; +} + +.fa-hand-pointer:before { + content: "\f25a"; +} + +.fa-hand-rock:before { + content: "\f255"; +} + +.fa-hand-scissors:before { + content: "\f257"; +} + +.fa-hand-sparkles:before { + content: "\e05d"; +} + +.fa-hand-spock:before { + content: "\f259"; +} + +.fa-hands:before { + content: "\f4c2"; +} + +.fa-hands-helping:before { + content: "\f4c4"; +} + +.fa-hands-wash:before { + content: "\e05e"; +} + +.fa-handshake:before { + content: "\f2b5"; +} + +.fa-handshake-alt-slash:before { + content: "\e05f"; +} + +.fa-handshake-slash:before { + content: "\e060"; +} + +.fa-hanukiah:before { + content: "\f6e6"; +} + +.fa-hard-hat:before { + content: "\f807"; +} + +.fa-hashtag:before { + content: "\f292"; +} + +.fa-hat-cowboy:before { + content: "\f8c0"; +} + +.fa-hat-cowboy-side:before { + content: "\f8c1"; +} + +.fa-hat-wizard:before { + content: "\f6e8"; +} + +.fa-hdd:before { + content: "\f0a0"; +} + +.fa-head-side-cough:before { + content: "\e061"; +} + +.fa-head-side-cough-slash:before { + content: "\e062"; +} + +.fa-head-side-mask:before { + content: "\e063"; +} + +.fa-head-side-virus:before { + content: "\e064"; +} + +.fa-heading:before { + content: "\f1dc"; +} + +.fa-headphones:before { + content: "\f025"; +} + +.fa-headphones-alt:before { + content: "\f58f"; +} + +.fa-headset:before { + content: "\f590"; +} + +.fa-heart:before { + content: "\f004"; +} + +.fa-heart-broken:before { + content: "\f7a9"; +} + +.fa-heartbeat:before { + content: "\f21e"; +} + +.fa-helicopter:before { + content: "\f533"; +} + +.fa-highlighter:before { + content: "\f591"; +} + +.fa-hiking:before { + content: "\f6ec"; +} + +.fa-hippo:before { + content: "\f6ed"; +} + +.fa-hips:before { + content: "\f452"; +} + +.fa-hire-a-helper:before { + content: "\f3b0"; +} + +.fa-history:before { + content: "\f1da"; +} + +.fa-hive:before { + content: "\e07f"; +} + +.fa-hockey-puck:before { + content: "\f453"; +} + +.fa-holly-berry:before { + content: "\f7aa"; +} + +.fa-home:before { + content: "\f015"; +} + +.fa-hooli:before { + content: "\f427"; +} + +.fa-hornbill:before { + content: "\f592"; +} + +.fa-horse:before { + content: "\f6f0"; +} + +.fa-horse-head:before { + content: "\f7ab"; +} + +.fa-hospital:before { + content: "\f0f8"; +} + +.fa-hospital-alt:before { + content: "\f47d"; +} + +.fa-hospital-symbol:before { + content: "\f47e"; +} + +.fa-hospital-user:before { + content: "\f80d"; +} + +.fa-hot-tub:before { + content: "\f593"; +} + +.fa-hotdog:before { + content: "\f80f"; +} + +.fa-hotel:before { + content: "\f594"; +} + +.fa-hotjar:before { + content: "\f3b1"; +} + +.fa-hourglass:before { + content: "\f254"; +} + +.fa-hourglass-end:before { + content: "\f253"; +} + +.fa-hourglass-half:before { + content: "\f252"; +} + +.fa-hourglass-start:before { + content: "\f251"; +} + +.fa-house-damage:before { + content: "\f6f1"; +} + +.fa-house-user:before { + content: "\e065"; +} + +.fa-houzz:before { + content: "\f27c"; +} + +.fa-hryvnia:before { + content: "\f6f2"; +} + +.fa-html5:before { + content: "\f13b"; +} + +.fa-hubspot:before { + content: "\f3b2"; +} + +.fa-i-cursor:before { + content: "\f246"; +} + +.fa-ice-cream:before { + content: "\f810"; +} + +.fa-icicles:before { + content: "\f7ad"; +} + +.fa-icons:before { + content: "\f86d"; +} + +.fa-id-badge:before { + content: "\f2c1"; +} + +.fa-id-card:before { + content: "\f2c2"; +} + +.fa-id-card-alt:before { + content: "\f47f"; +} + +.fa-ideal:before { + content: "\e013"; +} + +.fa-igloo:before { + content: "\f7ae"; +} + +.fa-image:before { + content: "\f03e"; +} + +.fa-images:before { + content: "\f302"; +} + +.fa-imdb:before { + content: "\f2d8"; +} + +.fa-inbox:before { + content: "\f01c"; +} + +.fa-indent:before { + content: "\f03c"; +} + +.fa-industry:before { + content: "\f275"; +} + +.fa-infinity:before { + content: "\f534"; +} + +.fa-info:before { + content: "\f129"; +} + +.fa-info-circle:before { + content: "\f05a"; +} + +.fa-innosoft:before { + content: "\e080"; +} + +.fa-instagram:before { + content: "\f16d"; +} + +.fa-instagram-square:before { + content: "\e055"; +} + +.fa-instalod:before { + content: "\e081"; +} + +.fa-intercom:before { + content: "\f7af"; +} + +.fa-internet-explorer:before { + content: "\f26b"; +} + +.fa-invision:before { + content: "\f7b0"; +} + +.fa-ioxhost:before { + content: "\f208"; +} + +.fa-italic:before { + content: "\f033"; +} + +.fa-itch-io:before { + content: "\f83a"; +} + +.fa-itunes:before { + content: "\f3b4"; +} + +.fa-itunes-note:before { + content: "\f3b5"; +} + +.fa-java:before { + content: "\f4e4"; +} + +.fa-jedi:before { + content: "\f669"; +} + +.fa-jedi-order:before { + content: "\f50e"; +} + +.fa-jenkins:before { + content: "\f3b6"; +} + +.fa-jira:before { + content: "\f7b1"; +} + +.fa-joget:before { + content: "\f3b7"; +} + +.fa-joint:before { + content: "\f595"; +} + +.fa-joomla:before { + content: "\f1aa"; +} + +.fa-journal-whills:before { + content: "\f66a"; +} + +.fa-js:before { + content: "\f3b8"; +} + +.fa-js-square:before { + content: "\f3b9"; +} + +.fa-jsfiddle:before { + content: "\f1cc"; +} + +.fa-kaaba:before { + content: "\f66b"; +} + +.fa-kaggle:before { + content: "\f5fa"; +} + +.fa-key:before { + content: "\f084"; +} + +.fa-keybase:before { + content: "\f4f5"; +} + +.fa-keyboard:before { + content: "\f11c"; +} + +.fa-keycdn:before { + content: "\f3ba"; +} + +.fa-khanda:before { + content: "\f66d"; +} + +.fa-kickstarter:before { + content: "\f3bb"; +} + +.fa-kickstarter-k:before { + content: "\f3bc"; +} + +.fa-kiss:before { + content: "\f596"; +} + +.fa-kiss-beam:before { + content: "\f597"; +} + +.fa-kiss-wink-heart:before { + content: "\f598"; +} + +.fa-kiwi-bird:before { + content: "\f535"; +} + +.fa-korvue:before { + content: "\f42f"; +} + +.fa-landmark:before { + content: "\f66f"; +} + +.fa-language:before { + content: "\f1ab"; +} + +.fa-laptop:before { + content: "\f109"; +} + +.fa-laptop-code:before { + content: "\f5fc"; +} + +.fa-laptop-house:before { + content: "\e066"; +} + +.fa-laptop-medical:before { + content: "\f812"; +} + +.fa-laravel:before { + content: "\f3bd"; +} + +.fa-lastfm:before { + content: "\f202"; +} + +.fa-lastfm-square:before { + content: "\f203"; +} + +.fa-laugh:before { + content: "\f599"; +} + +.fa-laugh-beam:before { + content: "\f59a"; +} + +.fa-laugh-squint:before { + content: "\f59b"; +} + +.fa-laugh-wink:before { + content: "\f59c"; +} + +.fa-layer-group:before { + content: "\f5fd"; +} + +.fa-leaf:before { + content: "\f06c"; +} + +.fa-leanpub:before { + content: "\f212"; +} + +.fa-lemon:before { + content: "\f094"; +} + +.fa-less:before { + content: "\f41d"; +} + +.fa-less-than:before { + content: "\f536"; +} + +.fa-less-than-equal:before { + content: "\f537"; +} + +.fa-level-down-alt:before { + content: "\f3be"; +} + +.fa-level-up-alt:before { + content: "\f3bf"; +} + +.fa-life-ring:before { + content: "\f1cd"; +} + +.fa-lightbulb:before { + content: "\f0eb"; +} + +.fa-line:before { + content: "\f3c0"; +} + +.fa-link:before { + content: "\f0c1"; +} + +.fa-linkedin:before { + content: "\f08c"; +} + +.fa-linkedin-in:before { + content: "\f0e1"; +} + +.fa-linode:before { + content: "\f2b8"; +} + +.fa-linux:before { + content: "\f17c"; +} + +.fa-lira-sign:before { + content: "\f195"; +} + +.fa-list:before { + content: "\f03a"; +} + +.fa-list-alt:before { + content: "\f022"; +} + +.fa-list-ol:before { + content: "\f0cb"; +} + +.fa-list-ul:before { + content: "\f0ca"; +} + +.fa-location-arrow:before { + content: "\f124"; +} + +.fa-lock:before { + content: "\f023"; +} + +.fa-lock-open:before { + content: "\f3c1"; +} + +.fa-long-arrow-alt-down:before { + content: "\f309"; +} + +.fa-long-arrow-alt-left:before { + content: "\f30a"; +} + +.fa-long-arrow-alt-right:before { + content: "\f30b"; +} + +.fa-long-arrow-alt-up:before { + content: "\f30c"; +} + +.fa-low-vision:before { + content: "\f2a8"; +} + +.fa-luggage-cart:before { + content: "\f59d"; +} + +.fa-lungs:before { + content: "\f604"; +} + +.fa-lungs-virus:before { + content: "\e067"; +} + +.fa-lyft:before { + content: "\f3c3"; +} + +.fa-magento:before { + content: "\f3c4"; +} + +.fa-magic:before { + content: "\f0d0"; +} + +.fa-magnet:before { + content: "\f076"; +} + +.fa-mail-bulk:before { + content: "\f674"; +} + +.fa-mailchimp:before { + content: "\f59e"; +} + +.fa-male:before { + content: "\f183"; +} + +.fa-mandalorian:before { + content: "\f50f"; +} + +.fa-map:before { + content: "\f279"; +} + +.fa-map-marked:before { + content: "\f59f"; +} + +.fa-map-marked-alt:before { + content: "\f5a0"; +} + +.fa-map-marker:before { + content: "\f041"; +} + +.fa-map-marker-alt:before { + content: "\f3c5"; +} + +.fa-map-pin:before { + content: "\f276"; +} + +.fa-map-signs:before { + content: "\f277"; +} + +.fa-markdown:before { + content: "\f60f"; +} + +.fa-marker:before { + content: "\f5a1"; +} + +.fa-mars:before { + content: "\f222"; +} + +.fa-mars-double:before { + content: "\f227"; +} + +.fa-mars-stroke:before { + content: "\f229"; +} + +.fa-mars-stroke-h:before { + content: "\f22b"; +} + +.fa-mars-stroke-v:before { + content: "\f22a"; +} + +.fa-mask:before { + content: "\f6fa"; +} + +.fa-mastodon:before { + content: "\f4f6"; +} + +.fa-maxcdn:before { + content: "\f136"; +} + +.fa-mdb:before { + content: "\f8ca"; +} + +.fa-medal:before { + content: "\f5a2"; +} + +.fa-medapps:before { + content: "\f3c6"; +} + +.fa-medium:before { + content: "\f23a"; +} + +.fa-medium-m:before { + content: "\f3c7"; +} + +.fa-medkit:before { + content: "\f0fa"; +} + +.fa-medrt:before { + content: "\f3c8"; +} + +.fa-meetup:before { + content: "\f2e0"; +} + +.fa-megaport:before { + content: "\f5a3"; +} + +.fa-meh:before { + content: "\f11a"; +} + +.fa-meh-blank:before { + content: "\f5a4"; +} + +.fa-meh-rolling-eyes:before { + content: "\f5a5"; +} + +.fa-memory:before { + content: "\f538"; +} + +.fa-mendeley:before { + content: "\f7b3"; +} + +.fa-menorah:before { + content: "\f676"; +} + +.fa-mercury:before { + content: "\f223"; +} + +.fa-meteor:before { + content: "\f753"; +} + +.fa-microblog:before { + content: "\e01a"; +} + +.fa-microchip:before { + content: "\f2db"; +} + +.fa-microphone:before { + content: "\f130"; +} + +.fa-microphone-alt:before { + content: "\f3c9"; +} + +.fa-microphone-alt-slash:before { + content: "\f539"; +} + +.fa-microphone-slash:before { + content: "\f131"; +} + +.fa-microscope:before { + content: "\f610"; +} + +.fa-microsoft:before { + content: "\f3ca"; +} + +.fa-minus:before { + content: "\f068"; +} + +.fa-minus-circle:before { + content: "\f056"; +} + +.fa-minus-square:before { + content: "\f146"; +} + +.fa-mitten:before { + content: "\f7b5"; +} + +.fa-mix:before { + content: "\f3cb"; +} + +.fa-mixcloud:before { + content: "\f289"; +} + +.fa-mixer:before { + content: "\e056"; +} + +.fa-mizuni:before { + content: "\f3cc"; +} + +.fa-mobile:before { + content: "\f10b"; +} + +.fa-mobile-alt:before { + content: "\f3cd"; +} + +.fa-modx:before { + content: "\f285"; +} + +.fa-monero:before { + content: "\f3d0"; +} + +.fa-money-bill:before { + content: "\f0d6"; +} + +.fa-money-bill-alt:before { + content: "\f3d1"; +} + +.fa-money-bill-wave:before { + content: "\f53a"; +} + +.fa-money-bill-wave-alt:before { + content: "\f53b"; +} + +.fa-money-check:before { + content: "\f53c"; +} + +.fa-money-check-alt:before { + content: "\f53d"; +} + +.fa-monument:before { + content: "\f5a6"; +} + +.fa-moon:before { + content: "\f186"; +} + +.fa-mortar-pestle:before { + content: "\f5a7"; +} + +.fa-mosque:before { + content: "\f678"; +} + +.fa-motorcycle:before { + content: "\f21c"; +} + +.fa-mountain:before { + content: "\f6fc"; +} + +.fa-mouse:before { + content: "\f8cc"; +} + +.fa-mouse-pointer:before { + content: "\f245"; +} + +.fa-mug-hot:before { + content: "\f7b6"; +} + +.fa-music:before { + content: "\f001"; +} + +.fa-napster:before { + content: "\f3d2"; +} + +.fa-neos:before { + content: "\f612"; +} + +.fa-network-wired:before { + content: "\f6ff"; +} + +.fa-neuter:before { + content: "\f22c"; +} + +.fa-newspaper:before { + content: "\f1ea"; +} + +.fa-nimblr:before { + content: "\f5a8"; +} + +.fa-node:before { + content: "\f419"; +} + +.fa-node-js:before { + content: "\f3d3"; +} + +.fa-not-equal:before { + content: "\f53e"; +} + +.fa-notes-medical:before { + content: "\f481"; +} + +.fa-npm:before { + content: "\f3d4"; +} + +.fa-ns8:before { + content: "\f3d5"; +} + +.fa-nutritionix:before { + content: "\f3d6"; +} + +.fa-object-group:before { + content: "\f247"; +} + +.fa-object-ungroup:before { + content: "\f248"; +} + +.fa-octopus-deploy:before { + content: "\e082"; +} + +.fa-odnoklassniki:before { + content: "\f263"; +} + +.fa-odnoklassniki-square:before { + content: "\f264"; +} + +.fa-oil-can:before { + content: "\f613"; +} + +.fa-old-republic:before { + content: "\f510"; +} + +.fa-om:before { + content: "\f679"; +} + +.fa-opencart:before { + content: "\f23d"; +} + +.fa-openid:before { + content: "\f19b"; +} + +.fa-opera:before { + content: "\f26a"; +} + +.fa-optin-monster:before { + content: "\f23c"; +} + +.fa-orcid:before { + content: "\f8d2"; +} + +.fa-osi:before { + content: "\f41a"; +} + +.fa-otter:before { + content: "\f700"; +} + +.fa-outdent:before { + content: "\f03b"; +} + +.fa-page4:before { + content: "\f3d7"; +} + +.fa-pagelines:before { + content: "\f18c"; +} + +.fa-pager:before { + content: "\f815"; +} + +.fa-paint-brush:before { + content: "\f1fc"; +} + +.fa-paint-roller:before { + content: "\f5aa"; +} + +.fa-palette:before { + content: "\f53f"; +} + +.fa-palfed:before { + content: "\f3d8"; +} + +.fa-pallet:before { + content: "\f482"; +} + +.fa-paper-plane:before { + content: "\f1d8"; +} + +.fa-paperclip:before { + content: "\f0c6"; +} + +.fa-parachute-box:before { + content: "\f4cd"; +} + +.fa-paragraph:before { + content: "\f1dd"; +} + +.fa-parking:before { + content: "\f540"; +} + +.fa-passport:before { + content: "\f5ab"; +} + +.fa-pastafarianism:before { + content: "\f67b"; +} + +.fa-paste:before { + content: "\f0ea"; +} + +.fa-patreon:before { + content: "\f3d9"; +} + +.fa-pause:before { + content: "\f04c"; +} + +.fa-pause-circle:before { + content: "\f28b"; +} + +.fa-paw:before { + content: "\f1b0"; +} + +.fa-paypal:before { + content: "\f1ed"; +} + +.fa-peace:before { + content: "\f67c"; +} + +.fa-pen:before { + content: "\f304"; +} + +.fa-pen-alt:before { + content: "\f305"; +} + +.fa-pen-fancy:before { + content: "\f5ac"; +} + +.fa-pen-nib:before { + content: "\f5ad"; +} + +.fa-pen-square:before { + content: "\f14b"; +} + +.fa-pencil-alt:before { + content: "\f303"; +} + +.fa-pencil-ruler:before { + content: "\f5ae"; +} + +.fa-penny-arcade:before { + content: "\f704"; +} + +.fa-people-arrows:before { + content: "\e068"; +} + +.fa-people-carry:before { + content: "\f4ce"; +} + +.fa-pepper-hot:before { + content: "\f816"; +} + +.fa-perbyte:before { + content: "\e083"; +} + +.fa-percent:before { + content: "\f295"; +} + +.fa-percentage:before { + content: "\f541"; +} + +.fa-periscope:before { + content: "\f3da"; +} + +.fa-person-booth:before { + content: "\f756"; +} + +.fa-phabricator:before { + content: "\f3db"; +} + +.fa-phoenix-framework:before { + content: "\f3dc"; +} + +.fa-phoenix-squadron:before { + content: "\f511"; +} + +.fa-phone:before { + content: "\f095"; +} + +.fa-phone-alt:before { + content: "\f879"; +} + +.fa-phone-slash:before { + content: "\f3dd"; +} + +.fa-phone-square:before { + content: "\f098"; +} + +.fa-phone-square-alt:before { + content: "\f87b"; +} + +.fa-phone-volume:before { + content: "\f2a0"; +} + +.fa-photo-video:before { + content: "\f87c"; +} + +.fa-php:before { + content: "\f457"; +} + +.fa-pied-piper:before { + content: "\f2ae"; +} + +.fa-pied-piper-alt:before { + content: "\f1a8"; +} + +.fa-pied-piper-hat:before { + content: "\f4e5"; +} + +.fa-pied-piper-pp:before { + content: "\f1a7"; +} + +.fa-pied-piper-square:before { + content: "\e01e"; +} + +.fa-piggy-bank:before { + content: "\f4d3"; +} + +.fa-pills:before { + content: "\f484"; +} + +.fa-pinterest:before { + content: "\f0d2"; +} + +.fa-pinterest-p:before { + content: "\f231"; +} + +.fa-pinterest-square:before { + content: "\f0d3"; +} + +.fa-pizza-slice:before { + content: "\f818"; +} + +.fa-place-of-worship:before { + content: "\f67f"; +} + +.fa-plane:before { + content: "\f072"; +} + +.fa-plane-arrival:before { + content: "\f5af"; +} + +.fa-plane-departure:before { + content: "\f5b0"; +} + +.fa-plane-slash:before { + content: "\e069"; +} + +.fa-play:before { + content: "\f04b"; +} + +.fa-play-circle:before { + content: "\f144"; +} + +.fa-playstation:before { + content: "\f3df"; +} + +.fa-plug:before { + content: "\f1e6"; +} + +.fa-plus:before { + content: "\f067"; +} + +.fa-plus-circle:before { + content: "\f055"; +} + +.fa-plus-square:before { + content: "\f0fe"; +} + +.fa-podcast:before { + content: "\f2ce"; +} + +.fa-poll:before { + content: "\f681"; +} + +.fa-poll-h:before { + content: "\f682"; +} + +.fa-poo:before { + content: "\f2fe"; +} + +.fa-poo-storm:before { + content: "\f75a"; +} + +.fa-poop:before { + content: "\f619"; +} + +.fa-portrait:before { + content: "\f3e0"; +} + +.fa-pound-sign:before { + content: "\f154"; +} + +.fa-power-off:before { + content: "\f011"; +} + +.fa-pray:before { + content: "\f683"; +} + +.fa-praying-hands:before { + content: "\f684"; +} + +.fa-prescription:before { + content: "\f5b1"; +} + +.fa-prescription-bottle:before { + content: "\f485"; +} + +.fa-prescription-bottle-alt:before { + content: "\f486"; +} + +.fa-print:before { + content: "\f02f"; +} + +.fa-procedures:before { + content: "\f487"; +} + +.fa-product-hunt:before { + content: "\f288"; +} + +.fa-project-diagram:before { + content: "\f542"; +} + +.fa-pump-medical:before { + content: "\e06a"; +} + +.fa-pump-soap:before { + content: "\e06b"; +} + +.fa-pushed:before { + content: "\f3e1"; +} + +.fa-puzzle-piece:before { + content: "\f12e"; +} + +.fa-python:before { + content: "\f3e2"; +} + +.fa-qq:before { + content: "\f1d6"; +} + +.fa-qrcode:before { + content: "\f029"; +} + +.fa-question:before { + content: "\f128"; +} + +.fa-question-circle:before { + content: "\f059"; +} + +.fa-quidditch:before { + content: "\f458"; +} + +.fa-quinscape:before { + content: "\f459"; +} + +.fa-quora:before { + content: "\f2c4"; +} + +.fa-quote-left:before { + content: "\f10d"; +} + +.fa-quote-right:before { + content: "\f10e"; +} + +.fa-quran:before { + content: "\f687"; +} + +.fa-r-project:before { + content: "\f4f7"; +} + +.fa-radiation:before { + content: "\f7b9"; +} + +.fa-radiation-alt:before { + content: "\f7ba"; +} + +.fa-rainbow:before { + content: "\f75b"; +} + +.fa-random:before { + content: "\f074"; +} + +.fa-raspberry-pi:before { + content: "\f7bb"; +} + +.fa-ravelry:before { + content: "\f2d9"; +} + +.fa-react:before { + content: "\f41b"; +} + +.fa-reacteurope:before { + content: "\f75d"; +} + +.fa-readme:before { + content: "\f4d5"; +} + +.fa-rebel:before { + content: "\f1d0"; +} + +.fa-receipt:before { + content: "\f543"; +} + +.fa-record-vinyl:before { + content: "\f8d9"; +} + +.fa-recycle:before { + content: "\f1b8"; +} + +.fa-red-river:before { + content: "\f3e3"; +} + +.fa-reddit:before { + content: "\f1a1"; +} + +.fa-reddit-alien:before { + content: "\f281"; +} + +.fa-reddit-square:before { + content: "\f1a2"; +} + +.fa-redhat:before { + content: "\f7bc"; +} + +.fa-redo:before { + content: "\f01e"; +} + +.fa-redo-alt:before { + content: "\f2f9"; +} + +.fa-registered:before { + content: "\f25d"; +} + +.fa-remove-format:before { + content: "\f87d"; +} + +.fa-renren:before { + content: "\f18b"; +} + +.fa-reply:before { + content: "\f3e5"; +} + +.fa-reply-all:before { + content: "\f122"; +} + +.fa-replyd:before { + content: "\f3e6"; +} + +.fa-republican:before { + content: "\f75e"; +} + +.fa-researchgate:before { + content: "\f4f8"; +} + +.fa-resolving:before { + content: "\f3e7"; +} + +.fa-restroom:before { + content: "\f7bd"; +} + +.fa-retweet:before { + content: "\f079"; +} + +.fa-rev:before { + content: "\f5b2"; +} + +.fa-ribbon:before { + content: "\f4d6"; +} + +.fa-ring:before { + content: "\f70b"; +} + +.fa-road:before { + content: "\f018"; +} + +.fa-robot:before { + content: "\f544"; +} + +.fa-rocket:before { + content: "\f135"; +} + +.fa-rocketchat:before { + content: "\f3e8"; +} + +.fa-rockrms:before { + content: "\f3e9"; +} + +.fa-route:before { + content: "\f4d7"; +} + +.fa-rss:before { + content: "\f09e"; +} + +.fa-rss-square:before { + content: "\f143"; +} + +.fa-ruble-sign:before { + content: "\f158"; +} + +.fa-ruler:before { + content: "\f545"; +} + +.fa-ruler-combined:before { + content: "\f546"; +} + +.fa-ruler-horizontal:before { + content: "\f547"; +} + +.fa-ruler-vertical:before { + content: "\f548"; +} + +.fa-running:before { + content: "\f70c"; +} + +.fa-rupee-sign:before { + content: "\f156"; +} + +.fa-rust:before { + content: "\e07a"; +} + +.fa-sad-cry:before { + content: "\f5b3"; +} + +.fa-sad-tear:before { + content: "\f5b4"; +} + +.fa-safari:before { + content: "\f267"; +} + +.fa-salesforce:before { + content: "\f83b"; +} + +.fa-sass:before { + content: "\f41e"; +} + +.fa-satellite:before { + content: "\f7bf"; +} + +.fa-satellite-dish:before { + content: "\f7c0"; +} + +.fa-save:before { + content: "\f0c7"; +} + +.fa-schlix:before { + content: "\f3ea"; +} + +.fa-school:before { + content: "\f549"; +} + +.fa-screwdriver:before { + content: "\f54a"; +} + +.fa-scribd:before { + content: "\f28a"; +} + +.fa-scroll:before { + content: "\f70e"; +} + +.fa-sd-card:before { + content: "\f7c2"; +} + +.fa-search:before { + content: "\f002"; +} + +.fa-search-dollar:before { + content: "\f688"; +} + +.fa-search-location:before { + content: "\f689"; +} + +.fa-search-minus:before { + content: "\f010"; +} + +.fa-search-plus:before { + content: "\f00e"; +} + +.fa-searchengin:before { + content: "\f3eb"; +} + +.fa-seedling:before { + content: "\f4d8"; +} + +.fa-sellcast:before { + content: "\f2da"; +} + +.fa-sellsy:before { + content: "\f213"; +} + +.fa-server:before { + content: "\f233"; +} + +.fa-servicestack:before { + content: "\f3ec"; +} + +.fa-shapes:before { + content: "\f61f"; +} + +.fa-share:before { + content: "\f064"; +} + +.fa-share-alt:before { + content: "\f1e0"; +} + +.fa-share-alt-square:before { + content: "\f1e1"; +} + +.fa-share-square:before { + content: "\f14d"; +} + +.fa-shekel-sign:before { + content: "\f20b"; +} + +.fa-shield-alt:before { + content: "\f3ed"; +} + +.fa-shield-virus:before { + content: "\e06c"; +} + +.fa-ship:before { + content: "\f21a"; +} + +.fa-shipping-fast:before { + content: "\f48b"; +} + +.fa-shirtsinbulk:before { + content: "\f214"; +} + +.fa-shoe-prints:before { + content: "\f54b"; +} + +.fa-shopify:before { + content: "\e057"; +} + +.fa-shopping-bag:before { + content: "\f290"; +} + +.fa-shopping-basket:before { + content: "\f291"; +} + +.fa-shopping-cart:before { + content: "\f07a"; +} + +.fa-shopware:before { + content: "\f5b5"; +} + +.fa-shower:before { + content: "\f2cc"; +} + +.fa-shuttle-van:before { + content: "\f5b6"; +} + +.fa-sign:before { + content: "\f4d9"; +} + +.fa-sign-in-alt:before { + content: "\f2f6"; +} + +.fa-sign-language:before { + content: "\f2a7"; +} + +.fa-sign-out-alt:before { + content: "\f2f5"; +} + +.fa-signal:before { + content: "\f012"; +} + +.fa-signature:before { + content: "\f5b7"; +} + +.fa-sim-card:before { + content: "\f7c4"; +} + +.fa-simplybuilt:before { + content: "\f215"; +} + +.fa-sink:before { + content: "\e06d"; +} + +.fa-sistrix:before { + content: "\f3ee"; +} + +.fa-sitemap:before { + content: "\f0e8"; +} + +.fa-sith:before { + content: "\f512"; +} + +.fa-skating:before { + content: "\f7c5"; +} + +.fa-sketch:before { + content: "\f7c6"; +} + +.fa-skiing:before { + content: "\f7c9"; +} + +.fa-skiing-nordic:before { + content: "\f7ca"; +} + +.fa-skull:before { + content: "\f54c"; +} + +.fa-skull-crossbones:before { + content: "\f714"; +} + +.fa-skyatlas:before { + content: "\f216"; +} + +.fa-skype:before { + content: "\f17e"; +} + +.fa-slack:before { + content: "\f198"; +} + +.fa-slack-hash:before { + content: "\f3ef"; +} + +.fa-slash:before { + content: "\f715"; +} + +.fa-sleigh:before { + content: "\f7cc"; +} + +.fa-sliders-h:before { + content: "\f1de"; +} + +.fa-slideshare:before { + content: "\f1e7"; +} + +.fa-smile:before { + content: "\f118"; +} + +.fa-smile-beam:before { + content: "\f5b8"; +} + +.fa-smile-wink:before { + content: "\f4da"; +} + +.fa-smog:before { + content: "\f75f"; +} + +.fa-smoking:before { + content: "\f48d"; +} + +.fa-smoking-ban:before { + content: "\f54d"; +} + +.fa-sms:before { + content: "\f7cd"; +} + +.fa-snapchat:before { + content: "\f2ab"; +} + +.fa-snapchat-ghost:before { + content: "\f2ac"; +} + +.fa-snapchat-square:before { + content: "\f2ad"; +} + +.fa-snowboarding:before { + content: "\f7ce"; +} + +.fa-snowflake:before { + content: "\f2dc"; +} + +.fa-snowman:before { + content: "\f7d0"; +} + +.fa-snowplow:before { + content: "\f7d2"; +} + +.fa-soap:before { + content: "\e06e"; +} + +.fa-socks:before { + content: "\f696"; +} + +.fa-solar-panel:before { + content: "\f5ba"; +} + +.fa-sort:before { + content: "\f0dc"; +} + +.fa-sort-alpha-down:before { + content: "\f15d"; +} + +.fa-sort-alpha-down-alt:before { + content: "\f881"; +} + +.fa-sort-alpha-up:before { + content: "\f15e"; +} + +.fa-sort-alpha-up-alt:before { + content: "\f882"; +} + +.fa-sort-amount-down:before { + content: "\f160"; +} + +.fa-sort-amount-down-alt:before { + content: "\f884"; +} + +.fa-sort-amount-up:before { + content: "\f161"; +} + +.fa-sort-amount-up-alt:before { + content: "\f885"; +} + +.fa-sort-down:before { + content: "\f0dd"; +} + +.fa-sort-numeric-down:before { + content: "\f162"; +} + +.fa-sort-numeric-down-alt:before { + content: "\f886"; +} + +.fa-sort-numeric-up:before { + content: "\f163"; +} + +.fa-sort-numeric-up-alt:before { + content: "\f887"; +} + +.fa-sort-up:before { + content: "\f0de"; +} + +.fa-soundcloud:before { + content: "\f1be"; +} + +.fa-sourcetree:before { + content: "\f7d3"; +} + +.fa-spa:before { + content: "\f5bb"; +} + +.fa-space-shuttle:before { + content: "\f197"; +} + +.fa-speakap:before { + content: "\f3f3"; +} + +.fa-speaker-deck:before { + content: "\f83c"; +} + +.fa-spell-check:before { + content: "\f891"; +} + +.fa-spider:before { + content: "\f717"; +} + +.fa-spinner:before { + content: "\f110"; +} + +.fa-splotch:before { + content: "\f5bc"; +} + +.fa-spotify:before { + content: "\f1bc"; +} + +.fa-spray-can:before { + content: "\f5bd"; +} + +.fa-square:before { + content: "\f0c8"; +} + +.fa-square-full:before { + content: "\f45c"; +} + +.fa-square-root-alt:before { + content: "\f698"; +} + +.fa-squarespace:before { + content: "\f5be"; +} + +.fa-stack-exchange:before { + content: "\f18d"; +} + +.fa-stack-overflow:before { + content: "\f16c"; +} + +.fa-stackpath:before { + content: "\f842"; +} + +.fa-stamp:before { + content: "\f5bf"; +} + +.fa-star:before { + content: "\f005"; +} + +.fa-star-and-crescent:before { + content: "\f699"; +} + +.fa-star-half:before { + content: "\f089"; +} + +.fa-star-half-alt:before { + content: "\f5c0"; +} + +.fa-star-of-david:before { + content: "\f69a"; +} + +.fa-star-of-life:before { + content: "\f621"; +} + +.fa-staylinked:before { + content: "\f3f5"; +} + +.fa-steam:before { + content: "\f1b6"; +} + +.fa-steam-square:before { + content: "\f1b7"; +} + +.fa-steam-symbol:before { + content: "\f3f6"; +} + +.fa-step-backward:before { + content: "\f048"; +} + +.fa-step-forward:before { + content: "\f051"; +} + +.fa-stethoscope:before { + content: "\f0f1"; +} + +.fa-sticker-mule:before { + content: "\f3f7"; +} + +.fa-sticky-note:before { + content: "\f249"; +} + +.fa-stop:before { + content: "\f04d"; +} + +.fa-stop-circle:before { + content: "\f28d"; +} + +.fa-stopwatch:before { + content: "\f2f2"; +} + +.fa-stopwatch-20:before { + content: "\e06f"; +} + +.fa-store:before { + content: "\f54e"; +} + +.fa-store-alt:before { + content: "\f54f"; +} + +.fa-store-alt-slash:before { + content: "\e070"; +} + +.fa-store-slash:before { + content: "\e071"; +} + +.fa-strava:before { + content: "\f428"; +} + +.fa-stream:before { + content: "\f550"; +} + +.fa-street-view:before { + content: "\f21d"; +} + +.fa-strikethrough:before { + content: "\f0cc"; +} + +.fa-stripe:before { + content: "\f429"; +} + +.fa-stripe-s:before { + content: "\f42a"; +} + +.fa-stroopwafel:before { + content: "\f551"; +} + +.fa-studiovinari:before { + content: "\f3f8"; +} + +.fa-stumbleupon:before { + content: "\f1a4"; +} + +.fa-stumbleupon-circle:before { + content: "\f1a3"; +} + +.fa-subscript:before { + content: "\f12c"; +} + +.fa-subway:before { + content: "\f239"; +} + +.fa-suitcase:before { + content: "\f0f2"; +} + +.fa-suitcase-rolling:before { + content: "\f5c1"; +} + +.fa-sun:before { + content: "\f185"; +} + +.fa-superpowers:before { + content: "\f2dd"; +} + +.fa-superscript:before { + content: "\f12b"; +} + +.fa-supple:before { + content: "\f3f9"; +} + +.fa-surprise:before { + content: "\f5c2"; +} + +.fa-suse:before { + content: "\f7d6"; +} + +.fa-swatchbook:before { + content: "\f5c3"; +} + +.fa-swift:before { + content: "\f8e1"; +} + +.fa-swimmer:before { + content: "\f5c4"; +} + +.fa-swimming-pool:before { + content: "\f5c5"; +} + +.fa-symfony:before { + content: "\f83d"; +} + +.fa-synagogue:before { + content: "\f69b"; +} + +.fa-sync:before { + content: "\f021"; +} + +.fa-sync-alt:before { + content: "\f2f1"; +} + +.fa-syringe:before { + content: "\f48e"; +} + +.fa-table:before { + content: "\f0ce"; +} + +.fa-table-tennis:before { + content: "\f45d"; +} + +.fa-tablet:before { + content: "\f10a"; +} + +.fa-tablet-alt:before { + content: "\f3fa"; +} + +.fa-tablets:before { + content: "\f490"; +} + +.fa-tachometer-alt:before { + content: "\f3fd"; +} + +.fa-tag:before { + content: "\f02b"; +} + +.fa-tags:before { + content: "\f02c"; +} + +.fa-tape:before { + content: "\f4db"; +} + +.fa-tasks:before { + content: "\f0ae"; +} + +.fa-taxi:before { + content: "\f1ba"; +} + +.fa-teamspeak:before { + content: "\f4f9"; +} + +.fa-teeth:before { + content: "\f62e"; +} + +.fa-teeth-open:before { + content: "\f62f"; +} + +.fa-telegram:before { + content: "\f2c6"; +} + +.fa-telegram-plane:before { + content: "\f3fe"; +} + +.fa-temperature-high:before { + content: "\f769"; +} + +.fa-temperature-low:before { + content: "\f76b"; +} + +.fa-tencent-weibo:before { + content: "\f1d5"; +} + +.fa-tenge:before { + content: "\f7d7"; +} + +.fa-terminal:before { + content: "\f120"; +} + +.fa-text-height:before { + content: "\f034"; +} + +.fa-text-width:before { + content: "\f035"; +} + +.fa-th:before { + content: "\f00a"; +} + +.fa-th-large:before { + content: "\f009"; +} + +.fa-th-list:before { + content: "\f00b"; +} + +.fa-the-red-yeti:before { + content: "\f69d"; +} + +.fa-theater-masks:before { + content: "\f630"; +} + +.fa-themeco:before { + content: "\f5c6"; +} + +.fa-themeisle:before { + content: "\f2b2"; +} + +.fa-thermometer:before { + content: "\f491"; +} + +.fa-thermometer-empty:before { + content: "\f2cb"; +} + +.fa-thermometer-full:before { + content: "\f2c7"; +} + +.fa-thermometer-half:before { + content: "\f2c9"; +} + +.fa-thermometer-quarter:before { + content: "\f2ca"; +} + +.fa-thermometer-three-quarters:before { + content: "\f2c8"; +} + +.fa-think-peaks:before { + content: "\f731"; +} + +.fa-thumbs-down:before { + content: "\f165"; +} + +.fa-thumbs-up:before { + content: "\f164"; +} + +.fa-thumbtack:before { + content: "\f08d"; +} + +.fa-ticket-alt:before { + content: "\f3ff"; +} + +.fa-tiktok:before { + content: "\e07b"; +} + +.fa-times:before { + content: "\f00d"; +} + +.fa-times-circle:before { + content: "\f057"; +} + +.fa-tint:before { + content: "\f043"; +} + +.fa-tint-slash:before { + content: "\f5c7"; +} + +.fa-tired:before { + content: "\f5c8"; +} + +.fa-toggle-off:before { + content: "\f204"; +} + +.fa-toggle-on:before { + content: "\f205"; +} + +.fa-toilet:before { + content: "\f7d8"; +} + +.fa-toilet-paper:before { + content: "\f71e"; +} + +.fa-toilet-paper-slash:before { + content: "\e072"; +} + +.fa-toolbox:before { + content: "\f552"; +} + +.fa-tools:before { + content: "\f7d9"; +} + +.fa-tooth:before { + content: "\f5c9"; +} + +.fa-torah:before { + content: "\f6a0"; +} + +.fa-torii-gate:before { + content: "\f6a1"; +} + +.fa-tractor:before { + content: "\f722"; +} + +.fa-trade-federation:before { + content: "\f513"; +} + +.fa-trademark:before { + content: "\f25c"; +} + +.fa-traffic-light:before { + content: "\f637"; +} + +.fa-trailer:before { + content: "\e041"; +} + +.fa-train:before { + content: "\f238"; +} + +.fa-tram:before { + content: "\f7da"; +} + +.fa-transgender:before { + content: "\f224"; +} + +.fa-transgender-alt:before { + content: "\f225"; +} + +.fa-trash:before { + content: "\f1f8"; +} + +.fa-trash-alt:before { + content: "\f2ed"; +} + +.fa-trash-restore:before { + content: "\f829"; +} + +.fa-trash-restore-alt:before { + content: "\f82a"; +} + +.fa-tree:before { + content: "\f1bb"; +} + +.fa-trello:before { + content: "\f181"; +} + +.fa-tripadvisor:before { + content: "\f262"; +} + +.fa-trophy:before { + content: "\f091"; +} + +.fa-truck:before { + content: "\f0d1"; +} + +.fa-truck-loading:before { + content: "\f4de"; +} + +.fa-truck-monster:before { + content: "\f63b"; +} + +.fa-truck-moving:before { + content: "\f4df"; +} + +.fa-truck-pickup:before { + content: "\f63c"; +} + +.fa-tshirt:before { + content: "\f553"; +} + +.fa-tty:before { + content: "\f1e4"; +} + +.fa-tumblr:before { + content: "\f173"; +} + +.fa-tumblr-square:before { + content: "\f174"; +} + +.fa-tv:before { + content: "\f26c"; +} + +.fa-twitch:before { + content: "\f1e8"; +} + +.fa-twitter:before { + content: "\f099"; +} + +.fa-twitter-square:before { + content: "\f081"; +} + +.fa-typo3:before { + content: "\f42b"; +} + +.fa-uber:before { + content: "\f402"; +} + +.fa-ubuntu:before { + content: "\f7df"; +} + +.fa-uikit:before { + content: "\f403"; +} + +.fa-umbraco:before { + content: "\f8e8"; +} + +.fa-umbrella:before { + content: "\f0e9"; +} + +.fa-umbrella-beach:before { + content: "\f5ca"; +} + +.fa-uncharted:before { + content: "\e084"; +} + +.fa-underline:before { + content: "\f0cd"; +} + +.fa-undo:before { + content: "\f0e2"; +} + +.fa-undo-alt:before { + content: "\f2ea"; +} + +.fa-uniregistry:before { + content: "\f404"; +} + +.fa-unity:before { + content: "\e049"; +} + +.fa-universal-access:before { + content: "\f29a"; +} + +.fa-university:before { + content: "\f19c"; +} + +.fa-unlink:before { + content: "\f127"; +} + +.fa-unlock:before { + content: "\f09c"; +} + +.fa-unlock-alt:before { + content: "\f13e"; +} + +.fa-unsplash:before { + content: "\e07c"; +} + +.fa-untappd:before { + content: "\f405"; +} + +.fa-upload:before { + content: "\f093"; +} + +.fa-ups:before { + content: "\f7e0"; +} + +.fa-usb:before { + content: "\f287"; +} + +.fa-user:before { + content: "\f007"; +} + +.fa-user-alt:before { + content: "\f406"; +} + +.fa-user-alt-slash:before { + content: "\f4fa"; +} + +.fa-user-astronaut:before { + content: "\f4fb"; +} + +.fa-user-check:before { + content: "\f4fc"; +} + +.fa-user-circle:before { + content: "\f2bd"; +} + +.fa-user-clock:before { + content: "\f4fd"; +} + +.fa-user-cog:before { + content: "\f4fe"; +} + +.fa-user-edit:before { + content: "\f4ff"; +} + +.fa-user-friends:before { + content: "\f500"; +} + +.fa-user-graduate:before { + content: "\f501"; +} + +.fa-user-injured:before { + content: "\f728"; +} + +.fa-user-lock:before { + content: "\f502"; +} + +.fa-user-md:before { + content: "\f0f0"; +} + +.fa-user-minus:before { + content: "\f503"; +} + +.fa-user-ninja:before { + content: "\f504"; +} + +.fa-user-nurse:before { + content: "\f82f"; +} + +.fa-user-plus:before { + content: "\f234"; +} + +.fa-user-secret:before { + content: "\f21b"; +} + +.fa-user-shield:before { + content: "\f505"; +} + +.fa-user-slash:before { + content: "\f506"; +} + +.fa-user-tag:before { + content: "\f507"; +} + +.fa-user-tie:before { + content: "\f508"; +} + +.fa-user-times:before { + content: "\f235"; +} + +.fa-users:before { + content: "\f0c0"; +} + +.fa-users-cog:before { + content: "\f509"; +} + +.fa-users-slash:before { + content: "\e073"; +} + +.fa-usps:before { + content: "\f7e1"; +} + +.fa-ussunnah:before { + content: "\f407"; +} + +.fa-utensil-spoon:before { + content: "\f2e5"; +} + +.fa-utensils:before { + content: "\f2e7"; +} + +.fa-vaadin:before { + content: "\f408"; +} + +.fa-vector-square:before { + content: "\f5cb"; +} + +.fa-venus:before { + content: "\f221"; +} + +.fa-venus-double:before { + content: "\f226"; +} + +.fa-venus-mars:before { + content: "\f228"; +} + +.fa-vest:before { + content: "\e085"; +} + +.fa-vest-patches:before { + content: "\e086"; +} + +.fa-viacoin:before { + content: "\f237"; +} + +.fa-viadeo:before { + content: "\f2a9"; +} + +.fa-viadeo-square:before { + content: "\f2aa"; +} + +.fa-vial:before { + content: "\f492"; +} + +.fa-vials:before { + content: "\f493"; +} + +.fa-viber:before { + content: "\f409"; +} + +.fa-video:before { + content: "\f03d"; +} + +.fa-video-slash:before { + content: "\f4e2"; +} + +.fa-vihara:before { + content: "\f6a7"; +} + +.fa-vimeo:before { + content: "\f40a"; +} + +.fa-vimeo-square:before { + content: "\f194"; +} + +.fa-vimeo-v:before { + content: "\f27d"; +} + +.fa-vine:before { + content: "\f1ca"; +} + +.fa-virus:before { + content: "\e074"; +} + +.fa-virus-slash:before { + content: "\e075"; +} + +.fa-viruses:before { + content: "\e076"; +} + +.fa-vk:before { + content: "\f189"; +} + +.fa-vnv:before { + content: "\f40b"; +} + +.fa-voicemail:before { + content: "\f897"; +} + +.fa-volleyball-ball:before { + content: "\f45f"; +} + +.fa-volume-down:before { + content: "\f027"; +} + +.fa-volume-mute:before { + content: "\f6a9"; +} + +.fa-volume-off:before { + content: "\f026"; +} + +.fa-volume-up:before { + content: "\f028"; +} + +.fa-vote-yea:before { + content: "\f772"; +} + +.fa-vr-cardboard:before { + content: "\f729"; +} + +.fa-vuejs:before { + content: "\f41f"; +} + +.fa-walking:before { + content: "\f554"; +} + +.fa-wallet:before { + content: "\f555"; +} + +.fa-warehouse:before { + content: "\f494"; +} + +.fa-watchman-monitoring:before { + content: "\e087"; +} + +.fa-water:before { + content: "\f773"; +} + +.fa-wave-square:before { + content: "\f83e"; +} + +.fa-waze:before { + content: "\f83f"; +} + +.fa-weebly:before { + content: "\f5cc"; +} + +.fa-weibo:before { + content: "\f18a"; +} + +.fa-weight:before { + content: "\f496"; +} + +.fa-weight-hanging:before { + content: "\f5cd"; +} + +.fa-weixin:before { + content: "\f1d7"; +} + +.fa-whatsapp:before { + content: "\f232"; +} + +.fa-whatsapp-square:before { + content: "\f40c"; +} + +.fa-wheelchair:before { + content: "\f193"; +} + +.fa-whmcs:before { + content: "\f40d"; +} + +.fa-wifi:before { + content: "\f1eb"; +} + +.fa-wikipedia-w:before { + content: "\f266"; +} + +.fa-wind:before { + content: "\f72e"; +} + +.fa-window-close:before { + content: "\f410"; +} + +.fa-window-maximize:before { + content: "\f2d0"; +} + +.fa-window-minimize:before { + content: "\f2d1"; +} + +.fa-window-restore:before { + content: "\f2d2"; +} + +.fa-windows:before { + content: "\f17a"; +} + +.fa-wine-bottle:before { + content: "\f72f"; +} + +.fa-wine-glass:before { + content: "\f4e3"; +} + +.fa-wine-glass-alt:before { + content: "\f5ce"; +} + +.fa-wix:before { + content: "\f5cf"; +} + +.fa-wizards-of-the-coast:before { + content: "\f730"; +} + +.fa-wodu:before { + content: "\e088"; +} + +.fa-wolf-pack-battalion:before { + content: "\f514"; +} + +.fa-won-sign:before { + content: "\f159"; +} + +.fa-wordpress:before { + content: "\f19a"; +} + +.fa-wordpress-simple:before { + content: "\f411"; +} + +.fa-wpbeginner:before { + content: "\f297"; +} + +.fa-wpexplorer:before { + content: "\f2de"; +} + +.fa-wpforms:before { + content: "\f298"; +} + +.fa-wpressr:before { + content: "\f3e4"; +} + +.fa-wrench:before { + content: "\f0ad"; +} + +.fa-x-ray:before { + content: "\f497"; +} + +.fa-xbox:before { + content: "\f412"; +} + +.fa-xing:before { + content: "\f168"; +} + +.fa-xing-square:before { + content: "\f169"; +} + +.fa-y-combinator:before { + content: "\f23b"; +} + +.fa-yahoo:before { + content: "\f19e"; +} + +.fa-yammer:before { + content: "\f840"; +} + +.fa-yandex:before { + content: "\f413"; +} + +.fa-yandex-international:before { + content: "\f414"; +} + +.fa-yarn:before { + content: "\f7e3"; +} + +.fa-yelp:before { + content: "\f1e9"; +} + +.fa-yen-sign:before { + content: "\f157"; +} + +.fa-yin-yang:before { + content: "\f6ad"; +} + +.fa-yoast:before { + content: "\f2b1"; +} + +.fa-youtube:before { + content: "\f167"; +} + +.fa-youtube-square:before { + content: "\f431"; +} + +.fa-zhihu:before { + content: "\f63f"; +} + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + +.sr-only-focusable:active, +.sr-only-focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} + +@font-face { + font-family: 'Font Awesome 5 Brands'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-brands-400.eot"); + src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); +} + +.fab { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; +} + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-regular-400.eot"); + src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); +} + +.far { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; +} + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 900; + font-display: block; + src: url("../webfonts/fa-solid-900.eot"); + src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); +} + +.fa, +.fas { + font-family: 'Font Awesome 5 Free'; + font-weight: 900; +} + +/* //font awesome css */ + +/* dark and light mode styling */ +.mode-container { + width: 24px; + height: 24px; + padding: 0px 0; + margin-left: 10px; + color: var(--heading-color); +} + +.mode-container:hover { + color: var(--primary-color); +} + +.gg-sun { + position: relative; + transform: scale(var(--ggs, 1)); + height: 24px; + background: linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat 5px -6px/2px 6px, linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat 5px 14px/2px 6px, linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat -8px 5px/6px 2px, linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat 14px 5px/6px 2px; + border-radius: 100px; + box-shadow: inset 0 0 0 2px; + border: 6px solid transparent; +} + +.gg-moon { + overflow: hidden; + position: relative; + transform: rotate(-135deg) scale(var(--ggs, 1)); + width: 20px; + height: 20px; + border: 2px solid; + border-bottom: 2px solid transparent; +} + +.gg-moon, +.gg-moon:after { + display: block; + box-sizing: border-box; + border-radius: 50%; +} + +.nav-fixed .gg-moon, +.nav-fixed .gg-moon:after { + color: var(--heading-color); +} + +.gg-moon:after { + content: ""; + position: absolute; + width: 12px; + height: 18px; + border: 2px solid transparent; + box-shadow: 0 0 0 2px; + top: 8px; + left: 2px; +} + +.gg-sun, +.gg-sun:after, +.gg-sun:before { + box-sizing: border-box; + display: block; + width: 24px; +} + +.gg-sun:after, +.gg-sun:before { + content: ""; + position: absolute; + height: 2px; + border-right: 4px solid; + border-left: 4px solid; + left: -6px; + top: 5px; +} + +.gg-sun:before { + transform: rotate(-45deg); +} + +.gg-sun:after { + transform: rotate(45deg); +} + +.mode-container i.gg-sun { + display: none; +} + +.mode-container i.gg-moon { + display: block; + cursor: pointer; +} + +input:checked+.mode-container i.gg-sun { + display: block; + cursor: pointer; +} + +input:checked+.mode-container i.gg-moon { + display: none; +} + +.nav-fixed .navbar .navbar-brand { + color: var(--heading-color); +} + +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link { + color: var(--heading-color); +} + +.nav-fixed .navbar .navbar-brand:hover { + color: var(--heading-color); +} + +.nav-fixed .navbar-expand-lg .navbar-nav .show>.nav-link, +.nav-fixed .navbar-expand-lg .navbar-nav .active>.nav-link, +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link.show, +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link.active, +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link:hover { + color: var(--primary-color); +} + +/* //dark and light mode styling */ + +/* Magnific Popup CSS */ +.mfp-bg { + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 1042; + overflow: hidden; + position: fixed; + background: #0b0b0b; + opacity: 0.8; +} + +.mfp-wrap { + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 1043; + position: fixed; + outline: none !important; + -webkit-backface-visibility: hidden; +} + +.mfp-container { + text-align: center; + position: absolute; + width: 100%; + height: 100%; + left: 0; + top: 0; + padding: 0 8px; + box-sizing: border-box; +} + +.mfp-container:before { + content: ''; + display: inline-block; + height: 100%; + vertical-align: middle; +} + +.mfp-align-top .mfp-container:before { + display: none; +} + +.mfp-content { + position: relative; + display: inline-block; + vertical-align: middle; + margin: 0 auto; + text-align: left; + z-index: 1045; +} + +.mfp-inline-holder .mfp-content, +.mfp-ajax-holder .mfp-content { + width: 100%; + cursor: auto; +} + +.mfp-ajax-cur { + cursor: progress; +} + +.mfp-zoom-out-cur, +.mfp-zoom-out-cur .mfp-image-holder .mfp-close { + cursor: zoom-out; +} + +.mfp-zoom { + cursor: pointer; + cursor: zoom-in; +} + +.mfp-auto-cursor .mfp-content { + cursor: auto; +} + +.mfp-close, +.mfp-arrow, +.mfp-preloader, +.mfp-counter { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.mfp-loading.mfp-figure { + display: none; +} + +.mfp-hide { + display: none !important; +} + +.mfp-preloader { + color: #CCC; + position: absolute; + top: 50%; + width: auto; + text-align: center; + margin-top: -0.8em; + left: 8px; + right: 8px; + z-index: 1044; +} + +.mfp-preloader a { + color: #CCC; +} + +.mfp-preloader a:hover { + color: #FFF; +} + +.mfp-s-ready .mfp-preloader { + display: none; +} + +.mfp-s-error .mfp-content { + display: none; +} + +button.mfp-close, +button.mfp-arrow { + overflow: visible; + cursor: pointer; + border: 0; + -webkit-appearance: none; + display: block; + outline: none; + padding: 0; + z-index: 1046; + box-shadow: none; + touch-action: manipulation; +} + +button::-moz-focus-inner { + padding: 0; + border: 0; +} + +.mfp-close { + line-height: 40px; + position: absolute; + right: 0px; + top: -40px; + text-decoration: none; + text-align: center; + padding: 0 0 18px 10px; + color: #FFF; + font-style: normal; + font-size: 28px; + background: transparent; +} + +.mfp-close-btn-in .mfp-close { + color: #fff; +} + +.mfp-image-holder .mfp-close, +.mfp-iframe-holder .mfp-close { + color: #FFF; + right: -6px; + text-align: right; + padding-right: 6px; + width: 100%; +} + +.mfp-counter { + position: absolute; + top: 0; + right: 0; + color: #CCC; + font-size: 12px; + line-height: 18px; + white-space: nowrap; +} + +.mfp-arrow { + position: absolute; + opacity: 0.65; + margin: 0; + top: 50%; + margin-top: -55px; + padding: 0; + width: 90px; + height: 110px; + -webkit-tap-highlight-color: transparent; +} + +.mfp-arrow:active { + margin-top: -54px; +} + +.mfp-arrow:hover, +.mfp-arrow:focus { + opacity: 1; +} + +.mfp-arrow:before, +.mfp-arrow:after { + content: ''; + display: block; + width: 0; + height: 0; + position: absolute; + left: 0; + top: 0; + margin-top: 35px; + margin-left: 35px; + border: medium inset transparent; +} + +.mfp-arrow:after { + border-top-width: 13px; + border-bottom-width: 13px; + top: 8px; +} + +.mfp-arrow:before { + border-top-width: 21px; + border-bottom-width: 21px; + opacity: 0.7; +} + +.mfp-arrow-left { + left: 0; +} + +.mfp-arrow-left:after { + border-right: 17px solid #FFF; + margin-left: 31px; +} + +.mfp-arrow-left:before { + margin-left: 25px; + border-right: 27px solid #3F3F3F; +} + +.mfp-arrow-right { + right: 0; +} + +.mfp-arrow-right:after { + border-left: 17px solid #FFF; + margin-left: 39px; +} + +.mfp-arrow-right:before { + border-left: 27px solid #3F3F3F; +} + +.mfp-iframe-holder { + padding-top: 40px; + padding-bottom: 40px; +} + +.mfp-iframe-holder .mfp-content { + line-height: 0; + width: 100%; + max-width: 900px; +} + +.mfp-iframe-holder .mfp-close { + top: -40px; +} + +.mfp-iframe-scaler { + width: 100%; + height: 0; + overflow: hidden; + padding-top: 56.25%; +} + +.mfp-iframe-scaler iframe { + position: absolute; + display: block; + top: 0; + left: 0; + width: 100%; + height: 100%; + box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); + background: #000; +} + +/* Main image in popup */ +img.mfp-img { + width: auto; + max-width: 100%; + height: auto; + display: block; + line-height: 0; + box-sizing: border-box; + padding: 40px 0 40px; + margin: 0 auto; +} + +/* The shadow behind the image */ +.mfp-figure { + line-height: 0; +} + +.mfp-figure:after { + content: ''; + position: absolute; + left: 0; + top: 40px; + bottom: 40px; + display: block; + right: 0; + width: auto; + height: auto; + z-index: -1; + box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); + background: #444; +} + +.mfp-figure small { + color: #BDBDBD; + display: block; + font-size: 12px; + line-height: 14px; +} + +.mfp-figure figure { + margin: 0; +} + +.mfp-bottom-bar { + margin-top: -36px; + position: absolute; + top: 100%; + left: 0; + width: 100%; + cursor: auto; +} + +.mfp-title { + text-align: left; + line-height: 18px; + color: #F3F3F3; + word-wrap: break-word; + padding-right: 36px; +} + +.mfp-image-holder .mfp-content { + max-width: 100%; +} + +.mfp-gallery .mfp-image-holder .mfp-figure { + cursor: pointer; +} + +@media screen and (max-width: 800px) and (orientation: landscape), +screen and (max-height: 300px) { + + /** + * Remove all paddings around the image on small screen + */ + .mfp-img-cont-ser .mfp-image-holder { + padding-left: 0; + padding-right: 0; + } + + .mfp-img-cont-ser img.mfp-img { + padding: 0; + } + + .mfp-img-cont-ser .mfp-figure:after { + top: 0; + bottom: 0; + } + + .mfp-img-cont-ser .mfp-figure small { + display: inline; + margin-left: 5px; + } + + .mfp-img-cont-ser .mfp-bottom-bar { + background: rgba(0, 0, 0, 0.6); + bottom: 0; + margin: 0; + top: auto; + padding: 3px 5px; + position: fixed; + box-sizing: border-box; + } + + .mfp-img-cont-ser .mfp-bottom-bar:empty { + padding: 0; + } + + .mfp-img-cont-ser .mfp-counter { + right: 5px; + top: 3px; + } + + .mfp-img-cont-ser .mfp-close { + top: 0; + right: 0; + width: 35px; + height: 35px; + line-height: 35px; + background: rgba(0, 0, 0, 0.6); + position: fixed; + text-align: center; + padding: 0; + } +} + +@media all and (max-width: 900px) { + .mfp-arrow { + transform: scale(0.75); + } + + .mfp-arrow-left { + transform-origin: 0; + } + + .mfp-arrow-right { + transform-origin: 100%; + } + + .mfp-container { + padding-left: 6px; + padding-right: 6px; + } +} + +/* Styles for dialog window */ +#small-dialog { + max-width: 750px; + margin: 40px auto; + position: relative; +} + +div#small-dialog iframe { + width: 100%; + height: 420px; + display: block; + border-radius: 10px; +} + +/** + * Fade-zoom animation for first dialog + */ +/* start state */ +.my-mfp-zoom-in .zoom-anim-dialog { + opacity: 0; + transition: all 0.2s ease-in-out; + transform: scale(0.8); +} + +/* animate in */ +.my-mfp-zoom-in.mfp-ready .zoom-anim-dialog { + opacity: 1; + transform: scale(1); +} + +/* animate out */ +.my-mfp-zoom-in.mfp-removing .zoom-anim-dialog { + transform: scale(0.8); + opacity: 0; +} + +/* Dark overlay, start state */ +.my-mfp-zoom-in.mfp-bg { + opacity: 0; + transition: opacity 0.3s ease-out; +} + +/* animate in */ +.my-mfp-zoom-in.mfp-ready.mfp-bg { + opacity: 0.95; +} + +/* animate out */ +.my-mfp-zoom-in.mfp-removing.mfp-bg { + opacity: 0; +} + +/** + * Fade-move animation for second dialog + */ +/* at start */ +.my-mfp-slide-bottom .zoom-anim-dialog { + opacity: 0; + transition: all 0.2s ease-out; + transform: translateY(-20px) perspective(600px) rotateX(10deg); +} + +/* animate in */ +.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog { + opacity: 1; + transform: translateY(0) perspective(600px) rotateX(0); +} + +/* animate out */ +.my-mfp-slide-bottom.mfp-removing .zoom-anim-dialog { + opacity: 0; + transform: translateY(-10px) perspective(600px) rotateX(10deg); +} + +/* Dark overlay, start state */ +.my-mfp-slide-bottom.mfp-bg { + opacity: 0; + transition: opacity 0.3s ease-out; +} + +/* animate in */ +.my-mfp-slide-bottom.mfp-ready.mfp-bg { + opacity: 0.8; +} + +/* animate out */ +.my-mfp-slide-bottom.mfp-removing.mfp-bg { + opacity: 0; +} + +/* //Magnific Popup CSS */ + +/* movetop styling */ +#movetop { + position: fixed; + bottom: 90px; + right: 15px; + z-index: 9; + font-size: 16px; + border: none; + outline: none; + cursor: pointer; + color: #fff; + width: 40px; + height: 40px; + background: var(--primary-color); + border-radius: 50%; + -webkit-border-radius: 50%; + -o-border-radius: 50%; + -moz-border-radius: 50%; + -ms-border-radius: 50%; + padding: 0; +} + +#movetop:hover { + opacity: .8; +} + +/* //movetop styling */ + +/* header */ +/* navigation styling */ +.navbar .navbar-brand { + margin: 0; + padding: 0; + font-size: 34px; + font-weight: 600; + color: var(--heading-color); + margin-left: 28px; +} + +.navbar .navbar-brand i { + color: var(--primary-color); + transform: rotate(-45deg); + position: absolute; + left: 0px; + top: 0px; +} + +.navbar-light .navbar-brand:hover, +.navbar-light .navbar-brand:focus { + color: var(--heading-color); +} + +.navbar-expand-lg .navbar-nav .nav-item { + padding: 0 16px; +} + +.navbar-nav .nav-link:focus { + color: var(--primary-color); +} + +.navbar-expand-lg .navbar-nav .show>.nav-link, +.navbar-expand-lg .navbar-nav .active>.nav-link, +.navbar-expand-lg .navbar-nav .nav-link.show, +.navbar-expand-lg .navbar-nav .nav-link.active, +.navbar-expand-lg .navbar-nav .nav-link:hover { + color: var(--primary-color); +} + +.navbar-expand-lg .navbar-nav .nav-link { + padding: 0; + font-size: 16px; + color: var(--heading-color); + font-weight: 500; + padding: 0px; +} + +.navbar-nav .dropdown-menu li { + width: 100%; +} + +a.dropdown-item { + font-size: 16px; + color: var(--heading-color); + padding: 5px 24px; + font-weight: 600; +} + +a.dropdown-item:hover { + color: var(--primary-color); + background: none; +} + +a.dropdown-item.active { + background: transparent; + color: var(--primary-color); +} + +.navbar-expand-lg .navbar-nav .dropdown-menu { + transform: translateX(-30px); + background: var(--bg-color); + border: 1px solid var(--border-color); + box-shadow: rgb(12 12 12 / 6%) 0px 1px 20px 0px; +} + +.navbar-expand-lg .navbar-nav .dropdown-menu:before { + content: ''; + width: 14px; + height: 14px; + background: var(--bg-color); + border: 1px solid var(--border-color); + display: block; + border-right: none; + border-bottom: none; + transform: translateX(-50%) rotateZ(45deg); + position: absolute; + top: -7px; + left: 49%; + z-index: 1001; +} + +header { + background-color: transparent; + padding: 0; + transition: all 0.4s ease 0s; + height: 90px; + display: grid; + align-items: center; + /* box-shadow: 0 3px 9px rgba(0, 0, 0, 0.05); */ +} + +header.nav-fixed { + padding: 0; + background-color: var(--bg-color); + height: 80px; + border-bottom: none; + box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.05); + z-index: 10 !important; + /* for z-index:10 to display gallery popup */ +} + +.dropdown-toggle::after { + display: none; +} + +/*-- search --*/ +.navbar .search-btn i { + color: var(--heading-color); +} + +.nav-fixed .navbar .search-btn i { + color: var(--heading-color); +} + +.nav-fixed .search-right a { + color: var(--heading-color); +} + +.navbar .search-right a:hover { + color: #fff; + opacity: 1; +} + +.navbar form.search-box { + display: flex; +} + +.navbar .search-right .popup form input[type="search"] { + font-style: normal; + font-weight: normal; + font-size: 30px; + line-height: 20px; + color: var(--heading-color); + border: none; + height: 60px; + background: var(--bg-color); + padding: 45px 30px; + width: 100%; + border-radius: 0; +} + +.navbar .search-right .popup form button { + border: none; + cursor: pointer; + font-size: 28px; + text-align: center; + color: #fff; + width: 90px; + background: var(--primary-color); + line-height: 35px; + display: inline-block; + transition: 0.5s ease-out; + font-weight: 700; + display: block; + height: 90px; + line-height: 70px; + margin: 0 auto; + border-radius: 0; +} + +.navbar .search-right .popup form button:hover { + background: var(--secondary-color); + color: #fff; + outline: none; + border: none; +} + +.navbar .search-right .popup form input:focus { + outline: none; + border: none; +} + +.navbar .search-right .pop-overlay { + position: fixed; + top: 0px; + left: 0; + right: 0; + transition: opacity 0ms; + visibility: hidden; + opacity: 0; + z-index: 99; + background: rgba(25, 23, 23, 0.81); + box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, 0.85); + height: 100vh; +} + +.navbar .search-right .pop-overlay:target { + visibility: visible; + opacity: 1; +} + +.navbar .search-right .popup { + margin: 0rem auto; + padding: 40px 50px; + max-width: 700px; + border-radius: 3px; + position: relative; + top: 50%; + transform: translateY(-50%); +} + +.navbar .search-right .search-top { + display: grid; + grid-template-columns: auto 1fr 1fr; + grid-gap: 30px; + margin-top: 24px; +} + +.navbar .search-right .search-top h4 { + font-size: 20px; + color: #fff; + margin-bottom: 16px; +} + +.navbar .search-right .search-top span.fa { + padding-right: 10px; +} + +.navbar .search-right .search-top li { + display: block; +} + +.navbar .search-right .search-top li a { + font-size: 16px; + color: #fff; + line-height: 28px; +} + +.navbar .search-right .search-top li a:hover { + color: #fff; +} + +.navbar .search-right .close { + position: absolute; + top: 14px; + right: 0; + font-size: 40px; + color: #fff; + margin-right: 4.3em; +} + +.navbar .search-right .close:hover { + opacity: 0.8; + background: none; +} + +/*--//search--*/ +/* serach */ +.search-header input { + font-size: 15px; + border-radius: 30px 0 0 30px; + background: var(--bg-color); + padding: 8px 15px; + color: var(--heading-color); + border: 2px solid var(--border-color-light); + border-right: none; +} + +.search-header input:focus { + box-shadow: none; + border-color: var(--border-color-light); + background: var(--bg-color); + color: var(--heading-color); +} + +.search-header button.btn-style { + border-radius: 0 30px 30px 0; + box-shadow: none; + padding: 6px 16px; + font-size: 15px; +} + +.search-header button.btn-style:hover { + color: var(--secondary-color); + color: #fff; +} + +.nav-fixed .navbar .navbar-brand { + color: var(--heading-color); +} + +/* //serach */ +@media only screen and (max-width: 991px) { + header.nav-fixed { + height: auto; + padding: 14px 0; + } + + header { + height: auto; + padding: 17px 0; + } + + nav.navbar.navbar-expand-lg.navbar-light { + padding: 0; + } + + .navbar-collapse { + max-height: calc(100vh - 80px); + overflow-y: scroll; + } + + .navbar-toggler { + padding: 0rem !important; + border: none; + } + + .navbar-toggler:focus { + box-shadow: none; + } + + .navbar-collapse { + float: left; + text-align: center; + width: 100%; + background: var(--bg-color); + padding: 20px; + box-shadow: 0 6px 19px rgba(0, 0, 0, 0.05); + } + + .navbar-expand-lg .navbar-nav .nav-item { + padding: 6px 0px; + } + + .navbar-nav .dropdown-menu { + text-align: center; + } + + .navbar-expand-lg .navbar-nav .nav-link { + display: inline-block; + text-align: center; + } + + .navbar-expand-lg .navbar-nav .dropdown-menu { + transform: translateX(0px); + border: 1px solid var(--border-color-light); + } + + .navbar-expand-lg .navbar-nav .dropdown-menu:before { + border: 1px solid var(--border-color-light); + border-right: none; + border-bottom: none; + } + + .navbar-toggler-icon { + background-image: none; + padding: 0; + width: 34px; + height: 34px; + display: inline-block; + background: #272121; + border-radius: 4px; + text-align: center; + } + + .navbar-toggler-icon.fa { + font-size: 20px; + line-height: 1.2em; + background: var(--primary-color); + line-height: 34px; + color: #fff; + } + + .nav-fixed .navbar-expand-lg .navbar-nav .nav-link { + color: var(--heading-color); + } + + button.navbar-toggler .icon-close { + display: block; + } + + button.navbar-toggler .icon-expand { + display: none; + } + + button.navbar-toggler.collapsed .icon-close { + display: none; + } + + button.navbar-toggler.collapsed .icon-expand { + display: block; + } + + .cont-ser-position { + position: absolute; + right: 50px; + top: 17px; + } + + .navbar .search-right .close { + margin-right: 3em; + } + + .navbar .navbar-brand i { + left: 1px; + top: -7px; + } +} + +@media only screen and (max-width: 768px) { + .navbar .search-right .close { + margin-right: 2em; + } +} + +@media only screen and (max-width: 568px) { + .navbar .search-right .close { + margin-right: 1.5em; + } +} + +@media only screen and (max-width: 480px) { + .cont-ser-position { + top: 14px; + } + + .navbar .search-right .popup form input[type="search"] { + font-size: 22px; + padding: 35px 20px; + } + + .navbar .search-right .popup form button { + font-size: 20px; + height: 70px; + line-height: 60px; + } + + .navbar .search-right .popup { + padding: 40px 20px; + } + + .navbar .search-right .close { + margin-right: 1em; + } +} + +/* //navigation styling */ +/* //header */ + +/* button style */ +.btn-style { + padding: 12px 36px 14px; + font-size: 16px; + color: #fff; + border-radius: var(--border-radius-full); + font-weight: bold; + outline: none; + border: none; + background: var(--primary-color); + transition: all 1.8s ease-in-out; +} + +.btn-style:hover { + color: #fff; + background: var(--secondary-color); +} + +.btn-style-2 { + color: var(--heading-color); + background: var(--bg-color); +} + +.btn-style-2:hover { + color: #fff; + background: var(--primary-color); +} + +.btn-style-3 { + background: var(--secondary-color); +} + +.btn-style-3:hover { + background: var(--primary-color); +} + +.btn-style-primary { + padding: 0; + font-weight: 600; + font-size: 15px; + color: var(--heading-color); +} + +.btn-style-primary:hover { + color: var(--primary-color); +} + +.btn-style-primary i { + margin-left: 4px; +} + +/* //button style */ + +/* title style */ +h3.title-style { + font-size: 45px; + line-height: 55px; + font-weight: bold; +} + +@media (max-width:991px) { + h3.title-style { + font-size: 40px; + line-height: 50px; + } +} + +@media (max-width:568px) { + h3.title-style { + font-size: 35px; + line-height: 45px; + } +} + +@media (max-width:320px) { + h3.title-style { + font-size: 30px; + line-height: 40px; + } +} + +/* //title style */ + +/* banner section */ +.w3l-banner { + background-size: 400% 400%; + animation: gradient 15s ease infinite; + min-height: 100vh; + position: relative; + z-index: 1; + background: url(../images/banner.jpg) no-repeat center; +} + +.w3l-banner:before { + content: ""; + position: absolute; + width: 100%; + height: 100%; + background: var(--banner-layer); + z-index: -1; + top: 0; +} + +@keyframes gradient { + 0% { + background-position: 0% 50%; + } + + 50% { + background-position: 100% 50%; + } + + 100% { + background-position: 0% 50%; + } +} + +.w3l-banner { + display: grid; + align-items: center; + min-height: 100vh; +} + +h4.small-text-banner { + font-size: 22px; + font-weight: 400; + margin-bottom: 5px; +} + +.w3l-banner h3 { + font-size: 74px; + line-height: 84px; + font-weight: 700; +} + +.w3l-banner h3 span { + font-weight: 100; +} + +p.banner-sub { + font-size: 20px; + line-height: 30px; +} + +.sub-banner-image { + border-radius: 67% 33% 28% 72% / 59% 51% 49% 41%; + text-align: center; + max-width: 450px; + max-height: 450px; + background: var(--gradient-color-banner); + margin-top: 80px; +} + +.sub-banner-image img { + position: absolute; + top: -162px; + right: 0px; +} + +.banner-style-1 { + top: 0; + left: -20px; +} + +.banner-style-2 { + background: var(--secondary-color); + padding: 25px 30px; + border-radius: 50%; +} + +.banner-style-2 h4 { + color: #fff; +} + +.banner-style-2:before { + content: ""; + position: absolute; + top: 99%; + left: 50%; + margin-left: 0px; + border-width: 10px; + border-style: solid; + border-color: var(--secondary-color) var(--secondary-color) transparent transparent; +} + +@media (max-width: 1440px) { + .sub-banner-image { + max-width: 400px; + max-height: 400px; + } + + .sub-banner-image img { + width: 94%; + } +} + +@media (max-width: 1200px) { + .banner-style-2 h4 { + font-size: 18px; + } + + .banner-style-2 { + padding: 20px 30px; + } +} + +@media (max-width: 1050px) { + .sub-banner-image { + max-width: 360px; + max-height: 360px; + } +} + +@media (max-width: 1199px) { + .w3l-banner h3 { + font-size: 55px; + line-height: 65px; + } + + p.banner-sub { + font-size: 16px; + line-height: 28px; + } +} + +@media (max-width:991px) { + .w3l-banner { + animation: gradient 30s ease infinite; + } + + .w3l-banner h3 { + font-size: 45px; + line-height: 55px; + } + + .sub-banner-image { + max-width: 320px; + max-height: 320px; + } + + .sub-banner-image img { + top: -130px; + } + + .banner-style-1 { + left: -60px; + } +} + +@media (max-width: 768px) { + .banner-style-1 { + left: 0px; + } +} + +@media (max-width: 480px) { + .w3l-banner h3 { + font-size: 40px; + line-height: 45px; + } + + p.banner-sub { + font-size: 15px; + line-height: 26px; + } +} + +@media (max-width: 414px) { + .sub-banner-image { + margin-top: 7em; + } + + .banner-style-2 h4 { + font-size: 16px; + } +} + +@media (max-width: 330px) { + .w3l-banner h3 { + font-size: 35px; + line-height: 40px; + } +} + +/* //banner section */ + +/* home 4grids block */ +.services-w3l-block .icon-box { + padding: 30px; + position: relative; + overflow: hidden; + background: var(--bg-color); + box-shadow: var(--box-shadow); + transition: all 0.3s ease-in-out; + text-align: center; + border: 1px solid var(--bg-color); +} + +.services-w3l-block .icon i { + margin: 0 auto 20px auto; + display: inline-block; + text-align: center; + border-radius: 50%; + width: 72px; + height: 72px; + font-size: 34px; + line-height: 72px; +} + +.services-w3l-block .title a { + font-weight: bold; + margin-bottom: 15px; + font-size: 23px; + line-height: 33px; + color: var(--heading-color); + display: block; +} + +.services-w3l-block .title a:hover { + color: var(--secondary-color); +} + +.services-w3l-block .icon-box-clr-1 .icon i { + background: rgb(245 112 118 / 14%); + color: #fd5c63; +} + +.services-w3l-block .icon-box-clr-1:hover { + border-color: #fd5c63; +} + +.services-w3l-block .icon-box-clr-2 .icon i { + background: rgb(0 164 228 / 8%); + color: #00a4e4; +} + +.services-w3l-block .icon-box-clr-2:hover { + border-color: #00a4e4; +} + +.services-w3l-block .icon-box-clr-3 .icon i { + background: rgb(249 188 46 / 10%); + color: #ffc845; +} + +.services-w3l-block .icon-box-clr-3:hover { + border-color: #ffc845; +} + +.services-w3l-block .icon-box-clr-4 .icon i { + background: rgb(0 193 110 / 9%); + color: #00c16e; +} + +.services-w3l-block .icon-box-clr-4:hover { + border-color: #00c16e; +} + +/* //home 4grids block */ + +/* home image with content block */ +.w3l-servicesblock ul.list-style-lis li { + margin-top: 14px; +} + +.w3l-servicesblock ul.list-style-lis li i { + color: var(--primary-color); + margin-right: 6px; +} + +.imginfo__box { + background-color: var(--bg-color); + color: #fff; + position: absolute; + right: -60px; + bottom: -100px; + padding: 35px 40px 38px; + box-shadow: var(--box-shadow); + border-radius: var(--border-radius); +} + +.imginfo__box .imginfo__title { + font-size: 20px; + line-height: 30px; + font-weight: 700; + margin-bottom: 10px; +} + +.imginfo__box a { + font-size: 22px; + font-weight: 600; + line-height: 32px; + margin-top: 20px; + display: block; +} + +.imginfo__box a i { + color: var(--primary-color); +} + +@media (max-width: 1199px) { + .imginfo__box { + right: 18px; + } +} + +@media (max-width: 991px) { + .imginfo__box { + bottom: -60px; + } +} + +@media (max-width: 855px) { + .home-block-3-left::before { + right: -10px; + } +} + +@media (max-width: 840px) { + .home-block-3-left::before { + right: -50px; + } +} + +@media (max-width: 820px) { + .home-block-3-left::before { + right: -40px; + } +} + +@media (max-width: 800px) { + .home-block-3-left::before { + right: -20px; + } +} + +@media (max-width: 780px) { + .home-block-3-left::before { + right: -10px; + } +} + +@media (max-width: 580px) { + .home-block-3-left::before { + right: 0px; + } +} + +@media (max-width: 440px) { + .left-wthree-img { + padding-left: 10px; + padding-right: 10px; + } + + .imginfo__box { + position: static; + margin-top: 15px; + } + + .col-xl-5.col-lg-6.offset-xl-1.mt-lg-0.mt-5.pt-lg-0.pt-5 { + padding-top: 0 !important; + margin-top: 1em !important; + } +} + +/* //home image with content block */ + +/* courses section */ +.home-course-bg { + background: var(--bg-grey); +} + +.top-content-border h6 { + font-size: 20px; + font-weight: bold; +} + +.w3l-grids-block-6 { + background: var(--bg-color); +} + +.w3l-grids-block-5 .content-main-top h4 a { + color: var(--heading-color); + font-size: 22px; + margin-bottom: 8px; + display: block; + font-weight: 600; + line-height: 32px; +} + +.w3l-grids-block-5 .content-main-top h4 a:hover { + color: var(--primary-color); +} + +.w3l-grids-block-5 .coursecard-single { + box-shadow: 0px 30px 40px 0px rgb(1 11 60 / 10%); + transition: .3s ease; + -webkit-transition: .3s ease; + background: var(--bg-color); + border-radius: var(--border-radius); +} + +.w3l-grids-block-5 .grids5-info { + overflow: hidden; + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} + +.w3l-grids-block-5 .grids5-info img { + display: block; + width: 100%; + border-top-left-radius: 8px; + border-top-right-radius: 8px; + transition: 0.3s ease-in-out; +} + +.w3l-grids-block-5 .coursecard-single:hover img { + overflow: hidden; + transform: scale(1.1); + transition: 0.3s ease-in-out; +} + +.w3l-grids-block-5 .content-main-top { + padding: 20px; + border: none; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} + +ul.rating-list li { + display: inline-block; +} + +ul.rating-list li a { + color: #ffc949; + font-size: 15px; +} + +ul.rating-list li a.review-color { + color: var(--heading-color); +} + +.meta-list { + position: absolute; + left: 30px; + top: 15px; +} + +.meta-list a { + background: #1DC295; + display: inline-block; + border-radius: 3px; + font-size: 12px; + font-weight: 600; + padding: 4px 10px; + color: #FFFFFF !important; + text-transform: capitalize; + display: inline-block; + margin-right: 5px; +} + +.meta-list a.sec-2 { + background-color: #FFA100; +} + +.meta-list a.sec-3 { + background: #037ef3; +} + +.course-price-item { + position: absolute; + right: 25px; + bottom: -15px; +} + +.content-top li { + color: var(--heading-color); +} + +.content-top li i.fa-book-open { + color: var(--secondary-color); +} + +.content-top li i.fa-star { + color: var(--primary-color); +} + +.top-content-border { + border-top: 1px solid var(--border-color-light) +} + +/* //courses section */ + +/* why choose block */ +.w3l-service-1 .content23-grid { + background-size: cover; + min-height: 300px; + display: grid; + align-content: center; + position: relative; + z-index: 1; + border-radius: var(--border-radius); + overflow: hidden; + padding: 50px 30px; + transition: .5s; +} + +.w3l-service-1 .content23-grid:hover:before { + background: rgb(0 110 165 / 79%); + transform: scale(1); + transition: .5s; +} + +.w3l-service-1 .content23-grid1 { + background: url("../images/bg1.jpg") no-repeat center; + background-size: cover; +} + +.w3l-service-1 .content23-grid2 { + background: url("../images/bg2.jpg") no-repeat center; + background-size: cover; +} + +.w3l-service-1 .content23-grid:before { + content: ''; + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + background: rgb(4 4 4 / 50%); + z-index: -1; + border-radius: var(--border-radius); +} + +.w3l-service-1 .content23-grid h4 a { + font-size: 30px; + line-height: 40px; + text-align: center; + color: #fff; + display: inline-block; + font-weight: bold; +} + +.w3l-service-1 .content23-grid h4 a:hover { + color: var(--primary-color); +} + +@media all and (max-width: 768px) { + .w3l-service-1 .content23-grid { + padding: 60px 20px; + } + + .w3l-service-1 .content23-grid h4 a { + font-size: 24px; + } +} + +@media all and (max-width: 568px) { + .w3l-service-1 .content23-grid { + min-height: 250px; + } +} + +@media all and (max-width: 500px) { + .w3l-service-1 .content23-grid h4 a { + font-size: 22px; + } +} + +/* //why choose block */ + +/* stats block */ +.counter i { + color: var(--secondary-color); + text-align: center; + width: 80px; + height: 80px; + line-height: 80px; + border-radius: 50%; + background: rgb(210 128 75 / 6%); + font-size: 32px; +} + +.timer { + font-size: 2.5em; + font-weight: 600; + color: var(--heading-color); +} + +p.count-text { + color: var(--heading-color); +} + +@media (max-width: 1080px) { + .timer { + font-size: 2.5em; + } +} + +@media (max-width: 991px) { + .timer { + font-size: 2em; + } + + p.count-text { + font-size: 14px; + line-height: 22px; + } + + .w3-stats .col-md-3 { + display: grid; + align-items: stretch; + } +} + +/* //stats block */ + +/* blog block */ +.w3l-blog-block-5 .grids5-info h4 a { + color: var(--heading-color); + font-size: 22px; + line-height: 32px; + display: block; + font-weight: bold; + margin-bottom: 10px; +} + +.blog-card-single { + border: 1px solid var(--border-color-light); + box-shadow: 0px 30px 40px 0px rgb(1 11 60 / 10%); + transition: .3s ease; + -webkit-transition: .3s ease; + background: var(--bg-color); + border-radius: var(--border-radius); +} + +.w3l-blog-block-5 .blog-card-single:hover h4 a { + color: var(--primary-color); +} + +.w3l-blog-block-5 .grids5-info p.date-text { + font-size: 14px; +} + +.w3l-blog-block-5 .grids5-info p.date-text i { + color: var(--primary-color); +} + +.w3l-blog-block-5 .grids5-info span.small { + font-weight: 500; +} + +.w3l-blog-block-5 .grids5-info a { + overflow: hidden; + display: block; + border-top-left-radius: var(--border-radius); + border-top-right-radius: var(--border-radius); +} + +.w3l-blog-block-5 .grids5-info a img { + display: block; + width: 100%; + border-top-left-radius: var(--border-radius); + border-top-right-radius: var(--border-radius); + transition: 0.3s ease-in-out; +} + +.w3l-blog-block-5 .grids5-info:hover img { + overflow: hidden; + transform: scale(1.1); + transition: 0.3s ease-in-out; +} + +.w3l-blog-block-5 .grids5-info:hover .blog-info img { + transform: scale(1); +} + +.w3l-blog-block-5 .blog-info { + padding: 25px; + background: var(--bg-color); + border-radius: var(--border-radius); +} + +.blog-info img { + border-radius: 50% !important; +} + +.w3l-blog-block-5 .col-lg-4.col-md-6 { + display: flex; + align-items: stretch; +} + +/* pagination blog page */ +.pagination-style { + display: block; +} + +.pagination-style ul li { + display: inline-block; +} + +.pagination-style ul li span.fa { + color: var(--heading-color); +} + +.pagination-style ul li a:hover span.fa { + color: #fff; +} + +.pagination-style a { + display: inline-block; + color: var(--heading-color); + width: 40px; + height: 40px; + text-align: center; + line-height: 40px; + border-radius: 50%; + font-weight: 600; +} + +.pagination-style a span { + margin: 0; +} + +.pagination-style a.active, +.pagination-style a:hover { + background-color: var(--secondary-color); + color: #fff; +} + +.pagination-style ul li a.not-allowed span.fa { + cursor: not-allowed; + color: #c3c2c2; +} + +.pagination-style .not-allowed:hover { + opacity: 1; + background: transparent; + color: #c3c2c2; +} + +/* //pagination blog page */ +@media all and (max-width: 1200px) { + .section-heading p.lead { + font-size: 1.1rem; + } +} + +@media all and (max-width: 768px) { + .section-heading p.lead { + font-size: 1rem; + } +} + +@media all and (max-width: 414px) { + .w3l-blog-block-5 .wrapper { + width: 100%; + padding-right: 15px; + padding-left: 15px; + } +} + +@media all and (max-width: 375px) { + .w3l-blog-block-5 .grids5-info h4 a { + font-size: 20px; + } +} + +/* //blog block */ + +/* testimonials block */ +.w3l-index4 { + background: url(../images/bg3.jpg) no-repeat; + background-size: cover; + -webkit-background-size: cover; + -moz-background-size: cover; + -o-background-size: cover; + -ms-background-size: cover; + position: relative; + z-index: 0; +} + +.w3l-index4:before { + content: ""; + background: var(--layer); + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; +} + +.w3l-index4 * { + transition: none; +} + +.w3l-index4 .head-bg { + width: 70%; + margin: 0 auto; +} + +.w3l-index4 .content-slider { + width: 100%; +} + +.w3l-index4 .clients-slider { + max-width: 680px; + margin: 0 auto; + overflow: visible; + position: relative; +} + +.w3l-index4 .mask { + overflow: hidden; + height: 320px; +} + +.w3l-index4 .clients-slider ul { + margin: 0; + padding: 0; + position: relative; +} + +.w3l-index4 .clients-slider li { + width: 100%; + height: 320px; + position: absolute; + top: -325px; + list-style: none; +} + +.w3l-index4 .clients-slider .quote { + font-size: 20px; + line-height: 38px; + color: #fff; + margin-top: .5rem; +} + +.w3l-index4 .clients-slider .source { + font-size: 30px; + margin-top: 1.5rem; + color: #fff; + font-weight: bold; +} + +.w3l-index4 .clients-slider li img { + width: 100px; +} + +.w3l-index4 .clients-slider li.anim1 { + -webkit-animation: cycle 15s linear infinite; + animation: cycle 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim2 { + -webkit-animation: cycle2 15s linear infinite; + animation: cycle2 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim3 { + -webkit-animation: cycle3 15s linear infinite; + animation: cycle3 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim4 { + -webkit-animation: cycle4 15s linear infinite; + animation: cycle4 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim5 { + -webkit-animation: cycle5 15s linear infinite; + animation: cycle5 15s linear infinite; +} + +.w3l-index4 .clients-slider:hover li { + -webkit-animation-play-state: paused; + animation-play-state: paused; +} + +@-webkit-keyframes cycle { + 0% { + top: 0px; + } + + 4% { + top: 0px; + } + + 16% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 20% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 21% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 50% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 92% { + top: -325px; + opacity: 0; + z-index: 0; + } + + 96% { + top: -325px; + opacity: 0; + } + + 100% { + top: 0px; + opacity: 1; + } +} + +@keyframes cycle { + 0% { + top: 0px; + } + + 4% { + top: 0px; + } + + 16% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 20% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 21% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 50% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 92% { + top: -325px; + opacity: 0; + z-index: 0; + } + + 96% { + top: -325px; + opacity: 0; + } + + 100% { + top: 0px; + opacity: 1; + } +} + +@-webkit-keyframes cycle2 { + 0% { + top: -325px; + opacity: 0; + } + + 16% { + top: -325px; + opacity: 0; + } + + 20% { + top: 0px; + opacity: 1; + } + + 24% { + top: 0px; + opacity: 1; + } + + 36% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 40% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 41% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@keyframes cycle2 { + 0% { + top: -325px; + opacity: 0; + } + + 16% { + top: -325px; + opacity: 0; + } + + 20% { + top: 0px; + opacity: 1; + } + + 24% { + top: 0px; + opacity: 1; + } + + 36% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 40% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 41% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@-webkit-keyframes cycle3 { + 0% { + top: -325px; + opacity: 0; + } + + 36% { + top: -325px; + opacity: 0; + } + + 40% { + top: 0px; + opacity: 1; + } + + 44% { + top: 0px; + opacity: 1; + } + + 56% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 60% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 61% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@keyframes cycle3 { + 0% { + top: -325px; + opacity: 0; + } + + 36% { + top: -325px; + opacity: 0; + } + + 40% { + top: 0px; + opacity: 1; + } + + 44% { + top: 0px; + opacity: 1; + } + + 56% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 60% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 61% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@-webkit-keyframes cycle4 { + 0% { + top: -325px; + opacity: 0; + } + + 56% { + top: -325px; + opacity: 0; + } + + 60% { + top: 0px; + opacity: 1; + } + + 64% { + top: 0px; + opacity: 1; + } + + 76% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 80% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 81% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@keyframes cycle4 { + 0% { + top: -325px; + opacity: 0; + } + + 56% { + top: -325px; + opacity: 0; + } + + 60% { + top: 0px; + opacity: 1; + } + + 64% { + top: 0px; + opacity: 1; + } + + 76% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 80% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 81% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@-webkit-keyframes cycle5 { + 0% { + top: -325px; + opacity: 0; + } + + 76% { + top: -325px; + opacity: 0; + } + + 80% { + top: 0px; + opacity: 1; + } + + 84% { + top: 0px; + opacity: 1; + } + + 96% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 100% { + top: 325px; + opacity: 0; + z-index: 0; + } +} + +@keyframes cycle5 { + 0% { + top: -325px; + opacity: 0; + } + + 76% { + top: -325px; + opacity: 0; + } + + 80% { + top: 0px; + opacity: 1; + } + + 84% { + top: 0px; + opacity: 1; + } + + 96% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 100% { + top: 325px; + opacity: 0; + z-index: 0; + } +} + +@media screen and (max-width: 1080px) { + .w3l-index4 .clients-slider .quote { + font-size: 18px; + line-height: 30px; + } + + .w3l-index4 .clients-slider .source { + font-size: 30px; + } + + .w3l-index4 .mask { + height: 280px; + } +} + +@media screen and (max-width: 500px) { + .w3l-index4 .clients-slider .source { + font-size: 26px; + } +} + +@media screen and (max-width: 480px) { + .w3l-index4 .clients-slider .quote { + font-size: 16px; + line-height: 25px; + } +} + +@media screen and (max-width: 436px) { + .w3l-index4 .mask { + height: 300px; + } +} + +/* //testimonials block */ + +/* call block */ +.w3l-call-to-action-6 { + background: var(--gradient-color); +} + +h3.title-big { + font-weight: 800; + font-size: 30px; + color: #fff; + text-transform: uppercase; +} + +.w3l-call-to-action-6 .buttons li { + list-style: none; + display: inline-block; +} + +.w3l-call-to-action-6 .buttons li.green { + margin: 0 20px; +} + +.w3l-call-to-action-6 .buttons li.phone-sec a.call-style-w3 { + font-size: 20px; + color: #fff; + font-weight: 600; +} + +.w3l-call-to-action-6 .buttons li.phone-sec a.call-style-w3:hover { + color: #222; +} + +.buttons li.phone-sec i { + font-size: 38px; + color: #fff; + transform: rotate(-26deg); +} + +@media (max-width: 992px) { + .w3l-call-to-action-6 .buttons li { + display: block; + } +} + +@media (max-width: 567px) { + .w3l-call-to-action-6 .buttons li.phone-sec a.call-style-w3 { + font-size: 18px; + } + + li.phone-sec span { + font-size: 28px; + } +} + +/* //call block */ + +/* footer block */ +.w3l-footer-29-main { + background: #09131d; +} + +.w3l-footer-29-main h6.footer-title-29 { + font-size: 20px; + line-height: 30px; + margin-bottom: 24px; + font-weight: 600; + color: #fff; +} + +.w3l-footer-29-main .footer-list-29 ul li { + list-style: none; + margin-bottom: 10px; +} + +.w3l-footer-29-main .footer-list-29 ul li:last-child { + margin-bottom: 0px; +} + +.w3l-footer-29-main .footer-list-29 ul li a, +.w3l-footer-29-main .footer-list-29 p a, +.w3l-footer-29-main .footer-list-29 p { + font-size: 15px; + color: #ababab; + padding-bottom: 4px; +} + +.w3l-footer-29-main .footer-list-29 ul li a { + display: block; +} + +.w3l-footer-29-main .footer-list-29 ul li a:hover, +.w3l-footer-29-main .footer-list-29 p a:hover { + color: #fff; +} + +.w3l-footer-29-main .footer-list-29 ul li:last-child a, +.w3l-footer-29-main .footer-list-29 p { + border-bottom: none; +} + +p.copy-footer-29 { + font-size: 15px; + color: #fff; +} + +p.copy-footer-29 a { + color: var(--secondary-color); +} + +p.copy-footer-29 a:hover { + color: var(--primary-color); +} + +.w3l-footer-29-main input[type="email"] { + background: var(--subscribe-footer-input); + border: none; + padding: 16px 12px; + font-size: 15px; + outline: none; + width: 80%; + color: var(--heading-color); + border-radius: 4px 0 0 4px; +} + +.w3l-footer-29-main button { + border: none; + outline: none; + font-size: 16px; + padding: 16px 12px; + cursor: pointer; + width: 20%; + color: #fff; + background: var(--secondary-color); + border-radius: 0 4px 4px 0; +} + +@media (max-width: 991px) { + .w3l-footer-29-main h6.footer-title-29 { + margin-bottom: 20px; + font-size: 20px; + } +} + +@media (max-width: 415px) { + + .w3l-footer-29-main .footer-list-29 ul li, + .w3l-footer-29-main .midd-footer-29:nth-child(1) .footer-list-29 ul li:last-child { + margin-bottom: 8px; + } + + .col-4.footer-list-29 { + flex: 0 0 auto; + width: 100%; + } + + .w3l-footer-29-main h6.footer-title-29 { + margin-bottom: 10px; + } +} + +/* //footer block */ + +/* inner banner */ +.inner-banner { + background: url(../images/banner3.jpg) no-repeat center; + background-size: cover; + -webkit-background-size: cover; + -moz-background-size: cover; + -o-background-size: cover; + -ms-background-size: cover; + position: relative; + z-index: 0; +} + +.inner-banner::before { + content: ""; + position: absolute; + top: 0; + min-height: 100%; + left: 0; + right: 0; + z-index: -1; + background: var(--banner-layer); +} + +.w3l-breadcrumb { + display: block; + margin: 0 auto; + z-index: 100; + z-index: 99; +} + +.breadcrumbs-custom-path { + text-align: center; + display: inline-block; + margin-top: 6px; +} + +h4.inner-text-title { + color: var(--heading-color); + font-size: 32px; + line-height: 40px; + font-weight: bold; +} + +.breadcrumbs-custom-path li { + position: relative; + display: inline-block; + vertical-align: middle; + font-size: 15px; + text-transform: capitalize; + color: var(--font-color); + font-weight: 400; +} + +.breadcrumbs-custom-path li i { + font-size: 12px; + margin: 0 5px; +} + +.breadcrumbs-custom-path a, +.breadcrumbs-custom-path a:active { + color: var(--heading-color); + font-weight: bold; +} + +.breadcrumbs-custom-path a:hover { + color: var(--primary-color); +} + +@media (max-width: 800px) { + .breadcrumbs-custom-path li { + font-size: 16px; + } + + h4.inner-text-title { + font-size: 28px; + } +} + +@media (max-width: 568px) { + .breadcrumbs-custom-path li { + font-size: 15px; + } + + .breadcrumbs-custom-path { + margin-top: 2px; + } +} + +/* //inner banner */ + +/* holidays section */ +.w3l-timeline-1 { + background: var(--bg-light); +} + +.w3l-timeline-1 .timeline { + max-width: 900px; + margin: 0 auto; + margin-bottom: 40px; + position: relative; +} + +.w3l-timeline-1 .timeline:before { + content: ""; + position: absolute; + top: 10px; + left: 55px; + width: 3px; + height: calc(100% - 10px); + background: var(--primary-color); +} + +.w3l-timeline-1 .timeline .column { + margin: 0px 40px 40px 120px; +} + +.w3l-timeline-1 h5.sub-title-timeline { + font-size: 24px; + line-height: 34px; + margin-bottom: 1em; + margin-left: 2em; +} + +.w3l-timeline-1 h5.sub-title-timeline i { + color: var(--primary-color); +} + +.w3l-timeline-1 .timeline .column .title h2 { + font-size: 21px; + line-height: 31px; + font-weight: 600; + position: relative; +} + +.w3l-timeline-1 .timeline .column .title h2:before { + content: ""; + position: absolute; + left: -73px; + top: 10px; + width: 18px; + height: 18px; + background: var(--bg-color); + border: 3px solid var(--primary-color); + border-radius: 50%; +} + +.description h6 { + color: var(--primary-color); + margin-top: 15px; +} + +.w3l-timeline-1 .main { + width: 80%; + margin-left: 10%; + margin-top: 80px; +} + +.w3l-timeline-1 .main h1 { + font-size: 80px; + line-height: 60px; +} + +.w3l-timeline-1 .main p { + font-size: 13px; + line-height: 20px; + font-family: serif; + text-align: right; +} + +@media (max-width: 1280px) {} + +@media (max-width: 1080px) {} + +@media (max-width: 800px) { + .w3l-timeline-1 .timeline .column { + margin: 0px 0px 40px 120px; + } +} + +@media (max-width: 568px) { + .w3l-timeline-1 .timeline .column { + margin: 0px 0px 40px 60px; + } + + .w3l-timeline-1 .timeline::before { + left: 15px; + } + + .w3l-timeline-1 .timeline .column .title h2:before { + left: -53px; + top: 7px; + } + + .w3l-timeline-1 h5.sub-title-timeline { + margin-left: .4em; + } +} + +@media (max-width: 400px) { + .w3l-timeline-1 .timeline .column { + margin: 0px 0px 40px 40px; + } + + .w3l-timeline-1 .timeline .column .title h2 { + font-size: 19px; + line-height: 28px; + } + + .w3l-timeline-1 .timeline .column .title h2:before { + left: -32px; + top: 4px; + } +} + +/* holidays section */ + +/* contact section */ +.contact-block input, +.contact-block textarea { + width: 100%; + color: var(--heading-color); + background: var(--bg-grey); + font-size: 16px; + padding: 14px; + border: 2px solid var(--border-color-light); + outline: none; + margin-bottom: 20px; + border-radius: var(--border-radius); +} + +.cont-left.text-center i { + color: var(--secondary-color); + font-size: 26px; +} + +.contact-block textarea { + height: 180px; + margin: 0 0 20px 0; +} + +.contact-block input:focus, +.contact-block textarea:focus { + border: 2px solid var(--secondary-color); + background: var(--bg-color); +} + +.contact-left { + box-shadow: var(--box-shadow); + padding: 40px; +} + +.cont-details p a:hover { + color: var(--secondary-color); +} + +.cont-details h6 { + font-size: 18px; + font-weight: 600; + line-height: 18px; + margin-bottom: 8px; +} + +.map iframe { + -webkit-filter: var(--iframe-filter); + -moz-filter: var(--iframe-filter); + -ms-filter: var(--iframe-filter); + -o-filter: var(--iframe-filter); + filter: var(--iframe-filter); +} + +/* //contact section */ + +/* login section */ +.login-block input, +.login-block textarea { + width: 100%; + color: var(--heading-color); + background: var(--bg-grey); + font-size: 16px; + padding: 14px; + border: 2px solid var(--border-color-light); + outline: none; + margin-bottom: 20px; + border-radius: var(--border-radius); +} + +.log-left.text-center i { + color: var(--secondary-color); + font-size: 26px; +} + +.login-block textarea { + height: 180px; + margin: 0 0 20px 0; +} + +.login-block input:focus, +.login-block textarea:focus { + border: 2px solid var(--secondary-color); + background: var(--bg-color); +} + +.login-left { + box-shadow: var(--box-shadow); + padding: 40px; +} + +.login-center { + float: none; + margin: auto; +} + +.log-details p a:hover { + color: var(--secondary-color); +} + +.log-details h6 { + font-size: 18px; + font-weight: 600; + line-height: 18px; + margin-bottom: 8px; +} + +.new-user { + color: var(--secondary-color); + margin-left: 40%; +} + +/* //login section */ + +/* team block */ +.w3l-team-13 .left-side h4 { + font-size: 22px; + line-height: 32px; + margin-top: 15px; + font-weight: bold; + transition: .3s; + -webkit-transition: .3s; + -moz-transition: .3s; + -ms-transition: .3s; + -o-transition: .3s; +} + +.image-one:hover h4 { + color: var(--secondary-color); + transition: .3s; + -webkit-transition: .3s; + -moz-transition: .3s; + -ms-transition: .3s; + -o-transition: .3s; +} + +.w3l-team-13 img { + transition: .3s; + background: var(--bg-grey); + border-radius: 8px 8px 0 0; +} + +.w3l-team-13 img:hover { + transition: .3s; + background: var(--secondary-color); +} + +.w3l-team-13 .image-one { + box-shadow: var(--box-shadow); + padding-bottom: 15px; +} + +.w3l-team-13 .buttons-teams2 a i { + font-size: 24px; + margin: 0 3px; +} + +.w3l-team-13 .buttons-teams2 a .fa-facebook-square { + color: #3b5998; +} + +.w3l-team-13 .buttons-teams2 a .fa-twitter-square { + color: #00acee; +} + +.w3l-team-13 .buttons-teams2 a .fa-google-plus-square { + color: #DD4B39; +} + +@media (max-width: 480px) { + .w3l-team-13 .left-side h4 { + font-size: 18px; + line-height: 25px; + } +} + +/* //team block */ \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/banner.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/banner.jpg new file mode 100644 index 0000000000000000000000000000000000000000..02675926f5d92340036899f7bf656b4b21556a57 GIT binary patch literal 242347 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≺N@pvMacXMKRB_}(e> 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/banner.png b/section7/eazyschool-end/src/main/resources/static/assets/images/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..dc0b0b311c4e49596b2ee18ec4cbdd27c9347825 GIT binary patch literal 210492 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]MG<>$%kHx_1n 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
D74|AC!D24gWVz9z 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

vMqmY}PxrKh`nl>AH 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


LX@_0)Prh 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 z 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/bg2.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/bg2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2c72f549e694cda690f6d813d9f328bdcd73a88d GIT binary patch literal 51561 zcmbrkbyQqIvoDGScXtTx?w&w!4Fn$`!QEYx;2zu=+}#Hc?t{Dg;0}Z3@||i z?q9EZ_S(Oxs=d3qx~sd_uKu_5Zwm%nQC2|~1{M|u2KK$c{M&(@Q;?Q6R@YFIRZy1s zZ$ZDEsl6*4HVlltgPV(noYY5MJ^hbJ+c0qNPvHLNsUN1UPM_7)m0|v`bieQ)Js6l- z_W!)=|El)?EkH3dcQt(%UA|vNo^DQV@5X+7$M`0;|AqPfgI(T@dgsgk2V4F(2K<-K ze`BZr()p$#{jL-Ijz3xcAK2vo!2i3hcNG|X*Z(wD!TyJ(xtf!kwLOQaqy2yQ|1bKF zFaDeHKW+RU9y}oo3_LFk3|!&=@Er4DV1(}8`G5Y0XOa#B(-Hy$L%i}oJi1&M7_4_& zo57~;E*}58QquSP80-kVDMA9WE!sV{B*9lQKI$vxKRm>u39<-ZJq^!noqP}?>N5N) zt-Jka`ygEZ{{35p35G%VFG74LWR&-Uj)sbghK`GY`Cf3zaPV>7e`LfI#Dwn`D-9(j z4J!`|6AO=+fPk2?yt0{DDD3~=7yRpm!9j*Chx-W+ivt6P0}GD>`>!8H;Jrf-VBhI~ zHxLHq0~|a8A`&bz49b7l|3&|g3>FUl!@Ka`3Jf|tEDRhr{QIbc*=#5prBx)HJMui9E*pEL|DOfIbV zcLbuD&5y)#P4yTh6q3S0^SrW;%WA()okmWxg0$v5tb5`a#K5_vW)2DL)-UduQ{EtN zpr!pqdbBuS|7LyL_NN9za(QMKbdQ-QXRu$_aezPmy2q4}a)E&_Zq1BjP6|5oynXOt zbpW0K`KAU?cvL4fwjiiHGMbm;a+^AwD8gqXo=S7@iV%(k{aA5F(yh4Uz%=ktEBVss2g-BlA5?Q zns5$C82-W7C~~;(1KcYCTKq{RqwLv<1yyLyxi_1g{6(-zmv`~bsje3RCxa}b2R@S7 zI(L6O!CAiAmQt>jZ=Q9xmrrtleB8{i>?d$+(`BAT#6;Q8*}g@tM7`!@A7I$dClPck zvlX7$Pcys)pFl;kxC6_rGW+?ccsvL^!scFeUu4}H{p8tdWNcPdO<`1XJhE-|_pp=& zX{)$ZcuKwXIrX}p9dmhJB+dLR0k4{w`x!fN7J^kquC)yN!naA$VCw)6tnR2Kk$u9X zHL;V0kMz~ylzeu4uNEem;nr3&)3-JAIds&Y<5_S==FCZdQLp38Xz>O8WZP6~|3Z?; zFhDAy_^eI%gSV(x&KhDI{%kZ^|8fg%3|;uJDPWu6$LA&!p`~Ow@rrGms~CUD)Fb>P z-*L_6>(6n$BYdxEGd(-zxxdOkFUjo5wR$@g2*jTd

$IFTspO6E$Wh_s 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

?cU2)IkmW}PToJ=gKYMo)NX<+{{8kGcLhjnPsh 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/bg3.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/bg3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b842c358b142b43822f2a49f1cb8dcc75b7e7d02 GIT binary patch literal 201844 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/blog3.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/blog3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..40814b70b4237e855578843a87f368f3c527e2c2 GIT binary patch literal 45263 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�KcH#JE)uP(_j$nFa}X%DJFnD`QxI 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 G;r{@ILpVhM literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/c1.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/c1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f34f008a1a71a49386d33769f0689888dab28f5c GIT binary patch literal 57402 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ðb0PKfUU$cFh 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 k#Of@su0iVM03$~yu#SV7{^5Q8c6`~bq?h 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 tJvxsZVuq$alte=z$ru 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 RN#%+7AA`dj93DS||JhW%g#G{k literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/c3.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/c3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d16698f4215dbb4930774e30720f3fc44c11a08c GIT binary patch literal 61877 zcmbrl1$5lZwy4={W@ct)W@ct)W@d<)xy>9iGsPS;bIeXmF+P{#3-XeLh|qM|4)Q!?&9VF0031!wAn2z-OWEZ{DU35JzV~VUwtr!nf+e| zgZRsC9|nFf&R@3vhZ+7$=N}gN%NCAK79To)ZFaG6wD`-z9~|xFY5Bq63LhNlWozmE z!QVcZ!okzg_Jf~37{k%h)ExkTK=>Q(VQFsj!7Lw);HIG_{=otO01Sflf3Vqqu!p73 zhn)a`xU-9|o2|8t2MLWiEeR_xFAs@~rMH8nhX`9&o%!| z1wi{-wj>{g%*D#f#l^_R^ill(lK*YwzqJ1M@V9RN(YRIpuQ~%_P5(RW-)a9H=3EQ_ z@Z5itP4d6P%(4N1jtBq%XXD>t6rTYAeeOT52kUQpvGMS5;bUg@_V#A7wKQk? zTcH1v|5t^7Y5uR_Kk{Sxo8Q06jzq%J%GA@rgXC|anmao18}a{f z!v8SqKkQ&ov$V2wvvm5%O6#MQ**aN&RJW6bt%t3%6N#;V6^~$d!9D&(Le3}gFoW`>-c{=fF*tW z1ar5wCixpIuBJg^?&;?Bmp}T%-vcB74uA~60N?_M0OSA~03(16zzyIBhyWx3asXw3 z20#~J1TY8K02~2s0B=A5AOsKzhyx@8(g8VuLO>~?3Q!Md26O;=00V$gz!YE}ungD) z>;Mh`XMiif1K{_^Kn4v&1fm0Rfy6*cAU%)`$O9AtN&*#tYCv6}3D6qo1oQ+30K2|Y!P>zFz^1^K!FIsT!0y2T;PBvB;H2P;;5^{s;L6~7;8x&n;Ge)_ z!85>%!Rx`hz{kLsz<0pU!Ji?ZAkZO5AQ&O|A!HylA+-Ln1;FK+;3fhg~@=ahUtS@ggJuw4T}Ox3Cjno3~K@F3!4O63fl!c2YUef8x9qY8cq;S1I`XE z1TG7%9&Q9~3+@&k9-a)I7hV5upO%E5bU$ zEg~W!6`}~D9-;?gB4QQd5aJKSCnR(vCL~!T3#1^VT%>lSMWjn)SY%3MQDh@zKjaML z7UVhPa}-zl4ura;bQ8%~&f~FW7|GqS%($G1&Fki`b7i_&6dsmN>CE4LHjzM2PH&(un$qPKeQog@|p5(}??tPf0LIL`fV-vPgzWu1E<;Wk@|qi%4flf0I#@ zX_AGKHIRKLha=}9w<1p?A0)q`Af`~H2%xB;*r0@^YzHN z#-Wy__M@($-l9RI5vFmaDW>^G3q{LAYfqa`J5L8j$4O^HmrFNC4@S>LZ%dy~zrX;= zz{}voP|UE(h`=by=*3vWxXXmaq`(x))WLMgOu?+joWeZD{LaG3;=oeMvdN0ZD#sei z+QoXqM#pB(mdo~y9g$s%J&64a`!xqWhb2b=#~LR(ry^$*=OE`B7dMw1S3TDWHwCu| zcOLgD4+f74Pdv{!FC?!RZxC+}?=v44p9fzv-!FbfetZ6E{$l}Z0ZV~Wfqg+TK~upZ z!5twIArqm`LOa5w!luH-!h0g*A{HX$B1fXMqIROSqL*SUVs2t>Vvpi{;(_8{CBP-5 zC1NFJCD9}`C37TyNRdfdOVvnSNpnj3OMjJtl#!Q7ky(``lr@*FlD(4SmJ5^{mPe3R zm(P*kQ=n6DQ|M9zQjdgd>Eh|y>VDCK*3;4} z*Spu3)KAwxFyJ(ZG*~gDHuN!^Fv2r(FzPi%Ha0bGF@ZGEHmNpwHB~k(HoZ5KHOn)* zG8Z?`G(WQtu}HHxu@tlfSsqylT7j&Ntp%-9txs%(Z8B`mZN+VKY_IKP>ymGysytTYrd{BLye5QTrd}Dl%{G|NK{2~0!{Raa`1406J14RRiJ^??O zeHsiR4+;-D2$l}641o)=519#N2?d4Tg=vR%g%gGchwn#7N7O_jMY=_l;Xsk+l$$o)CboW-uI{9umAq5%h&S( z>w*128D*@+0G;Qlmp-qGSEzg5y0Cd=s6MJd+($TvP4SoYQSHoHK2+ zT(j+S+;d;%dFQ(p1Qz-hg%<~wB$h_M$$pz!R$5+I(Og+uHCWwQvsgP`cUZsP@Y?vj z8N3C#75g3Kd&UofAI00W+YLKhJH5LSyVHB>dz<^_`)5Dhf4&}sA0i%R91$N?9kU(x zoJgI_pX#3;oVlF+K99UWy~w+yxorI<@@x7^=j!0v?fTD6{4MTn#U01p;JwQIj|azx z-;c3RxKEYOJkMh<+Al}HyB-Dh4X@$A<_96BCDsoREN!oQ{%`j+2d3QqlnU|Mvuc z1_7urz-q8ya3C1~3>65D3j8ztF&zN_A;ACs3Hl#_f`EjE`7jp<3-@OO0P|1GvkD2# zUZ5GB;8;p!Et4YCT59F@34$5&UOihjrHmh`QrAo^5=mX3SNe2>k8<4Tb9pInBNB)x z78R!dTZU8Qii)jTZhBtjOQBuJTV1|koZqC_4(EvpkM%~T=3O90`)0+Rl}TcHr8+`P zKd=!G;k3;7rcA#sCWu3oNjv}W&;CcUK&(1kN-JK{h0&5JHwP=GF4w0E99oP&T6h?_ zSOjRBvDie@cGplia7;C3gRDwbt@3pRXFLP4I?D(mXXO;>zj$T~{*P5niwlcdL)u%f zf=mFn6P_tI)m(MTnrw(FLw{PXWLPBz$G&vE>Uls5AV#OFs(NtEtEisPdseA=4&xl< zd6!Y$mZ=%d$?6}WfLwDNsZ1H@zqTti9HP*D&|^c-U}!}(j3)0ZXFfZ~)pl0i(c#f! zU)SKslat9}(u~2uh$4fvE_(gyJOZK-HmR1AA9t`Vetn#kRV|l@q0>0gjaYJ9{qe^8 zE-{`pe}3VRBnQp-JHa&_zj&a7y?LE)Y3&z@2#*6IoXGgXR{ZG98!)J}b>Sks{qnvA z8DY0;6^Fg)JcbcJFE+vDAUo%F)8V=aT1en-Nl}MdID2YQ zpn_YW3Bevyj5YNbM>z;nHWPHt6|e{u5S9DO!Pv@SP@5)?jaBhy2#sv`l&C)Uxrg^yPm#{J~_k!A< zbrVzNEU5GOqJ=F*$A;2a27;-XvW6y#!k%gtzQUOn!RcEF(C_*fcO&6Ed~Vclhe;G? z(;SKCPM#qjpcwt+X)b znm1$Q`9F18`Tr_--bo@@H45Opd14eENynr0*7qI%dZG9^F)K&+hlOseeiETM-5th( zYie>EmqUbTcjq6#lnhfq9_)s>6%C8>FG{tw19mk?WH*h)9{<7|E9<_aEXpB))j}qL zK9*@zN$(nFgF1s#o+FQJ{iyA(iJPrka1O2GNvR7V22L?Xylx)GlyxDEd?CF~c$X#` zqPDlE&uF~R6jd)c*aeeyez&*Vf^z|LV)vUf9tTrN6XMZbR8`_{hy3=JH@ohtUS9~4FBw_B^W~if`DGjbe7;({)>ntXR1<1nl${G58|9j?)Ah*ebXhfa zXWw==arX0V5cD_@2{v!c`3~Nbp%2Sn#ETRupC5bR51cx*^olpAWt?TuoIumMvu^Fe z5IjscTtvTh47OQaw!@_vMe5)p^Uki2mJT!GBazKM>a(h1pYd4A6yp3$0buITfI5;L zTrKVFP*mi_PK`e22^a0GknPs>@C~H-@`D9w)1&Oqn&RVB&9jHq&)Eiwxr5=wyeQ=U=&%vB@+3uc%b@B;NU z*R>y^OH;_kpML2E<)HhU{O-)F;HnRBJW5cwT6#2mab9wK*xq(Gq*M3j*(4I@xFYlH zk|COyHkO04g8HInS%=)+MS;#tA-4?|Dcy>Fd_E}kg=D9Pf~jGNcs?TU+3rm*ef@KuE-L83O+hI{*ZdUo)M)P+A9+0 zaG}M1AoB=PDi-IQ6&q1!m5!@n!ttx2&=fSR9g7BO-Z-LaBOw0#)7vm*e zm(RRs@O|av7)}^vxp1=LCD6+d*An|W;s|l5`~Y9mIX^w}>l-{> zfE#%e8hN-fE+m1_n1Z4k9vjK&cU35I3+F!o`K_A%W{Mw}S3OMIfz@(|V$@4T?PtY= z!qXCYWYyOAhGtB?0gvVG(??^o0hDv@seVu)IY-x~)+_j+wd@tYq|&Z)EN5cI)V*OWjMa z{!MCqEUSl$9iL-FBSgJofgNO)D3uZr8XZYBUan7)sb9&V+oYS`*Le^-X;?Zla2ho) zi#UCMvL4Yrc_CGA+F+Dj?>iTnH>#k1r@qSNas%^ZhkVy??1|rDqV`BpJ?|8}K2f$q z*{$6WpY~jC2AP$=I6S|$0s@Zobquosf!!@WBYvI8Y^igcNsRB}oHs;YW(5P61Xd%5 zM2=#&Fn#wbyhRHOjB%a3=MVAA^caGOO}?(Z;C zuUm~lNMKS$`}4Zg^UGH`hG+WQ6W@irR+%A$;L#s4QEtKuX1ScJOH}0@fHkFuYDSl& z?HQ7DlVW43!gSBGcCKhm-Qb9k1!E*UzSM4(fbwTxAag` zNauVF$En4P(G%Uvzh(kMUWo4^OiF67F;jjc6eo3$pPQBKRlkBW(~#%nfqxw&zdLN! zKaaa3b5G|C!jqAfe%E`CKDed+u0MuCae$^dwQ@ZX)~lReQkz=i5Mq5gu9uFyF*Tq2OD!Y*c8h8N(?}HRhR-wckM|k{e?wmjl`k z{H!(A`Nt6nOwZuAowZ}fWj9|u*bg|>of*@$=F|-T09ffhLF*Mjb2zHT7qkc!ZCh2cKJA-+(Y#?unm%+)e0@y51n8sTq=nwLJp z89FOmf!sM{6fUF_Q<64iiif>(T@@SShGlEgRA}@*AwUAK?DMO@xWtZ7a z5NMxf*7-@9)LUiTlZM_q-ex4Z75S@Uk?WbITIhS~Z2%tvQIeU?AHbPa-s@k zjg1I7W;V<`b7sX0qdq{{i4SlIrw-e77m0 zelPOEO(+K4o*=9xSB+^Me#fe$^0wL%5m9imb-FyOVC?pEwilh@*MWCWjqSQ)VrJ9L zq+%IJHbYke1@llu=_+m9$dm=?84WvT8FJg?I-q)9HBeRh0h z!uqT33^$DtEMVSXT~FmYl+O(wQd&KNKvAKX@-TT>`gqG8n)UA|8?2t0!|OR~hn~w1 z6ZhdXd)7)dzBKeKCZL(pc#pC+SC2$7;rXwF7MiP3koeZpB@3dt`Qe`UUPt=WNXgF?uqtUR zA_bFg(_+0yG%g+*{iv7{M8htK8Wz=TSM55wo6l8M^SYgk$RA%tTXKbBEU*RBqIQPcO1~VNtU4 z3j-~)?=>D?S}eRj0;o0>xzAQD>hhHi@z(ZDa?RJ$-!959f<-zB?54Qgpe@{qujM={?5Gf2Yq&mWl!AD9%M18ozr_7-!dj2y@Vbjhb@D|2#HJ}V1xCScAu{W$42 z%IP38Bv00UZhdyf##+1NWq03;3$5#JZ$yZulpIQuZh6eGlQr_0Y?pIKA%G2c`erU; zkCHbhpo7a+J^FwINTVuAX>3CE`l%b(N*r%#tLo*vRIJrY^wa0LVDM#Y<=Ck%8A0D7 zAB#1HyREs&U47NiK-sA1bk|2zNOyf5TBQo+bToYCVh2;LSmA*#uRjMflgt7F9RpwM zcf-PLx70Zs@TER?-;Jrv+4b3D6plqAVOG>P$?S*y%QX>j)-lY$Tlc%vjlW3`r%MTP zMk@Hvq6l_suTVq_WkoX{wr+)b@KA<4Jk*YJJ-OK9N(s{B)>YEl%~Wqr%VTw3VW|mA zYOnid1VsWte!DzB;oDSuv3i4^^CMDNiipv`S}utK7|6g31_;9L&4b0}Ye!;}MU093 zS$+{?ayi&28RD)sQcWF?rcpW`@-a4xs(JokuBq1-f%MUxIl{;LV(#^Ta_@Nu78cva zLv9O`SpR&Tu%qFzdc4%S%hMl~NW~mLDQvuXX0T9t4C*_$A-{UOB~TiRg3_CXqHo#d z)oZxv%pGl{mc~rWxITPnS?`C3owhb}luL;gXK?6q<-kwgc5S9C2W+&r+}L~YyU$sO zpz?BM|EC1B8)e$!=ML~-Svpx6_kFE}7}Wi!;@v?tf?!(1!zxs1$G6o&xQy4+En1D>O#V4H zyRx|O-M73>qOHqkE#` zyQ56VcUcQT=i`+ZG-8yt_|y7RR=FyN8BJB5}!7Y;8-^iz>edhRWF)!>mjVyM5h zV@)$c`#oH*eD%_2krnQN^|4SM!U1mz7n59#DCQO*n24Nmfc}#0N=hQw-hJK3hPatq5M05h?!d_~qgLbdl{&3_F0s&wjPMiO5qq3Mf3AtpH#Fj=Qt@FRP`&#ACgCtwCBmoR%^kv86ZW9O&M3TF!?Z; zQhV)TlEl$pB~W_Gkb#NwnO*2oN-r@LNs1xaOBEdyb5ZYJpKBd78O>1WA*3EsI^M(= zg38?QYp5xAstvg^l9Bcxk8gi|^kY_-QjS}{P%s{GOL2+COF%mD>Y*VX4!S0TgF4Q-jM6TbGDyP0t2FB zX$aHUg(Z)s3~R-U2jx~-b=HF-&hd~KCHfN0z0hA6`}$nQc`s)VYVSaee^k%LJQZZ8VME)_0`y?wBXQZ#mWD94t_vFU8RlolT8tXysdWj)6Y)u z6nA+-1&b3=^3yNayLH3NIXwl>-dae5t4lhDJ~R6XyTJlWTwR2~o8kIuZBUh`XNdo& zpx$W=*_q!}Wykp*DJuc(;(cY@75A*`tfXtms9Mn@-$`(-0X(%z!F#xb-`<{q1%sv){PBqSLa-&Ex9#dehE7dUMpg!XdnMsWrR zd>;37{6WjdO}`pCS*__m0Fa$N0YhYIDGYYSF;yPV>?9pw44b%z8S9#u{gBdko{?HF zppovTdTWTI)`nxQndl+YZ|~H8I@pA;p2BpYePQtUPlh#FbBcu@;{?Hfj}!mn?)_Mx zh6INK0HMKP{%e>3|2s^4YVDz)QlvH!k#mGB)@BI%%2P6`iu>Vy%_06&-c*~hCta1*Ybi%$0i-@I(D^wgVVy!&WZFU_vDOKpZtqwu@WM>q0KYEX|&dpqbm>N>W?5vS@s|$NuwQZ&%R7541 ziwVJ_bdw(sT{ADe^0Ui2T{^>K;#l7XjI$vKexoI4X%G+tH05S* z*%dZ_=`QGM9xJ?9fP6|3Z6A8FSHW#5G={6XwRX|ktCZ|@v+L|n=DnxY?xBQ8OTm`E zF3JDYr+d|BuNe?ZZ6$V@W)Jw46EJFo0=ZZ<>Xd6DHvb4 zs7d%WTxQ2Dl+s4t=$xie@o?L5E!j0=)m8s0WoU(+MEZGB!1d*X4bBZNVze)E9Ff{W zLLcez_NQ-M!)4e`oC5NMqL$_r0@b*97@C@sr{pZ4euaVMqHcC}GFR;@#Z>DqidQ!H_bVcnZ)+ zhW$rKx49fzed+1Y$WuvQ{9@94VZs=no30xwicJ0xZW$t(AEE@CoTXK_N6Lh<{R{f! zUC(>m90Q>fUp}bmFi@&@M3uMJUd#{I)4{OY)V)!6@33s^cNp$aQI)57b&I`?RJq}C zAxs(6lCBBXSzEEQvSi|g&(94>iwiH8lh1=~pI*ahD@(RpmYd3aHNKy}Yvb$%`qbU! z#x)f1wrnZ{lBQ^mMDdw$!!fSBW{BOQaqFvhVIn*WM_&gL7OpHv%Quqmw4W`aaPQI` zNEAGTaCN&K4CC)h+^JP_^ndhmDwK~!9k73<1OH42 zz=2>8kN_xDG!%3UOe|;;77^_KUfcnK0h86qUEQh-rc_RI(>w0`6?20V$xTTM_7c`H zLeUdCwc@kC@A$Zzv#7@(8C_(YJU}8TunwN%LZ}*Tb9~Ug=C=~I@d7*I_+mK zY-$S!z}_FgPbMldR7`^8o(C^f=`as88JII^ozt5^NCrY7qe40kGju@8ayE+RIx!f| zMQedMW|Yzn2sfpUOi4Q>t83`02xQnkXqvp?p2zVniP+ zkVt`x$J3TRd8_N-fUlD>JS--z_pKfgB*R@tUfnLIl;CJ=vnU|fL*^+(PuhWv z4Vwz0V@H{)q3V@H{sREI7usc8@j3Wow&{n~U{o?tX(jt2Uiwez68L(WqohWz{rGG~ z4hfka+8_(zTG1!I@hIeQD?;?qV72u~ntR}cfv z;7gH8N8$CTy3L>J#_sW%TEP*VFr*@|Qo;q&k_kMwt;^8MO!27g^=7bAFhu1I33O(q zyirkL)H8c!HDgJ)C40kMcH-PtgJmFf*I>C)dTruJvfiL@TAQp!#Tm)y2 zJY!LG@y1{iEJI=t zsO)-#f*nl9VLu6GEwP3+%j#@#J5s~eXn|xek!B6I6R}{K z+u{$NNSD#4gHTZr!n}r31=l85XW%UVY`85{QydORd(f=n^`rj~dV+Ag^rXr0L*>XZ ziTDPkK?>wK-)uG@qEn(;r4p!2tqC-n&mn2VcaJ4fEQV4RG!xe;LL>}*A>+qL&Cvv& zgmOU6zQ{ad){HKBBM9N%#J9|^o<7Z2bvgV1NL4yHZq9M$EOBFVwBl=2*p z>Rht}M}Jk;wJLjq(@Kc&b;}KFQ4AZEk|8Owy&_$cO=!uk-tI7#RB7uAkJiR;FG#(W zhD3qCU4Nh@k!L@#*Y9f#D<);^C>z;lt;TwL75ViqbKs&B3UQf8`88^Um+ekgC&}=Yt@k}NTU(*tIPn@gcW+)i z_zT9pcV1u3X~|`4Vqv6dnIoP6p;5b6E=|vSSVh{EiW37h@RxD(kmQ)ysgb(Zn$+H(r$dM0R7~g>GZm{Q%$j zX~tW5qyFT#^7^Nt`Wda*E`z!m~XUnlkh&hVn?+jd=<`SoU z@=2o0Z{CAXKkE5^_i4}mrtHvf>o-jB@}QG3-7w40GaPkCwfUKiS2xO;V1`)hpp`t( zl2AH{QB?wya*F<74EM~hpqMyowdY4|u4>K)VY5Qs8ov%TaM&{?y3(JW9uX2cUi&n^ z--|uLdV$sP+&}xt`*yqVg}CI!xbmgH{z({nc`)LuKP>ZM?}KW2gj=Y{YUJmXcyp+Q zW|)Q=8;%$XPVch#(>wQ)smlY+#=3@Li?QXxVDeU^_D%Zwb%6B0_ z(g{4cu=VT=8s*aT+t?^;O-G;J zuAuJYOO2AFCcu;aOcjQKP5H6XKq0+jB@-K62jexEwpzbDK5UncOVwpsN`>j|A8d)D z*X^htL)L>A&o|%cSZh7FDss}^_+XlUs(|Y6p67XTcJKE|c=V|d)`Zb{=*bvzd9E_O zo``9dipn089*>Xn%?c5xNQ7`E{>Ea5msgucw4Csl+7#tX+M{ei7eRZqaLYb}O%uD< zTBHm^IYAuk3bjklurH!-<;Vsi!m0L>!3krwdI#-D&||;vW8uf{{TTGId;UGjdvwqc zYu7BDsVaon)*0Eura?#7;c?c&)a)RbQBIE_4tHSjOk&!D8kL)@Z-CRKFg#M$)~DC;_`b5IUKF*4%p?} zLmNWEqpfP>Dys6LH#96CKm7sV@4YHVUG-rPJ_+{5O8OVnYZ_!RZqzrv=?;9s-)l=xb&5KtCP9QiznKsaO{*zUdX0I5BedX5$kETjGh@8;BBN zDEJqvLt(wZ^31c8u+f@7(KOgqetvhqHO_fmJ?v+HE}VY1z9r5!G+S)?rTus@S!}JA zWE;WQ+I%lhOTATBgOB>1Z}^L)MlP9bZ*xsHlKT12K_9<%h^#WldZ{2&lVl~Rb?O() znc8qCX`5W7$x*Gn)<&QRPK3+NI%++G7NT?lspP)d>LlMqJU(8F#^71934sD9F=I5k*(3{rpHeS&K1D_y zabF3uW$U5vE8bR}h$WYwU(^74!yRiC8O=3h{Ok_~Xirf^2U?`j(weSZ5n9hET_K}T4e z^b%HZ-8mb5RZeJWem(h$UzNtTU*C~JBsDU+iyhJ~WZQ5ag1`$TCna3#hCa63Ji7(= z$=Ei({iNJNAyL%h`%tHew^HoVIm)WjNn*TELuauvvAT^Up)+jW%Fbdwaz@;Q~WXTV{t2JH2ilFPoJ%^f67TovjgfFS+lbkQ{Yp5@7Nv2HN|n=u8;% zlu~iLGp>-PW>eu%K{C}&tQIsZ$UkSfP!W=3W}{NIrJ7a=4u?o1vD1I4Fzx!AI;#@m z5;3SgkN#GKT&)TU^0_%9*F28+F9I7sa-6aOl z*V#I>C1)dySQHgPb#-Uwu^`~>B}W1agyT-^479)o7%P8vQ}dq{aV?hf&y-fXd^xbA zVq#+Al&H#J?Jr$C19{TQ#ai$8)I)KY#uBfx6I^6WrY!sz**qD2>6%e~deylkPmIh# zK6#m1!syx(RneDdNdjsHGn8jCTG+Lj*L8l0`ZCb>03tUYSXeSkjsgdveyl8Zi1mf<-M*mv8H3Wq4o}qC(ZCeBj+1rHItNmo+rnkYNQ+k_(fjA*ypLZjX_}WzOYSF05B|yta}dfUn_)pi6h) zvX9A?Y9m-puTQrU{{qVPuM>aISS=}#MlaC({#GesvJt)e>!mzI090kSaYN-g*XRSr z0V)~GqA^`8(RMp}aNjahAZr#c;Mtxx0WL+AfAz61PsAi`t99A9*CFvJA4_Lxt~xM+ zLa9E#bll|&Gkv~ZG_Pg!h#j1I8k&e{KF3r}^VLdjFUl^Jc-qF_uk{2cM`FiW)+VJu z`fXg5%g?zZh{;!KHD=))JWs;jm9A7l5s|!?JmQbbm~QvXhGkU2{H$nwyXH5XuYmWt zZAG=McHnD<&yziD>ga-kMYlJO%ii2%I-E3Tj>fk|$)2uq8o3i#B3Y!I;fusjQgjHd z%&y)!ZBmpXVFnf8L)ZRn!O(wD2o7u_Ef zuiL-CHi^}&OVW{fe`+qD%w;06oIz`r>=|#PEPujxB&j<=Z0>%3ke~5?{vILDa)bKQ zbz4L_61~Uk!QcNTEA9t>(^J-#5Tky6y&joa=j_F1a|5A|W?LSO>oGni(X|ltkcA5P zDH><6xA8GbhfMbf*Mee1F3zlc&ePOw2HPCW24B8jhr#a5@opf;4Be_i$mbO(BJKo(3DpsPeoi0PUM>*%^Uh~ zGqCF;?FgMBJkjwgIf8`y#DwoW8pD48sF)h{58`R}_z%@k&7s*by04fSj?s=E46RIO{3yc|{0^7P;X=BUxzhyy?6c~5b^ znw0bDBevLCRKton+rq$7>#*T{+x?Vqe)EC83F|o(GaC3E-#@5w zWz+RFwH?A2oV)Sky$5)hlt_~cT2NF*q)Kxj&o+q_X%t9f-b<7Q`o#oD%Xr4%Dm^D< zQvIO3VuU5qq=+RC2cenXu$Q0@{sEK@(~s9+LuW9BdZQn_mV$VD{jRD{Y&n~K2f6f# zsv8DaL=gQXO_neZGcqY!z<5yrv0D=;^cwg|i&-;AP+(qc*`CVP7U2 ztA&Y;dh9hTFWk6O7b|lp`H@X^-MH<>TDlk!0sE;|yiS8FDtQ9?Mn&G5yVOzmJwuf? z$|ZShxGi~pM5Y#AuCz>l-P)Qz?@W!Srj1isB23K#+Ja%IyZrW-tw%!|iV=hpMV$l~ zK3;=+wtNf!g$7eJf~M5Mn=c2W780qXXGYZ3!dqD~AbSu_$zFH{^QlNK=Qs*CKpr`~6z85g&t2y(<;S+8WlZi*HoM zG~zm+u_QB{m~*v^CGm? zHi>!?D6ImEralwZ5e5-)fc5fpR)u)wTQyHj7#t@PXr6xrN z?!6SGdJ)>K=ny!YgN5%UFn7WB+zvypJtCp(AL zh2#%Q4=2UCc@^w#r*3?*7ANbP^`kcWeBpVRLgHAw$TzXG#NXpkBJ;UxJ34C$}TZ{0A+gJI+?F$YD1_k-?ZUGPy z8WQ;Nsv;OT1S%RSBsv+Zs45DZscQ-p1_`;CT1XL#x`r93X@G)V+%0rr7gI#jy!i^6 zlEXbLwU|@FV({AIzx~7D!a$~!?=_ZI?OKaSF{Yqhww&yy@iS9ZsElD(qLDKCnC>b4 zaWW;}yZGdZ911{*ZPVAWtaV7NAR9#PU?jw@l^zK`#9 z$6UUjoL>!(SitKCk#lKLbQl78}8V2BThp*`(ycPpU^+D zF8uGTm%IBbIGfvJCro{`;~DHOw{jgPdXj&Z=l>?BbZu>H%&4+0jQ9>5VTbF~hPTxn z;GN>EfgB6*laD{k*UzYbe!_}>wHj_#l{E@K%uQU++_E0AzS@vJksoPzV~rIF zH>mNY;tzmX`GUNJ^K>pq$?ig5(xN?MvI`Odt6d~(B|c51O}*>li$dVI1erEl&L*j) zryEM6h#*o!?6RDJ&rhuHPp-nB#U8JoTrXiV_5-heA?^iDddg1~IE)@-zSh0T#lke+ zC-iGxxJ9oNd&S^b(QLE1#It9l1k14c9##A&@vBXi+@uH8ku49T2g&zp+qG7u?Cqx9CIFZ-8GB*mQe3$N z%Mz((+>#5Qp)TVP$J3lT7$;Z6cnp3T$V%RRJh=b1L>9XF-61r|PFL|3Z0nhWmI^dh ztAvmA>G(~Pk#pY^awvEUqh%a#QTZo7SiEim-WYl~{K5W&bb~u9E@3iiOMi^gAAo8? z0tq+nL?=kqy~rbR5OFi~Q5dad!{3$gdkE*?aMD$nk%q=Oldob#cvDHWOh4&}tuGP0 zyvt8VCj#|6@-O(}1DtJSu)1cuUi~3(MJ*{IB_v`i77vjHe*ogFKYCSE7MfUep(6$DRhtwFr{ul)#1VfwB~^xLr(Va(wD3(h?P z8sGtS*BT{HbsB}bHyYbMuNX%AnKXTN%GJ)Xm5(~rogr76Xz+aE7MGU9O22d&UL47_ zXa)zhCP!$*VU)}f)7sef+|2Pi!5Y(@;!~tiCiEr;^wR1g!`B{SbgpN}8zr_b)q(8E zdiZG!xXB-@A1$fHR9x|z6povMDnef`4(kF$_IQ8I^`v7sGK_v-8C)95WGhYCB-zCl z$lc3D_iPs6{Cpl~`DxZm=g6tSwD{5cky4zfnoAfJcRPP+I3#g8er?w9Ee^xc>vp(? z?3l{IKTCuH{;-guDV`ZzW15R=yh$FBKhRu%B|h$R!gBTUl1M!msry0(V;1Ovm{ zQIIjUDHXO!IDG;tx0_d4kp(w}hYMUvJ=(VY-?@}x4aEE2Vx=WxDmeKi?<3cbJV^!3 z_tcX_?qX?bJTQL#ytKKM&Y?$@nhKH}Y?=2kH6?Xm)~mxye4u1o_pn^>W*kpn3*PA< zTU!}`-=Np$HaY5)=J1(#D_of{oxAJ!bsXCmMuo5F^9BADc5@9# zsT|>U@_>&YP0k5{v_@Ozh?`#@`=%~n)=9KE8+?q+E993Zb|QD%r4vEI*9q0}Eof@5 zJV=&qUTF7QAyT27Kno{agiGZ&%rLFPZYw?Q?k^R1-c8;2bx-D^iKZUK&jyAZd5T-- zV^X!~JM~8$IbL9pEoxC5n_hA%;s)FdYcE3A z=Jn0fQwa$3>kGcG-$9^=LI@JPN1>nBexF>`a+}bda?!SyEQkrwY;G3dZd*$DzW}K~ zR=+z*28jXSgi&A=YQ{9mM_6n#xv6OK^V) zydB8@04VvYMz!-vq+>Eko3Tdk%&Jo3Y2!c2-}0e5u|Kmv(N#%z2r!M;BR`s|A+5d; zI1lihv+4_p_;{)9wiz2v@B)G`FtZU(c3n`K#;ECHmCrdAW&RWp&m(nD*>60_Ie02_ zOmH`bSK+}72V(c+E}wmv{uU$Tn=lQ2M%&bkqiX}RYb*`;DIm&E;yUto1x!c`fuZMh z&s(_~m>$PA#y#EL7Qg~vY6{#s8h9Xc9FQ($%5D>F;T8wR>+Ia!U7rP&+PM85-=m+Q zdWZ7FP{OtjOAC)q30i}q9m_R_K!c-dWUdDa)kS1nP_k|MH*{pMtDyuA%{DA8mV_l|bA>kR5i} zG>e1K0|~xK)!IU`X1gt*INHN2{1mcjD5DoRTGu?DHea@C=MN5nDVjTZe7S`SaY`JEIL9Br)2OA_t>XNLld3EEIL84-*Z9nR)MFA zw?XL56@|bi;j!kpaQa=pp%0H2MeeQ&!y?4P(X(ZC-C}BV69gX+TT0DXoU9extg{FZ zsskEfW+z{Ab1ASpC)+;6`l^!~NfEQI@A~3ax}XNxtYF-uo}Mtr<_mJN4{;ZG5T0L7_4mV*A>>0SG#vWs6ZnfFC@3NA4q^NcCcFM&2a0@Pg;#L=3ycA{6 zHco=EhZ(jkj`Y`2L1Ak(zc8O3n3wI=me913 z!=~*j&nKeNEE5DC#ldYS2HT?LSafI6xn!ejA1lU87h6tiPTTHJVq`4TN4;7`#?zbK zmv1+B4hgz0mswK#!z00smbqa&$W&TGM{d_cAh<2fLq$s1qs4~g?Hiod)zIl}LmV*O zc}EVA52mhkZN6dI-@Gk0=DW{hU~oGwVadb0nkAzo{b7xs&seM!<|8%iH(ZiQ_D~Vs z!~#awVC1!=5)K{%w5X$D4a&%2x#NC}mTP*n;Ba$)Bw13?+MQ42>~)sJbpqUrhDvQK zSpkw3vGI&9!?>vhD?>|uD@d^1J+2&+pKNTxRnuF%5~VKKrgMih*H}5FhqY$j#6lt_ z_kAhWdIzAQiqz3CTZc|ddch@@Z7U0!RyKuf`f^#Uy$#DGMFabm7dS9teXgxO0&%;0 zz8|8RS!${c+*=#NJNF{`N>;Swzyhg`ow}(DGY2F3C%Pes-1-@-@L0GeH@!Dp+?SM8 zQ98BqdE9TSn7$G=nA@8P5oBPyF2!2uMyc&Q zgd?6F1DlFz3ln%uTlEgvuP z6ztf*Mb7^KX!fT$_UD!RP-c&vkqpZ~%kLB)us5?0%?83ULkL+T=nEp}klqVdC@xLW z)N+9P3{D_{xx4tM7(?G{xZ-#APPSd@s+wFlE!vzMVyJ11v|ZTSVY>U(9d-ki?US3D znw*xG-K#8+4a}-m{{R)fDj6wXh3zB|clM)ET~O{0b;srUCygEvJ%MI8r`Pe&f+ek6UlGv+S@_H!ED1c={j$R*8;BG1D{_n-H`|*9D?Jv1qS&_!Xmm_u(po+>`JX zN%b=R0-@ncKmOT6g%wBOQt;8$AB9!$(Ul$nX+9b%Z<5nTc8Qbm1?36dqFwmH@|^C` zWB&kgd0uyD=*Rx2_)+sfpi>+-COd)#<5SoGMdj-1xzW~TY9oyB_j zc5yosxZc^Sm*4`-7uqL%xiv<}9fQ_875gv!kn@IdzW&vLp;)ZF9hFcFfv&@UYlu_E z!-{9Wjo)w4Ni987v3p`Rd^eN^j)48q`7E


VPOd(~SVHa5N3>adSQU@JqHJ!S{vVD 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 ly1QXSbX)glp@p$MAx=1ZYYj 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 D!5whQ literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/c4.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/c4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f1b158fe155df83418a9a4f315802908fbff5965 GIT binary patch literal 38884 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 NzkMcq5chlb{{Ssb&qV+L literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/c5.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/c5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..75682d74b3999774d68b5b8164ae652335f56783 GIT binary patch literal 49170 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�|I++S9Du{UhZ^zvvrkq{a&`$=DR%N$A$FZ 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 QG#X*FDSRPc@^|t71FlN#O8@`> literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/c6.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/c6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3448035acb3818fa640adf432161d2f957dcbbc1 GIT binary patch literal 74724 zcmbrm1ymi+*67&>cZc8*+zIaP9^BpC-6aq_xVyVca0u@1uE9faAO7Ec@4I(qt@mcu zo9aH@zq6~VyLy*&)vh|{effPGK#>-g5(hva5Fq)n0q?sA8d4%6`d^h4#HD1#K0E*b zK~mPz&K?W}0Br4CoRlPli8VB}h@mF|FaQ>S0+;~6(Ae2QPFY+9_;6BUBE-%gf&Srt zySqi;<4OQ9M=$x6nE2oF|4)Q!?BL`A0HCiQp;=5!osB;@y zk3#?3{l5nI?~wm%_>cQB{Bytm)*Z2^shOdxjSKNVN;S5(v3GSMc6Kl{HYKM2e-`5Z z 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

B>0xq*+) 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


Gu7@m5GmyRwf$fBhIEBL4tNWS@&f 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/img1.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/img1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1d9915da8caca9e8886e47d7fda55ee0325bf6e1 GIT binary patch literal 97927 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ט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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/team1.png b/section7/eazyschool-end/src/main/resources/static/assets/images/team1.png new file mode 100644 index 0000000000000000000000000000000000000000..9e5f9dadb0015b5114645cf3dd7d71e8a20c2560 GIT binary patch literal 66243 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 ZyuaH#j;t>bjJ*H=002ovPDHLkV1lzeEcyTd literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/team2.png b/section7/eazyschool-end/src/main/resources/static/assets/images/team2.png new file mode 100644 index 0000000000000000000000000000000000000000..8f183ab8e89311541146dda846c85307d74e9213 GIT binary patch literal 81358 zcmV)MK)An&P)j zki43eu(QBTM@)EfdSqE!$fcuxfRS){l$d{f!=j;UU}JP|c+#`8oQR5)fPapCevNv0 zWNnDkp_;3mrAbCpNk>*uPhCz-Sw=)rMn+RiM^!{YPFGZ6Jv&A}JxWnbSWiw{K|f1I zLrz&%Vo^?7RZ?C|N>)=*URzmaPfJ%-Q(#F&P*qS|L_$zhPg`17WlT$0U|wraN>*4? zUvF}JURq{jU~NP|OL265WM*+@V{ke-Mbh2vYi@XKaC&EIbIR4_b9R7fW^y<-LNq8R zTv%gWTxv8kKg7`E&e`bUw5adMzjb(m@5Q{}x2@&6tzcbfU}SFUy|GP4QaCLuW@>gW zBO^gQMnW_)YHW2gF*@wTx;`*2>cO`7iYNH{fZX?FA3ytu{M<-N6cdxcU!JJ_h5-o?LhZ+a&m9@@aT>9w#Q85!uYsoJur z^3TR`Tv=&VQ%O8Kd17B$ML-i06AnuKLv(XXYynU3ttsL`aFN8jrrHGLOMOqpOU_linx)7$exn=(W3e1 z($}Jwh;3-;siVrGnA5nh!j6KGa%`G-aI%VktB8N4waw$p#eG~;#g&H5my+tmoT7ep zk8ESHj)kpyZ<=mpu!48FgL!{xX346dsDgRGo|WC1k@(1xyo-Cgh=Uy+B$Ie^$&HB9 zm5ZBydgQ#2)SH-OSXs1wa+ayZ;lZLuLr9}{Zhe1=J3>;!rJJ&tkfw2GqlJFR&fAHc zxn*vKkYQQUhJu2TtJ$}d+_8k;jEs1PqRM@CYkZpUxqfS5WU-~By1vY!sk`Xc$>Wuq zgm!m|h>xA1t)Q2e%f!W^jfq!fg4&{LMpJF(+}FQsXPk6WMhbO;0000dbW%=J0Kxu7 zd|IIk8Z49jK5+fdGqToP{^joHee3OvtHRsQ+q>-7=FrrEFb@p?0XkMmL_t(|0qntn z00000fS~=U7pVdO0000000000000000GK`V$8j2n!Z=zf@*ml7zBy7`z?y8Mnu!L-s;QvTZWme_A7! zQ3zChH>U)y1u&O=u+CVYeOWIl5ohSb*?KP`*?R;~a=sg0s=gajH{9T!wufzlF$T=0 zb=`76=72FAF@~1_;Uk+wk@(|&Xgl5gZbsGh#5Hd5ah=-cg>nO` z-8en?^Rj4hrZlJl9!J=pmYFzUY!Zp_AfEbiaL#7&@^}|vPnXWWP1SV$@WgG7#bo%M zEm)()ug4>*OiQgLm1UM^5lKG4w3(gp5b9GLdg!aP_xoE^rB3<0(G(klz!Q|fxon5c?{sLWT4kVog?29>Pp(#NNqev@sC>%K(4u-t~4nw0pr;J&K z)f>abb{hMB>|Q9>M}zJZAT380w?N9DNFRm ziZ6TO7e9@q@YM8Ok*aBj`wy9dtfeD&nr(`46HjZ_urENaFgL@N7lBXwQekmLEM}NF zX4SZ00HeAMX!@!~9~)hXs;ay8<*Rq>4=$ZIyMRN!JUj?zX&6fZR}fpq=4DyFf5&^7 z9ean9N5BXq}1LVdo2y{6O7;VSSsUHkI>wWK1>(Swy3vpsKU{4~GoN)bV{N;Ww} zlk*A30${Od#4TPR8FS1YVmj`+w$rZt3Q*mEQY9C2jFsbp>5T(rAEVSH>tl?ibnzG| zEkrtCKrWT(eqO$VnJv64i!Y#MC?C2}zwi9>G%PaT=Z#I8Ll5rY&WjWsNLosV4aCFY zu*SGi8Y35|G|6ETK2^^wUwGKL#IJmwPAqz69@ek;Cw)_E$Npzi*X;W7Ddk|$7aSd! zjZetbK^Uy~xUNx3c?n;ksB?hpVuCb!jegIp0UHq4WiGoQSWYtqV$!nc9J{*FrSlg% zXRq=!7=~de3R;xXK{|N^D(E6Oxrt|>M_{NyvI@zRq2Qn~wn&CRmlOmS2mipqf(j1e z=HNGbAl}#gy!f+ObbW^B4c8?v9JybP<6`ib?XO?)t85D4Nu`NlP#q zdBVdv$H+5E)0%|HmiKHc{G{ovaH4q78!MKg9M<#WW5WLbWET@f)A{)f)sfdBsk&Xu zx~^+m*g=m(0Zaj_;v?_{QT8{bhsFmra3NrQVv3TU778vJRT^W?|5k!NrJBmQOBeGj zoS`5!+T7Z@?fQPxZ#vP-!z!ao=Ju?A5&3{9T8=t(c*)AwK~Eq-s_V|oXQxNU`G4$$ z5`?qYbDSS2NCQfjzQnKXy3JNfio$mT zdR#kPTaR7Z|0O*pXlF!;g+x2|`_$#4t4#F#IN*?&gh7 zi+a6ol$9%tX_ogs<3=$DE%%UVUN7dyPmHefKbYz&r!`xo{*62)9dJdK81f_FblYGl zi=tVMW%i2>Vp1ta5hh8!4uIJVgfYtSD_yiq^zM=NV_EfOF+DZTC;bmQDcv#owUlPc z3d>yw1BNqm*!eU@jX;>iyk9uYkYbgu9xdy-2#jb@q+Pg{zfAOi$F?`ogy$G@{+C9= z{KBBo1{wuryDpV#^XHbWXz^5a+em6bFM-lqgeB&xtC}ac*IZt)D%W*RwbNbO(3IighOcxB-T9tPZw<_uO1gow z%!EtuGZH^`JVCO=werRicx3icVU%FoXzC9tqO4(43D!T{1gc+ht(X&%yw`dGYY08XGA4*Y{g zwDW@09IY|<5|NKyKk4b5sI|P4m5cdwyr1uH?S$r4nxV=fL}8~xWidL-7(?4VFg}-B zc+2sZZm{Mu(*`!Rl(c0cRov$ak4aDpJS@RW^xWIcC)eg42x8mmI5K^0=1J1)8ize3wSG8wzx)-b99`4 zHO@Ypl*64H?%joU3VFVY*rm4PY-N2_!*hKAA9-G}g)f!cI*WlTr~1o-bu>6>=*ZpD_Za;|vf^=&Umtj77KbjEe~V z*bSj)mI#lZiJpjAb_T~17-`n(pUiOPG~>9V_71g^XV0E}EO)B*+dsa;pV-uFt^|5CJCA=~#O)NRf>}T_cS82#b4Gf5}`z1^Ch(ryq zXmkVgY&JbU*2xas@XnIq)pX$agQu~S!rksheT6*r#w|GePFyFO-!k?w2bv&;8ONq( zTtP2Q!J|)u^OB?oat~XSGvPZuW_yRh(;U~jX$bBi2s;l%XHk=Eq`goc$jA!J#bIcp zXhRRu0G1nu19N@AJH*^RAQdz{J5T55hQ|?8p19-e&M?!yH&!_hOcQQ3QA`=i^-w^; z85^x2d$hRKB;9{U{zjIE_SSWl`a@!JgJYP%mJ^Ny73yS-Xx8w;tU*1%4?Cnc)%?uZ zSU<3bCt^!Xd>k!O+9Fd3r{^s$07Ai`2>Y5l>--X0#$=MQphnXp3x{-SzZ)>%yZ|pw zmic;ec{ZEPN97$Nyi><#(fg4hEmCmMkf|Xs^kz;~j&Yd#>a0?FhY;Bmc}7?Q4C9Lq z9!H|5hdBpZ6JxQ3tJO`?Flch&0Q~$r!O5Bs_IsFRdB?u*dcD~wcgF1{obe7q7&^Z*GH{t!GD|OY<+;Y%`(1qc z!ILwy=?L$DvgYG~KRGHR2I+S9AMR)%bamZ5=mkfgNsVpK$h2O4-$rMl0wOAep?e4f zH9U;T>{v_?ZpP;_cHu8pw%KjUJLeSw|gUF*>$Xd?S+iDe)nK^Ur2TE=HVNifY7cKb6Xw*nqjh5 zRf>0<%7+;q^GL&Dg!kw0jxB~FZ`!ia7RRu|u1}kq;R)P!yM43$wtsi@Zol7(p)8cy z_Bz=P&7|jY^%AIr>DS1IBJ9uv8+dU2f-_crdcL$0gZa4U{i&T)N1<#Le0a}FwnJ)rJ>R{2_wwlF(fe1QKD~ec z;nmaUpWYwsx3Dw9t;h=7tEaDCKYgl25G6pFJgEIAfeb4L#H|>)1r1z!5b3U3)E5EE z2=6<4XV3C97=>X_aTN!35XFxlD=34K3FL+g>BrfKkOwOTz}Os7yR6*^E8N8FR-5C#pJDJ3;& zAxcG!4a84}iajrXu(^-SvMjCM9`s**S#9RDDD{1-CFUm$%d(!tPrxsp!->A!Y&Nf7 zKaCQf|7=-uQ#edWa5Nk3!G%JBlL-ZA0IDN}gO;&erYD+0NTc19L;1*8@mAH`@yZFu zy}@~CZb`}x=pu?P6ml17rHd`-u3=Gr2H)oC(|Hs(^p=KQ!d)%Dg#{8!f_V@G!_jQ< z0UnflBUTDgvJb3nMlLdL0bc4fO(XDT_gLXK^KN+uPC6YbK@7=4f4X`)Pm&}CJ0Yj= z@Uca8adu)GgfF%160BvFVYt0qtKsfP7F_M4M{m<$Z_OQW`D(Ico?%qTy|6B6ybjHy z-m;V4`pVxrW=JMx2ir!|bgW*c_*?Ca+!zKuJEJy*gVKhMf!yX0t4pj}*^)<%GBY z#HSnWyYh;hHsj3xVwfah7&fqr0T;jl*}qn)R7e!GD%BdyE(0U}u7-pEfQ9tJB$&-s ztMzKV216u-Q}A079_UHVZr%sNw-HFd!XdSyG@WzH+mCpqZi<@i9)veaQXk$B?l4o` zjuFT&xx^*XtE1LV`>);5XZKErH@>BT&kq zga;`eDg0*6VDnhFgDwD+r%rPgg%+%3i|ls76KKY+sAbs&>4Sn&_^o`guo zx67p_U2M6DpJ5{fWPTBbkRS=phbW>=`wn)!wob>;{(yJ6ez;IxzN)l)gM|;cOb@+* z#VGYfcNY!2&*cnV1?&Kf=xAIoT%ZIAQOMy^5fk0jY79XsUhoU?Q&Fc0Sz|*9bOGtH zcfsa@DU#{<8Y|O?UJey$dcG{L!x0CWeen9znF^2WXw(o4=xSA}46wxRC_kdS08h#f z1-NB*n{i9E4C4>Nk3;RnYJp#a_*nn!dm3;ePSN3b^KLSI$6)cBYw{!tfY){09-XEG zcF%&a)v|5X9ZfVO9#b?2N}@c%Gs+`3(jz+FDms;zvx-IW(Fa?N2DAry$o)p^2}2e- z&YRkxmA))a(u4Aj6;soB5`}|rT*vKpdQ{$Wu^0FT9(FxkO{Aje2oD!J%#0qKCXB1b znyNkOj^AqvkFFD+mem5lhL6+_(pzH23DT3w4(WlMvXecpc$Zu*;hjC|c`m}0uIuzC zUlFdrX98Mjr#s<5cF%F{WM@35@uXB9#fKH}n%pAkI028D2H>$c3bWuk(`2;9rsq6> zwV7j@-}ZD!=WZJ6nNF@J>uJ@4H~kYx0sAQ>Dc$U?@3=l#|1@scZidm1cbMoKHCdYR8}-b zBtvdp6-FvVL{N%O`Q15xoeop!T>&uJ`-qQUc*TFN?TTf>uf>=%4Tftp`v4BpOYH4Y zcE)S!+snEIyqxejr698?&zR)NMrYG^Hbr<^Q30b&b~Gi(zY}ueH|4lMd}=B}6Rc{oIQ#nUD^;2l5eIehi-1Ft{9JVR=skC5q(>@)_^ zI7QhR(?2S}3;JQ?BANq5&HZ33RI5qc!fLher@?H&cvD6PyV@M0>lA#PxG&)4Dvq6j z+w9audFxS-it;XMiYL*E1|h)myYP(ej8TS!OD8H>gM_8Vch(eJnf}wjvruf=6L_G< z8Bxs1BVwWWM0lvP7Qf>%r`yEq;p%J!Vapp59{r}WE1S@R;8c2K_e1F!yMlWUWqGCup>N)H+3q4BZ2bHM`r89M|efFnQPC3+w34! zF!2goumoo}KR3%nr&8Lb2weZLU9R_#d!8zkMs%6-AULw)0(Kl`;&{Xoe$xd!K5eA0 z79>5o%_7gssl1<`dJ=5*r|Vf1(`$Y%0i9MfK~HwPEIj$0+E#eV72tR%Hk@3l6`==w zYRuKGh9%<>>nV3Vhtfm5SqD7x+N?{L3+3e;+C2Lcc^(U!6T%A#kL*erJP{woB*Od4 zBvjdkEE;eU9!~wATx&InIGd)qZd(nXdHRfFooEcH@)&W-I|o#GZUHaP1k2f<9-bF* z2i_9!5{1V!!NAj&ok2ugf6=2E->LM#O+LslM7091lI?jVn)M_MQ_Lkz2yf7@8SR zWj6pX*n9SI%(jqQN5mrZbQDS8b&JW(Jc-`%GoI^$UVn*zC2kNNxPjhhz*Bq*&p1a- z7SzacxAReUMt{Hubm}y5RCk*mdlj}7#wj`rA1C7%fX7U|eiK8#`urE+)q5w3iT6Aa z3&Ks8Pil>)>kZ+td5%pF;FO)Fc|?bWq<*)p&!p}&+GKl3<4>ix&Gm2+on@o55J#AZ zpQ1R;)i8R`X{94c-Zqs35B;C zTgjqLR&SNw+7BJyqUS zz&lpJ%abdd{yBC$$9VzeDLm~aJg!zA>qMC8^<;5qLU|q$4e+x_MD%In#(eJ?wgpz;hq8JN26|utSo5_l8@%Naq)OXZjLf z6~^(hogkv3h4%GTP_)xZP|;3AJ6MhFwn9u3Oo25;gXW~nI5{ZlG%7kHjQdC`E~Dm% zrZcFZl?si42)0d&Z>rDt+*=l8`3KzR-aAhEn_uCl?>W!&oaa2}AcYX;o;Ni`xYgJ{ zVw_E}v(X_u3!oVQ0VH;ND|$SFhQUn>={4w$x8}n1O$7?#XXshwEExGQl_8~a{qvpB z<3P+nCE=dcga@OJwDL$N&^rJ;vYS=WIXEn?+u*kz&ilF!v!y(7(FiK z;jUQpY%{4%R>dJASy>T**zK(;8121gOHI&h6E?kI!e=F@<*~qy1zFXQ%^Q~`pi29C zDNpb;YKAHucn4co=(PQnc)MH5v&q@gg9c{lj|X~~Ej?o*r^kq_#*WQJu|}V^>G7gr z6Ly%}$5j`Lj%|#n??+=*pjOeIR)&Blgo1b2A&&h&ymNpzST#Crl4E9Tf(&+_*aa-y zc5RVeaAer&e$pN@fmid)Gd1FCn?AB9Kptvvm6$f6g3qT4z^~TWt=HL!^b9&Gk?eDW znerTX2i)Ryj^@0^z5&%hh~D0?X$i+(6&E%myS+Kj`e!3Ogof&5a!RdF3A=ghS8ZO{ zgV*#`RNIB7swjN7Lp`Kt;5F9cQlo?7QR2r zSS)m=cBSSuE11xWL1#3(2ajNZLTn6jJayffu?@kis?wUQMGu!#$EZ+<=qT@Ci$Zc( z8b_kBI-d>C4)b^wyFD3cW&`3gHGhtsf+r`&8ab^u_DZb9T(@mz*hF`t$IYad!DBIV zo(a^01nOR*JzP!vm#IS?cn5?RXc?X8sPozIp!SIY2fDw)JRVJXGUhg!6ll>BRHHzR zt-9?`V1}BE`dh&hxrkdZI_YR(DnCNf0MnO7m0Y>;A6+hXJ5rrX3`_eLj7TF zuv!Nz@>B<^&O6-6Z63f5V@0pBvM*le{!4j~>{P~L z=vjlNOn?+DC`y+aZOK_^KSg@r!^~vIUnqL^q!;nI8vqDAvMgi36TM0zJq(5npP|aC z^AA6Lb$NSp;ldLSaqPe0g$7e~+WDv{?=N%lz)%XR;l)}g;8o0I7AL{8<)#<&{!_>q zcJF}>YM=vN2`1&48IQ}*OK43`^a26W)4?Ejuoifoed*t}H#ax4XE=__e|apYpR*IH z9B2Zb+lE(+Nrf6jt+hCyVRBP!WFnhv#)fQR(l#@gc(tK$3Q!T_`Bkwdr^wZ=nFY&4x(1$G7m?rUUQ4!n|`Y z`pLj+a!VBLLn+!v(_WDtivt6u!=f5+)^#92Uoq{+7&!l;_XF@?hsx?=n5j%@jfq=F zM}|(Dse#m7A~A=CTZcptt-&tFC3v#By0yMQwU;e=uxoC9OIDj-M|b6Zzh`m#w`~XB zzINCd!*jcZqS^@yUaU2>n(l{Pzq&(@(!YI_QtJMRL?#m->P;H|#qu(_t%y$Sv|BP- zmr0DFQ(D9EhZCm9^awW(eZ(heYCO~)b7MX*;|`g2WR$Y36+-W-ZpHhom-C{l=?^ie zG1KEOb43<6f7^E4&3(trQx~%f1BIgCbOrQi?>(W8wEg|!#yXMmR-CY)gA>&0z12f& z0O0La+kX1#D`hS>I*Z4n-BB$PfV;o1ufHG7ru+JNlg38#X-4AN-d1|B)(PEkE2dU} z@x=60HH&z`+itr#7%U1^j;^jRFJv2v#jc?Ncr#}>?&dy&<{1q$3lp88>S@|~H`PU_ z%`i!Ef+>dOG%p<()H2vN!me4`w);FTDNiPNNO`lMsb3885>?9{_v{ZlOU3%*FM;>`(i4dWGvNxObMT-5d;)djpo7>x4 z&bYZBybBu|X6E`r)fzUNG9#dCG&Wd;=;{MXIYO^-bTtu;(!JPMLCmgT&n}aev*M~_ zdYg`?M%bndJagukeUJhG`HoIM;aytlQ{Q;>7N6AtDHG$It`P`&i=KM>!FzUgc9uf* zgX6G^L?TqXlt*S7wzjut9C-Upc?Mo*Q1HaA(EyO^-V%UaNbSKuz}`KbYZ3(>(o=?v zOD5s*!9-$uY?>@3YpNkucCcER;l~5J!Tg{2CVS)YIRkDzozAz^dc(Ipa?ks3gKvop zS>t$X(o+%94$pFi&8^Mt1_$20FI9Eyn2totjn~ zXlYOE(m0H%XtcYV2q5N0d4gvxqcdol`sa95&4))i2Z1hLDk8$X#`wbfwq_2}{>WR~ zk_R9&YaWGr+e%lSz4@t^9(?fqC*Eel173Qv-K|lxtfs~fydNES{{`=~%U}NZg>e(>71fWMsfH`DF)P_jx23^`OUVKD~ld{;Qf0ZeE&hO*MisU1D?l)CnR_c zTU!l|x4GXQp|iy9g@>yXUr`RU$}X=Ar_g+6?5j*>ZEZ|}b_y>MKZC%GOl3)l)r(B* zO0-Ma7mIH6QL`>)J39hKZvveUMbzHJR9ex5s*N&7t3tt*OD`?GwC$nNhd%!J<2N6= z^2VL_?|*8iPzWif$&|O+D|W^HS8Dv4^90YyOz)?=8`|Fd_=Oi=tWHJOHt;w)QHiXo z3g@p9`N$ON^>H+mm8{l!t$Y?W`qR3&FEKw=xdgYV&iUMipy^aEaw(Xrr>EzGo*r6v z5Wv$}n(#5;z4X#c@4ffZhu#FjM-`y;pQ_eHFj|${pE*dU@)pM;-x4(akqs77jn_U1|QPnFBLM$7hEK!aODR z28I%kubsT|4j;9+AzKDr1c&0Vo*oz0gG&?B!CvHTaEU6>UfZR>dlTh_!{MT-v5si2 zQt)tTCSyLOughM89q?wh8az&h<=^ax)84UTGA5;BU&lygXz7unsew30cJXvzywN{pzS7iL!KLWm zz+>P9UQ4L-Qm%X7Fz_zBX`Z<>lVdr^TU|exo^6kyJlAVXc_?qjfwzwxbLcxeqPBGV zJ@?#x)lMO|yY^X+8RtIu;Dh&gdU`(lYHe&Ir(72~m!+a`srU`1$9v&|cUt9bE_&qZ z$_Ztm6RaR$DIIuWoRfD$Rxi3}x6;&FpU{~?IxB2j&JIbb+fP3K-17=+Yu|qR)n`pTG7H?dzw8#Kc8Y?8XaRGS z=j-)m4 zR!91mF2(1(^yN1{emU6JK|gZ0`?IyF5b#=B)`x(nwFITeu$h^z3!TN-e}Q-C^VeN< z)g{*~oqHHNEDMa38Q@_(6_8uoEuhJpR%i#N4gU3{NLD$Ga*9dn%1c*nWDtGqAsDQL zSNdDYRWc}oW;~tGr$?vefBEGdZ}q$2)6r_M2mR#STw)GOB@zQurK0!p8!uK3#46On z(cQh)iB?hGGRsCR;<22UO|qa@-q29)L<;|6M<4p=4cAY26n>XJMXWc%d;Zv;%KK?9%J$&fVjFJ?VkK zVBp0Uo@3wETizw|W%c>-x!yRb=r~rm6L^=l1xC7YYKkkg*D}#5ceA!}Iq7RiE^G_l zOat^H%p@Zxim%ND!Q+_%5}deR-8-~ROF$1fMASZFQ0z2tqX zc5vN3g|@XLcO&pZBjnmJ(;lKO+E?i%bk8p*v0>H{wzD%c7Cgsa`B!*PBfO&X4_Auw zqFp@8u|y_{?~&+h3D$Ogd(ufKJzrfp_2^?CzpNhAjic+!%gd8}H-&F3{ir^_zC1n} z@RqLJxbw@2tcPHIapZoS31Qg_`A*x`w6u7sDq9dAW> zi8+KfKAxVQ1|G^A>sHfHF#&UU7}fAuz>zxLXjcNjGVkDws2rgD?nRdyK<_8SEE)E0jE8s%w; zXFiusPxj6ZJaXeo?eAHa%8n|A)4_1jxB1ythRwO@_3`EP^|`TV)33jN_XR7tT2&xV zUD(a_`vxc6vQ#Qji>kS%s z<*$5N<^$eu+uKCwj=!=`kbc(d*WLs?6-^&UJf4XXtxcp6Nq&8N^0OWg6j^O(S(|Ij z)j!Ze03ha6H~C zo5i7->s^rb_7am1qz1T0rYGiFJGfdoJ9a_2(cF!t6Xs~llE2_}3tmrClaAM-I$?Y=H8(NMqE678)$6n7!wz^gu8pE_Za1Hb_gXPrG~T-~ z47=naHc1RYAug4EcF8-&l7YKW8fxcAOu%WYY((&4W8}XBm8(OlxPJ!a!A@1v#g4Q2 zAKSYgJnuxoJKMl>*RjJy1(n^gj!bt3_az=5jxR7@VGHd(3LfTfY#VG~O+ouCYq0LB zXQ#exoQMt$S*huT_(FDg7|KY9ZALM;C_2!NAi@G}m#e8z+JdubT0^>^r!~Q3qHhX# z=^;0}9m+m+E!gl}PI7F2JMo;8PqpBEP=T>EgcZ41j8RUbXm@OQxMR3=L1$zyEG*Wc z&BB!*trtI|N(iBo^nyjdY^+B?PIdd-T)cI77~x??YaldcotO_hX1dRIN*lEe5O~nD z;Q6BcomBXyhxF&l-m8Ee@U|Rh^S|uqGfvhPDjOck(im5VxhteZN*rQ~!wbE5Auyp) zORP}(Zg082hL$<>s{&qG)6TPnZ`1J((MwGLk2w#au_)kH%ML9XXi41|UJ7tBw>3`} z+ro3%b6zYu-A6N>bd~}q7!Us@LwF9n|CHW&n)C!ur-HJ*tGm6Vm-oQLty;fV@G&A-Fcy=$w7JZreBku zlql%|FVzpc^bqi#aV3@3Y)E=s70$NU|CZi4=N*5@QD*>8A~5jeU5K69LAxrLyKF~4 zQrz?ffkLqdW>2EL@^YkCR@U9mRXeu?7&1MM-7NL*u_D0PzE{h%L=69a;rhSkDJlqUBvuQS_{b7xb zlSvnd7fDH@SIXX1agkKTJcB49VDt^4WO>h+{20yA^*6@bO%p2hJN zFZiZZYGjsM(VcB7*~~=8=(e)tUGdi9l9)!iK*uy}nmHBa#m91;ouh*1VohNyQc~u? z`+uVb;^cGA1|DY9({Kj851=N1qTNMSIL2axfU*)k1nIXr`1-mXNL|BtcW*2%@yTEE5ey3hc0hp@SyTr{e7YA~F z#dy33rkd`+PQzv|B^+tlEvu9uKw$iznxI-8yhbb_a0PTc{m`OjQp>$k#*nrC>- zDune8bY+;|t~brN{Wd;?GP>VP-JqEJ73Dm3uGXd(~B8P-=R_K6N*Re)g8tsj=x>+j% zUYF+#M|cN@XV8_w&1l2Y3HU6%Fl_oGhK(&eKVh4h@P5=BC~R9>Gh2os=@EmR+muyv z*{7589sZ|)os1NU;0Ybd>mE}AyK^+v?(_Q<^E+wHKiE6B*YxW!j@LR+Hx(2WbS^3) zBC5NfsIK}4f^LcqR8Vvvl0gf8k%L8RW@yne(%~latDregZHn_ajj!m;2^+N}`dw7e z89GqW>;3s|)ot44_tD&Dwu`-bp3n0|c)TgM6bfl)jxq)Cnm zFuM2Sj~{(B);FAMN zI4G+LJjYuxo12R{CR~x*EX^udoV~)m$omiQA`2)U#tgfuJ%&Oj)k9#1E*!-Km`W52 z6t6!dmy(~LCTs@nkHAxJ4`(7(E=CMIXMqM^K>nP8_Xtnb8ftcbl&p?{=MSgbF@=l| zT;Y~K{1py@35SY$o$H@eodHE7}(35f=)BCqz zH(3gdZarcyc@4Z!i0dFC1wXska_#scZ@cXN8@x{!<^_)&*FQE>0Oe*1-m#lOxAMmk%qjMI_0^ID*pu|DqjJ1x2c2=s1Vj8pQuN0D@ z&=r@S@3Q+(7kY;b&UqQZs>xSgOAi0Pm$#WJjrFOuJo22dS*kL!_KjrVs~US9nA}6w19y%dQ5!` z=dZlPt+M^ka`DfLH0Q`{%3&c;aCRJ;(psH#v#J_04x(;KA9M0Ah&)5?eL8cH+w5KGuKAsyisk3X#=}R^!f|Y_8PX2C z4?ceFG2OhWZwpGg=SIX%a}`rV9^N7Upn1Exk9CqTMnw%eCr~iQp0jpH@L(4~@ze=l z9FLhy$K`MDDt9~jB%0SbhNl&3&O&BhO^62vT?nNpOzG2m=b6>to==kt@eYx)rQ2Kf zA%M! zV6^WzN`M`r@H}JTX%6V_GVs`r?!x=;@Xot<+}T+~_oR4)dLpP3&#+Sok%6b;+9AL+ zF+fu}%nw#SM!Aw0nu=Uhk4iE_4>69Zj!^lq`pshJz>Dl8HPb&)EXvbtkskB4TzHeI z-k{o9d>GZ^&Rlz6xfvqlBQ>T)%MLmP1#(Zig6C1?gEu8-1!>e|K8F;pFH7A_+WC>c z=@B~W#aVPObVu+KB&4lGv7$xy;k3-=H7>k~RPWbuB82KatOOaNx`)5TbaSD1+?b@w_^z3_R!6XhpucWN@p7N(#TJ!c*q_#QCyFuHG)~no{Y)TFyP7wVoOksg(TRwj zo?iG#o)%Q&3Y46eZ{(?`e)5%L-4xjBtFdh9?!5GXMB}9 zp`pjx6Vslcjlhycvz0Wo(@7M%g?76-R+zwwFElTA)fs2GsyD%zcXhAI5dB4`8La<9}%A6K^<%nt4#m%5NcR&<_2mJk3J8 zz_VDbRw{!*kqzDHu>)=p9}Oo(G1;l}7w#0ul;q2PJ3Z(N!)xKWCS>oJ0codp0&K()WfXCUhDdP^s{mIV-AK-!CK!3}H@)!`7d9oKtJg<%qgg5$E?^*Z*hNlig8NA|DyS$Be5!=NLT0n& zC=*u!N%)TDeNops1%4x0u_W-=9Lz;RJKtu^PM*{lmNTb@<~^SaZ}M2-(q6Gh{FRL2 zQ+T3ynefs%_J!FY6pNvSu=5f}&?!X2v#jMukW=B9nY~CxbCFwcLDTRS!(yz{Tj6`_ajaqe+`CG13FWGCte4cNt^UP_ze zDUYd5q1XSlSIztt=q($GEDt5nGd)`&egn(X8#tiE5ZK#PD9SsXl|nIDEF7{aLqWng z?c1slqicM~9&z4PF1(2ky>xzDt+E;2iYH@n%WgugRINkMF2zHtH-ZdLrl(5iOppwJ z95RKvUq<@8N`~<=OJdEE1!BY6fl_ACC?{ws*(tOW#0b@V8+YaK*EDsuD4s^Y%=r8{ z7v7}sPP_D{+yHjtiY>k4gi8>GH);@sWdwLEwmXvY-`{Y>H}sbKCx;;}X20$O5FeD) zvD=k|GSfEE;Q{osY-%8##?5&}Azrbmp#li3DcUIl;QuyY^8lGC7%l3O>-oBYu8=NxziI~&g=nl|Z7 zn>akXQt0B{>rTO9b2b~DLl4hy{;)Yezxd1#n|dtF|M15jn+uWo`GpOJ&3*F*8-iIg z8iQV=0K9G~X7TMX*EQ_6M(j{J|61+<@oCuUa1UMGfq+82FktInYGI zim$}1B7r%z(cI&WiST-9^3e#lutApR`O^cpYIE{K@2a0#<0?HL`9>lc$*}dD)JQB| zDv??tSYw#x+FEsoeP8qQ^B{wkUXJC(KmPdT*M<4{ojkEYvp-A`@s)r_evQ3SHJjtk zDx!1g?cz9J8ULygxax+bdIflMg4a9U4f7_C^sY&d$7J~{1#b3|R?|)pY-2SWpM9p? z*Nj8`Q|rzTcThaI9c!E@Zu0WWw_8@kJJg&xN~a%Y(u4lvl2s}tON~*C3v`^Je0UqJ z%a1jz3X>^zKA(1^2mQH$3vU|L%ZbAI!eg^hD| zJ}vk8mp}6O^2hgQX#pd-9VNwr`j*&9noZKYjN0YkKu$&%4;#w`iGlQrDdwWZj zE8W!QG||E}>A@Iy`AW6J7E+7goZ3D-k6~*0)mI;QA2vTi2Ye^XYQev!|Ja& z%4?N`#<64$zwYpSh@*M_T)~aer(0xsp}*A|573WxBAHpS?JgOX{_gUu8L5Aq5feQJ z)&~wq{lGtFR-fryHxdaYt!kSRqeP+FsaA{Qfr-eM-U}{;(*u)NSqcJA>`=U3)s4}o zlG85dkJ#g2YUK;m=h^K>tja(n%ZU;aW=tU z&2QH$)QGJV)rHqH@%TGFzh4l2Jor)Qf_r-|ys6<`!+ic0>{{u3A(3e04-O7SS;135 znZ~i8TF1hm9MiBajvAUXzxm+iLv-L7#q+Q~D#H}bdM><8qLU`P9tR!{3LXB z(D4*IKE0^sW^b}up^$}`z$7wrrm&VACh&q3NC$uiLKdFrJE}%qc++_-XI%5m9%qrC z6KT7huWfJFxr)=A6LZ~QN4$b;TeuXcf5OOb{62?C@T%qYnaJ2MMiQn*D#xVOL9^0Q-U*ddw~F} zh5`W=aTJpo7v8k0clpfBHwIpsSUN0talv~;J(JF)j~5<%ee(raX=5z#kblr^pm%0( zy&2pt)ys#M-dpphQD=-LGPk!!Soa120wDt5t*-+w=ufwkpSoijr%jQaIx|C(pM55} zY71{4G`ca$Z`GtX3p`~0!DpNiaG={{pd$js<9=nH%xj074n7+3s=ctBN3&$d>o z6@qc!dyo@5-yHCyZf_9Uapa+QSj~0qOsrVZkPB~WIs44}12Z$h8NUgm*L3QYD59Pf zJRA{?oLUsCg$)WI7B?0n8=(;8eppEMG;8WGUM5;f4PY|SZf}QMMCEV3<9p{l9}bGt zZ69@WV!Oa9=$?9t6R)i@i*sDFIkoDYf$F^-KpXbZm921|+r3iUoMKWZ(=0+M8H1;y z5j9FCDW&D|fieePqts1nLJMsU@uXF#bA6|??#*BT&BIZFp2!K`p5v^nzkvx&7os8H zUEyX}{)bcV*0(Wb*f~6VPQ6My8%3FrWo^Zd#$!=WB(st&WkMNEVWCXSR7;d7mQE2@ z057f`C5iSyJ(pf1RCotRg{RCVF98`&;K^q0uL3W)odDj>Ip4X{iKkb+%WeXQTa#b z0x4_m91dtlsH?BC(J!&(9-UkE#OX7k3y%wh@S1OpEN0N0bz(P%=w*L3ID^GphaRp` zE|Gy9@J_fJXr>R;FS~!{ah#St&=D?#l_QG-jz$ty^Tqq>zyluWfJX|An&?rM#%JKA z&^ybDSq#W24v5d+Q<#8d1mK*Jz`9=7gKrylnCD(`B@|(7>dplxPPnJu^nv=Bm*2e~ zFz^&#hgnq-PnGDlOvQHN&?$4fUQ-hZ0=qA^4`?H@`xH-W)S9>^><*4Q~IxDq-S3~QuB;~60X%P6!ST5UUl&rI6CK^TwmRv39Rx8JcS9!8*{#JF%ya?O8oR3!8>uW zOKP&0;!}bOsRwFo!?Z z@6vg$zSmKgms$;&<@m6SN2+8?@>A$h2?IP+3yrFQ4|tq>Px7+*_}fpeKgGExb_}aC zCtl~X*6&W-}s|8SCDlCbvxBj>Y7k zEbS%C{B}zGh!d3(TQ%^WT?eGhrj!mNI!8*Axi8U(j=avd#%coZ!{6?@;n7pw3eM>~ z&dct9o4kKOf%@9^xJvs1Bf&|pWI5G9H5|statar78h7c~gJyiFIDr^%oI5JX48A!h z#d~sn?y08<@Hq3HTwRwPb=W0|&O=(RaQOWR$7;U&;a8vBc*DJ?y1F;rv3L2sf)~JY z`qTNM#fTP78>7!M6&s8V}Og%(-`@dpht?I?lYO)&u*%dvbrDYaw55oRH#~ z81K`czkeQbdZK#2-E#fSk6!3Do&3e#xrH`Tg>l^03xXh`%j$wCzGx??qXs7FjAQIH zh6x%)w34!dNI)dwONzco2_nS@sT3k2U7;;%scpfMnqHJ8TU?stp%j8eTAPqn*aunK zEof_(KKT1i665{Syv~>HOp>lX?2rF&2OgQiEOLU_TAK zbZS&=`O@~IJ}Y{&7xvn#_E<`m;o&QJitekeg|8NQ?BMLDJa#w9-kYB@MIZ)}WWJ_m zu^;h7!ugr$HF}y9dBd1$ZIi8JHeZp!-E&h()nK7N_U_y|ZdkFy3cLH4PXq6?cufWG zexDm1?C>0Cd)n*RVfsy(PK)f^xh-mSa!Dq2=#ymtzf{SztJrGN)J1+Pm_L_NpZ?vjX;8}yW! zEzHe*nPUf)#YqC)+GO_YuNkLj@s-)^+3ZJ*_jsfTv;uD-U(U%R38=2V!blALB~^`( z5FH+pQPkFR7vW@LX=8yi}4MhF2yf+EG|%IdhV% zWn%U$lh@+P#L6OD2IR*C9{<6HjPO|HFeS=kG!H!Fx557?Ptll#9d<^s10FxZPT*bH zzPHzKEZ568+itX+3}xuEjPP%s%W)6_TRKcjMaSb?lO;Y7ye20~Bq{t(_N8Kl^cbTE z7JhDs&t!10NkJ|Xq0P)@k_TXO?2$D+F$=tcN>=tRJR|J5q*E!$SiZUPpwHCINIcqi z%5$9UReOXzN{>1r-d!6@t`TPeUU-DHQUQt!K?M>U^cx2$O2px0<=GvmDGr0Q_WvqPw+ zHl3x%LV7YijkBDdIX|<;@=O$0lsz9jR0z+bpedE>0wI$e1Pry#-wREShlCh*D+3fP0nynjd zG#Y)u3wv#j)jM|Zfx`l?Mv_m&ngCpp?2?Yzd3FrQZ=IK&_KP{<;yK0c-3@^^MYx+1 zuer&h3W;`kiHb9-I6tHEOxQJqCzmuvcWm3I5%X-@4u`{iC$GKAvo`5%Fjg1o%;lDf zYcq?Gt1Z^@MTlXXj<7|v<3y)10v_;qZ1SZBJdDN)=ySRCd~FGKjPQhBp+cSsHC}SX zq);bcIqK4EJ80XE<5=ND%&Yd=rFREPLOVQsB2jB;i6B?QOBN;2Z7t-sig~sbE9XG> zCG7aClm?H;6pyADRi5niP%bOoNk=oQT;{&86X8A272%~M-6UV>>eV!VFkxA)W4MXv z;LYA(y}g3ruAP^pR;O4WBe0e8MLCv!fqjhfIgADIW#qRm@P^eC4|bcI!tP1@=6kD@ zh^(X#*-_xZ?u@WoPBnZcw`R(M+q|^xGi_6M2ApVEcM_zWH+vf+wYRy>j~k7tIwgaY z>uk@#hWfG>6*qVa(cCI=QQ*Pufn+jCh4;XebfHO8fW0JVKcTw<16Wd(CcEcb>~Ne6 z(z|?`$*!m zm*f!=X^An&U0OkNi>OYH+#uc+q(m6~9lKV#`Q4Gvwsp&-!xFYE3x<8r^RkxX3-9(5 zySvr$PG{%Gq%G9zt7EVlS>>IeqZ`JG6*;|dgN7!6SsRV;AeR|l&DF$NlA?<4X2oR| z&QxFruO_tyJEER=P0|&R4d|2#u~^u#Ov{aWJ?i7zO(*uM^Ygp4k&#Z;&>}u^M^3T; zo**0JqqxgqMnJTp$!wCUvJ-UWn$+aVrh!+f6h0~xO8ZTAP2IH`WQ{@r$7u!)D{MLa zmTo%X*d1QIcg%d{w#ygGZ17hpAFcw3F7?KH(k&x<0U9Rc@Rl2yP4&?E`$^fHV}t~g z<88oJnk|)JN1h2hTqf*V)Z|LK*=UfZFCKN7;4&TEunj{G8m?so<8gQJq<2Qt@x12U z%RdZ_zYV<#^hS0v8=bPZDLzt7?JxlcwG0Cv?we?Cjsu=n1YNdLsxW<+K!30UUUh#t z-O`<0guu4uicZW*L1{g!R} z1Gr8j4n)gI40U(~-!XE{^xm7%8h(>q-EXXvO4T1nM%LMq9eC2j#8YA)WJqN?Gm_2V zEld2hif9gAXs@9OjbF?o0-6GHsSG(7YNm8N9gPpWG&Hr{Rb<^g=+zL z{2u)Qd;c=*pw(c<6?V^XYfKfEFZK3H$kT&*I1D&a7CWfLU7Tnnu1A7KBoZI&xc2Jn zJ?Hs9;O%|ezgZMun6UeqyV~2Gcf15-%WmY)I4tW3MS)6pD~A&9{=}}4u}FKG?uuWt z$yIDK5bh6$bsK-F`E*vZxbaxO6Tw1m?9Edh*Iny*&;Mw5rhu268~>FaH^5=sxnPQB z%_aB;2J_%@Ft0^ITwu>>3~`8&b=cjx^o&4_LZwxFD4Fv}>5XECV!x zZa5Z>hl0V7k?8B|JK1rKcO3qIs?qPfu=i8+$q%!Ql;vkd4+B@jAlRf={~hQQzIhe- z*x9|he>tVn6L>Y)J%#SLHQ0&pu4rAoet*yzFl{`grfH_G>v05V1_Hs5771~SQ?a{| zcx>p7YrN?9?{@X&)bdY*Prk7t%4_jy3J?2&KlOVs>fu5idddM&$aaZe!hhsw>p7Z?I68-KI z7e+5W{^V3{yso?kJt!$&UkEyGb(p*w_!@}|YpF}}cd@WP17Hl>r^S`TYbwUH9L|T(8$3 z@I4eU3`Xj@>jXoIsAE|1c*1@t)ML1AY{)Cy|M{4VQ-k|y{ASnd8T=;J%2_alPMK&B zd_u4e?;T#OGn$268d~5Yt^6&!`geSSof2NZ1~k*JIl3MU_yd}uYXQwx;ZBc4EIrf{ zcj=TR68*aG;Xo)9i6;b~m%03%U32Q?@Im_Y=-$BVQ|Ag$Y2s7DYZ~Wy!LE*OzL~E; zj(Atuy{s}zIB`|%_@LNvQ@R775}sz;mZ|mnke^St@tTeeAx+aAJ=oI|icsxQJVacI zhj~-sUnm-j z4LovR4_w^@E|euor@XrFFYNk`@B0R{pVFxd>F>5*ebn-b20C?Zk$d|W_RcKC zbuxl{Ia%pyOQ4UfoGAPtQon2p71M5J^6fo(cK-d9rKN%b2hkG zGj>;Vld~gUiWGC<{QxcU1)tr}*t(<+Bed}lLGqD1EDP4O(v2IHZTHmsg{%JK@W zmqg$tEvlV=p(o$hAT=K(%N@3d+S@3d&_xnfT|*K4kf5;~pDl_>PXC2GD= zq-_j_Xs_y+X5BQ}rIH1{{-i%S^Z%ab?85|(j>ffibvV2LcvnJi|MavQUsZwgazUq7 zVOVme3Z6XhO32Iw2QHy?HOB&E9zk<ozaw`$6qP*lk=#&Xc&gedYeWo1VmRDwWNYclj*i&1I*mb3*3Tupvrv%5{g%3i)w2 zW5*Ev_N|>MDKBunpw@xjDFn;Ff+MQqf~`kk93^mbc4Pb|Gu);b~0F&7oOnXf}{6oqOSI|@B7?x)d*>w~Ie_w2!-YGYU&$N`QQ%QluV zFPjSs#~ypo;fEe}$bTgR^7GdgE=h!4f0Hn!3A{tc6IZ2KMJ7rl&cw4~R_Z{=spjPhaR?{of-5e7$u`8Azxu=aXKaQ+ec0-It?#gJA zM)o>ds}eS$XPRxhD%`r9)*M2p*|G%RB#q+%^tZszpv`DXhU?BrC$%wN^(=B#cLserB%^h?s;*06GrQ6T|7CKXRYbHM=;_r4e;s z60`Vb0C?EHo8OU#9=jWbmKZj2em3@U;cfJ8`5JgaPfc&G+&ZxL*4%PJPO&SZ=Fiyu z<}{C)a*yb^f*rz}ir1ttuj$L7=Y|w~p5?h<>@@ty_gt64Jk3VYWRfHnNiWHIROmLZ z9@4W-ySi4vxNzyzZKqqWceyxqX_T_rMYYfPeir`C6~vK;QIcDpmG-4px*!ch%~nBk zQ1QN+!&AHTuGu>7>o;G7-kco2=H>Y}-!NY-1jiRAIp*wU1UaZSwGy7PE8k@RV-AGJ zwDd9us=OeyG|y%FvlLo!)Q^egaTsDbQQ=^{htMQ)+C3^gDhB0PP+Z+~9K#ui3#~Us zsqllI6o40;_%9vYDs;XT#PZFilM62KgU*M;^^IF^9U8SDhbQFVC-e?{@aUW#zY4p8 z>@NC^?trE4ewqB{?4(YZ?pyV1I)y?5y;aH{b6B5B4@|-GC^i2COGhH=sm96H2yUB`NnaBAzj5vkx?SIL$9^&aok%b8 z%5ACeZryNd!T76rsgMs+Da;Oh`NYG8_IRnBM};70ewFVya^jYg+!gHR!lO49uy2KN zUd>}`dq{B}5FW!ArEwWWZX9D>DB*Z#C5f$ZZ+)H0fESiiNEtTQUDJk{_)RKy0OlFc zIK_|CNh-;J2HJ`Lvbj4J^Q6qvX-dJ4_yW6$uWM9z1kGM27z;f02oK~`wBv({zWVZs zj}<)uIGYjChyGo5`Cajz41~CZ9q_Q4c+Eg(QK2^*T$P(aKzQ^mSD;w|C0-oqVT|s4 zVDh%#TOX3}0EWIKW|}r9u+<&T+$(f8M=rZghnM@63xOxnQ}o_^2zroH>=*_iyMi5uU+PXy3gpag%C;5YZ3(<- z7Kq2xTBpcUc>#O;T#LdW4A}87mhEB*z9mT_CO@$o(!&Jazy=nEDTBA5(A|`QVvmaUkB_8kwoiQuQ;VH|KHoTOnlKV@t zoLaz>TUdgMYJou?wVw@P0qLAtwM+H7!Su+A$(?60`TIw=UXD8S*rQiHy-{wJYfZ@q ziXCAyBkkC#FIM*i-YW1Q$7`1L7{-bAj{E%EhhI@!0L7^k)Cy>-M)-BHSFlq>-n%>W zHOqRlOraM?S&Yjh<@tU#O0g^xP$52lg=oG>;0*mZ%QD=iL_=s1F4b(v9`=M|Z&0nH zFagJ^uE`suM!QWN@6-*JX)d}^B9DN*Kd8y#C%)O{Vu!T=0G(>&wJe03p^bz!knFuc-0XeVLu4fTDB{+s5=O|6Y1e1j=+Ae_f zL-8%cjcRqMbjQN7;5vaL2)Pu$$wF~$v)Ws;+g(+%6HGCroE>4@URr@4dj|hmg&#IW zp<`s-@VxSAn1U?ps}_V3p02g+-himtLU@^O|w<1E4DUA3{2ctbN7XR&W3A2*N?`i zu7>DpH5a*2-EAT~)q+SY37P}^N;Me!u!~k#zd~ie%RgKZbo;*h;fL?`O?S5B{R`Eg z6;Qv!u25gW4)~~7*hy|gS zjh<>sujPe0jQF5BvkkxszD3~!mMO8b+bu1YJNQhj3L|&kR0W{I=SPw#KKO?;t<{)3 zktEaVXp0R`w-WrEpVF^S$>F&1P%i^dT4T3}?tm95c#u=@P~CSwj8}K}eS+{Lnu4V0 zKmU>LSi(+?6I63W6$;a=(`j_HN~xulIt|&l;$byqcIVT>%%Ws6L3~lhDW*LZTFWFo ze@M<708g|h0nzEfNnj~mu^93}3yKCF)6_ImBv&$+w3~``kHU|OlVeI-@O|+2-*HVz ze!?Y5hMVjVsVXhcij~KVB(0>fM0mA|EyC*sz6dW{Rm$V%{HXpIPp@j7?2@CWJMV6( zcSvK9Dk9_Wu;W;;lh&9L9`M9!?)q9w*ISiJOVewN^Wq3!5;GA>6HKNmKBeKRMyn%S zr$wvU7q>Y?dBdvOg#;LZ=SV)2!8%9ogr4Dmu8!OgV%umLRfj9(O6y%(**KksFMs-( z*CD^Zwe>ve@P#vyFkoY3t7242l`G_5d6Mv-*nB})MWY#TJm=|@;IwgZ- zzPd!)u7ea$PB*1Baq$Ho9Q(J8o=0FY)7bSyb%s%?XsxA$qAnvY3ATKtfmb#(XMh!N z=2nxac^>cxkdy`oHs87V{a)u16*CEZ2llHy(FLGivzx21&|S`sC3Qkxpm%hQe^}En zIy!0C^2#S$fs0j%>2Nmjo|ctm2}Oh8^iGTAf3=>Bgu0XlQlLY}frOa{OE}RlGnn(W z4XQt>&<)-<$aQHJRZ z8z(oT#0`g64Urwyo4wYfjlx#4d65SYgoW}b%>hF?>e9CFk+#DZKVd zUs-MV{SEsr>`vKT^<@Kcr(*D>X{Rg;x+F&hpEgR^=1=}X`Y_zRNj^7#QLaWCQ^MTOFb7MYm{ z%&cQC*_BJU1YVW3CS@V;1Yp%!%XjW_RY84H=JMM7dzqIb4qc$K^IeYz7D;#NAFC;H zOCtf7D2Obkcm`-4M(ArU4$og*jb`vjQPbuVZ+!pur%&IswtRpI>e1tsm%n`T+poX= z`g696{b|1AP_R>-F&1?KPSem@ZL`Eg(J)%tqArb2&%?DuV=H8+H)8i#G>T=ft$czi zNiWvd*9WsQueXMQ}ZNgcblN8lsDD2 z5;neKU?()s(~QNE;RTu=xO$Ax!bZ?+unCjpj<6}AMd8Qq_~yp?a0ob%5hS}}KET1X zbXV43Mhc~g!Z%~E!v#bq1Jbaigg}-ml-4;I_?4X9Km@pGDRv_mN2}C4woEtT zz`}N}#K6;ohMS}je?caDq&$}igZC42=N1}AUxsnSGZimH1ikP|nDb6|CcAUkna%D_ zHYRJjw$+Ag6hsq32nnbQrJ{aSP`nUPZxqy`){A#?H0=Rb+Z+x75ovYVv&`X&3!`@YZnyoc%J;|muA9@s%u2xTTG$9Q^8-aOu{7DN-c zMmS=*$em;kgBt^_Dz?VI%39&80&TRz6Cdm}y<$y$1bSKiFZN74i;Vy(qG+E`Rr$7$ z?O7>|4Hj^U0DVqGQ!2|Ouk=@b@1*F;l5EbL?TNtSzG$C(%lm)!C&2sDpKk1b@%itn zk-PrAtH1o^)$3QD`1PMb=)&`L&jvdVPr~k4k|s@{<%kI9y7&TYgj~<_ z@S{~+CDhJSWXz4QZFCild`WC!ME2nP`Sta6#`EMV)%GAtDM-vms;ZBy9#lsB65K|7 zpdbif00npg8yTC}h=;}3N+ZQkC6OBM+eMR!);b#!&Yt(b%-eC9FqNrV$n_d&URV$f z0k1=sh-3>@wgg_Mvds(VVR#n|UBU8d@LmRZH}9^$`Ky2V%ahly-?)DLGRQr_yWj&j zgWr`mz3JDr^$9KE_3uS=u&WzwrHnCzPMZ>{BDxcTB}m}f|?%4 z_o%N^x1!IzT)l8!x|qN-g34-5_dxjL@` zxt0hTbcJG2M1ogi2VI%I@*0Nsczx@~kj)!4c2_PvarrXVcInF1tKi4Ol{dZN4R65s z{;{Ht-Tf1G2D~Fl8tf{kWVEEr3O6R&TF@02jO-Xx-38Hz{V>O z>|}YXvYA?8){Aez8>v}r%d&bNIiKhW7er5$p$1Q?_jwHZ68C^g-w*gAD;S_E5UmzZ zv@Nx|V9U3DAYH)t{#Q3sc{X`D<;y8l#feew(N^GL_>gRo073`>JOo6Ehy&Noe14-I z2|9Eo>=>`fSzg(kzMZV@7YD1oFMaCCUxJ>%12`f0rYD|w;>wjPPrQi(cA)qC2e)7T zZ+1t(tJA!H!0zziz=_i;b6gUHOm>HV!}7`3A&C}4=_vkClnJTcl=zIgGMP5_&aa!K z4(xW2M~H8AHC-tmSP3xvo{gm`5RSkw7@!PnK)kNiM=bCYo3uQye`*=eskm%xPwP4=yTP&Pali1v z?zCfgro86LW_*jX+uehMgOzXm=}BRC`N~x+j{|6b!%Yu=e#5VS|En*4NPMJSc^%pw{pjZXR2wXoy&)#jZI>?Op35$+1*%N zrG*jIbVD{cLJ-5EtdWn$B=+$kdAhzK&Xh_bQF~T%m2bgNYsnL@%E1kf6fNtnmnI|b zg0DsJ8!`_6zgRB#)aTvZq){%933oB*5$>`ob8SJGog&)Nfy@)OHwpDsk6)Z?o+|8K z*^$+On;s_it!p>$KR!5k{F+bK*j>fgKu@rJ&Omp3!19SpU)k4e<-f-}j=_#Y9q*50 zzf7y1YZ2!10Fnuf$^sWo74V89lPT<-8X(c36$r(Sb3lC<9n3(diS!XMu4&Md=i~!W z)W<;7Fj@;ZD72A3*cMJ1kiblTqvjT6^)g;v1!l%pUkAJqF0*TmbUAp~twpZ#U$3@9 zRkqmdl>rV)G$yDdoqR!ESvX8dVw0tiFUoN>cnLjvSD-7T<~k$_D--|LHOk!w zkN^1SvriK7u7aK56L|PZ-aq#S-u1{=@TU9szWb}+zx-c{dB@lR9@ud+?E`8EnddfI z@F=E3ET4-j(dHc6ibXLZ+s>Cld?oO0fMG@UX&P5dZZ1g$T^Zvsv5wOKC*Gx6S`d=@ z02UA8n>IuY9D8+a)4@{G#XG}VR{QBM$K$owEycX62=6aUS~_e_)B(T4?c zlA@t294fGtOE%#5Qe{oj#28^KZ69cRK0hkzK6K>+9bm7q6JI$n;Msq?|J$G36L>(! zk#+8&1@K_qA{QlwA=2;xlok^}Q)YR>@j8FlI*6fQNEsa>3OGr9ReKgttb*HI2rC6bWm&M~-kA1>a01I*J_hgc!E2C09zVW+=i#paPo`Hx zC(HZwJH7&V$4(PW0q*5_f4<0EL z1*Ay~@TmgP2x4RwZ6cZ}fP#1n0!IzdvV&@k6%+p*-h!&~qRqh+j^<>D z797D>XL*_D@p+>-MRpE+An&oIJPMUft_GGC-gS+@k<5XAMady{)ewiQ@MH> z>_wGiP-U@ed6nJs zZKrUZiWFfg&Bfbt)Z9jA8$@#wuah5OWX8(@k}L%T5m`*GfPRTx$r{Po4T&+X5ys&+ zjRBE^%P#Smu*j@M@=!BXBbXteVU+L~{sn!Tfz)6pn9Z!FZ&C95?<5V+gl4K=04dsu zF*}2qeRPo7eR7^IxjE%cBA(;7pw@f|rfu0O2BnipEoq*W?M>qG%FV;af4qO~;&bm2 z^MFt0CELT+@j3`oC_{**b z<=EK)J(L!Frd+56LNYnZv+}Jw-Ij7hvk3(FaJ?p}2YjAeeuFRJc|9Oj=dOOdLQSJD z_|NMtD&3(<(775aN$_<5PY`m2>!2HTDgC4Tf-kQSUpG}ueqfqcMs@4M_F3@51c^2k zldHeDdGU?Uy$9JuRY6(-I$>9X$3un(?V$d~+;~)%E&2-2t0U_qQHfW) z0W_Ehm*7q->&=0rX(~e%<7=js+OznrYyQH)lh*bt$7tpo#zqrWd*_Jfo*6f?K(W=b z0x{w&qP+2+P8!gmPps%Z$8<0No+*|=Q~<7`h^IoVSvlh^BaAI~oH*yJN#z?USNlxX z_Y#N>@ox7h=1tjG^Z4%loAi%87sHd~0i8mgVqEPv#Wg_>@IVl<`KVJ(H^J`CHEm83 zc6Eol!S0V>$0)25IG9|*MHPpYrM3*x27gFO9>E~i#i%X>wR(J@-Xs-^0H$GvGR>Hg`OQJv12Yipk`CI+ z_p#X))|}@SiYp%_Y=e2hGoJGw^PLD{cgf7!9S(9d*!e!d#im;frb(WM)6{RZ23yhJ zSAGVjJtewLk5GMnyoR~qGtcor+!J`~{@p{}HtmZ_^WOEv%Q8G8t<<7eZFx{lNoAKW z-}}N(H*#&!mj0lA*n zO=5&{s^*?@HUZRxRy6RLO$doFkY@usuo5;cc#4NeCVe^ZT7I+PgPUKOy#KMEykL^OrnA>9vHn3I-qmK6@tPZpJ= z=Y$z3abA&9OQ;^YeilQ8edvmMRE~78)t!^#o#2ECVms@G`=1=)MO$+`H^4#S7Tzup z>F_cu@I*fXN|}^kvG$%PMMCUaLW@c7$S=T+4|-rq(iBuZD#NWJOj4MGjVGWUU-TD& zZ}za&ROK0ew6Qo%_7KgGyo8?TyD`C}a>G-lKA5y#&z8%!jYa)Ll=r731l^a)y_SiYio56KS|15k96rr zRlgrni|Mn)(?J-~wKO6$-jPkh@Uu!41jXMh;Hb4$IXOM8f)C(a z`BD7=P$yPZ-Qqz#aq5jzqx6LzEeJe_=H?N2)v9ruYHSBQu&bdn=&2qAdg3lfEe5-H z|KtzUkba?Fc+>2u!@@ZLB;ZleeT)%*=*}ePC83tUi(?83N$D1@34vl)SPQY)!!U}9 zD=p5wRfZ{fojD3!;u^w^w9Mq^JmNetLee#ye-Bu6JdBALfipIPC4_#8wfY83T!9bE z!r6#jdbms3sBxMyy(aiuyneiLk+%BKkPk1g@Ca^F&K|c~&3t^|w%b!?@hNlivPcl~ zdvqdekPF9eA63$Q9F+}fcm~@ug*5e(nS#Q+B3^BFJo8|qNL6Gk{X{`MbsH_zNB-cfz8P0mdAalnpFc`gI)racYwqzXg%bH_o=B(5N? znvn$3SaIS=Aa&m_OIV59 zX**HkqLO7+VSc&*mjF__!fkmBPsO52;tQ>$%F}BJt6A4!#}cQhB&f#2kvyi)>57)( ztLF);0Ccn$gj2ltHAY=$6$X+?24vK z>-37*BWJegKR)n74QVLi#llV^wBG5ZQwIx3T6{qXu^1lN6amMxVboH{w5;k!$`iKv z19B!+m>!JB2b=frU@s3ohS#i>F~Bpqxqve%`mdk3^s9#-yZ7Or{$>U2?ue_@!?eQg z2s|~~nsK9FH~@7(ioY1#e5WKO$bw2l4ug}(>GXWe&}FJ8BSkO#UMos6i+ChYr(sw? zl0*i2bfd`b=z|cARE}U88l;L~h_%KE6eE~Mx4>FKFyS9*Waj?`SR*`+Wz4gu4nP1D zbM5i6Xp{l_q=tmmL-X*J5MZ0Ho5t&G_Rxu}bm9Yd(3!R&ENUVbYDbj>+_uU>u`N5Z z6$GuGE$*U=S}k!Rpqfxf7Vw&!W7Z<@4j!L4yb0NO@b2rEk9Eys@PG~|)e`ZJ{dc|V zV;_I#=3V9(?ij9eJjPCn$CH_A#~4|!ISG@*Et4X#dM(xVF}a2!k(>2wnBZ{U!BcEN z6QJrv2FZZvVOgxK(!8WezcmYs%3_pep{3Rp8Jfk{>+U{2p{A$UX#p2b(sEq+WFPz1 zxALK9qryNxl`7ff3HlH9dLWWwWDtQM^q}c#Ad!A3x9;;F&m20)%1a!yub2#BiV{zz zOUR3HPFQ@F=~5@^)fFL}Xd06Sb1{h@C})Qq<5Tu7>~xf$*Vxq{mInv+Cf)4}!an%o z4N`-vfG5Kfcsha(8Ut4m(d=xKBfv9{2UF@rfq;j>>A|cSXLvH_2WcHt*4ee`bp|p)2~yY}4`8MO!VzELx9SNI zt=8$bBG-ljHRrk(yv36y=V~YgciGB3jx-p)+~gwJX_yzqF3Xe-^Pu0(vmP&)h%r~x z?6JdXI{v{yJW!W0l}ndbA~T5{N0lH9kFP0R$A5|!m{v01z zjED@m2Rkh928MT3%A;)l>m$1pazJ-aM6>f!@;mkD-j=xm9*^}$7loxzq~VVlJVY^~ z3Hc{!_!jMBncP5>I(C82Fs#lAlwg~&a`8sGJAGA9MMtP7@W_*CJ>tDyyrL=CmQd3m z3DHovAv~j#D7r^(14HB;!s^-Bm>m?ZspNvCGC^JwVa7s1{E$A)O6~Tsy~1(&y++{5 zOK`={9=xZ%XfsE-)K*`KE3wfsl`V)}R=i<_93bQ!a%^X!==wduO%H0q>v;iPR?0OY)SF#X&?Wbnpj44)T0;46m-fhmt}Ye6rtjh`MY6?pboFXk;Lx=cJ@&?)NLWvj(KngrKivVn* zNvo3AnaJ?OHMdVAuPDtss7}E8#T_5)Uq8l9Wb@Cz{x#s$*a6-re)@>=@3s*%VI{T6 z)o;8jRp)^(U%ML)$Pn6-G;vD&V-ngQpelsg6YwFiQNy1p&*V|V7@J?*Xplb#h1 z@R_J9s=Ufu%H)Bs!tmAJn)6+*k@n=OeEn*cbOnL|>dJb1Q^3_ObDMK^1@Jb13wF18 z<=;^kgH+2Cb{rnWG}S}B|A+0n95d}KkO0rT)!?c9;kE$ePUs6|;U;-*8l&uhSIuv= zlqjIHSgB1FJ<34Mg%$QjXvvD%v~IB|lBS+jfK*ku~< zICxFo1mKKu?obMGi&gk^P(wm9rSYSPE+N+@tMj+Jqcn$&M8%< zhPKELfh^aWBqT$}e2oU}$!qQc*fw*Q%7q0Xu-J4?Oc-`};TU z{q)v}U)=u%)mIVCdR3BH0M5HmtieMs`w*MJZTSL+E84eHwL0`wzN_TpsmY=QDHG*2 z;s=&;Nlg?o-;#ceO(3QL9*`-*NikFVEl7>(<|0tGG}NVWbBSyX3Inzjz(D^lfEnsy zvZIXV&@_zEa0niFP%DY6#`^k>BH@^9-EFCWd4y%Eo>pAyW)HLXnp0b|Or@3v zbxNE9DW$LRLQxXpU5uL&cL6*JE0+9{8U!S=^SK#@-D__W=Zv=$gaVR+(7}lZTAqWt zyubf0snVB3SX9cBo_Tqn9O2$ies}8^_jP_N35E1rE)(GDH+fCjoy5+Yo26SZYnEzA z*R!F)Y2lc8^{ zoQ0$SnRq4$!d(FG?bqIDGPc|Ie)6lg(Q$kEZ>2n3CVhS%`^irq0o~!Dh$e;yc(;#S z<}r9$Mu6e*m-jnPhR123tY{4v|d)W5=X7WUSI>C?C{>}l_G;Nt!e%Z8Ow@w}&Gb_7=PlXzyltgn)v zEHx{+zN?s?RXJlU8LN#UpHv$$TjCu^CLwzbRIG_-jNLPzGKqbzwkRywT@nHlRMIG$ zYW&X9QaK)x#JGLm)gyEq*uGZXM4KcCXNh;h&oCAvu-p=O7~k)2>|Z7=5O!DU z*%DM0x{ZGI=oZj%$j${GN8ky#W8(un3PPM~+Z`uy{EW*up}?41m2_t-NO*yw+|@KlQW!9EeHUJG+ zxk&q1ju%<3%9;|H@r#kl_BHiZE;No;Rs5 zyg3%cGDnHmln$n!P{4S7D6nAk^(9MR16Ulr@i2($5EqRG?X3YG!A|)74ZM78z-?;aM8oN83-`-^EjWWyqB+ce`-9uj!6J1t`2>3Bw~g@;vzPT5^W ztQ=viUJ#?cXtU_UKl_JUw;mn-_Tj^a&%bsJy7J%w;F(q8 zycy(pTTfbxU8V6l zH^-q0E977*dbR7Qht8le5>MSo1WQzho_wwTQ#l<>SvXQ^Qs;l+khW*U|DYYx#HLbv znt9U2^grY!fuEN!m68p0x&yJ+mZxRvvY8y}Ihrwe&w7z8Z?zS&`g{TE0%mfKf{#){ zsp@nEQBh)LD`FG%$Z!&@5!hXOAb5D-h_M`7U2S#GrsEGXo~OlC_39P6$xOLOeRamCah8zz7fm#{*5`ghXpy}W< zL9ZIyZ-01EUXx5gT+IdlqYqRnduxKz5m=F(@cu@aMy4DL32DT!?J_qR3~zJ!#|p4m8uSaDgl{>08N3`3ztpN z4^imCkCwM}R!#$&@tT`wC9sSu#XKm>?RO}xlku5eBOIubgeSlMzHi<7?ejl$5sGqK z8m16bv*thW6**DESMF>(Z~zir^h-Cd0K>|iwgWqG2Tm)ExdZyjxpyv?#3byb)wSlv zJ0L?eLqiy0i{~*s3S6Kl@I*WjIyKO`IznhW*+mYs#z-V!$JJU;{HnNUdO&7t zbWHh4I4N`A(pVG&mN;5W`D9C%3Li@=D4{C-(82J+G)2(UosLq946aK_Xtt{K-O@j3 zp5*6Jr3}9)y-PWb`mvzn9!asTKLIMt6druv6rkatXhqUB749G_wZgJ;?)14`<>=%5 z{x!2}^ENVc-69Q!SCOK@?#U;g{Qi4B|LC_5F5W&~8_l;$1_R6EkY~V?;h~H{HF+)a zkc8Ng{A#(dsbGt=!S}?b7T2`ndLysAmdGZUU<;sO(Q1;}>mU4}rcIQblSrd!N?%b{ zX4Xd&9fdSu%h&JUYyb^L#h+G|*!>joE%&Lfh73WJ#535XWacC<3i77$p7a_>519q& zUAvPH+UcoIXPN4D*(tHtX^N&dfW6EVJ5=e-*yaZ=iKqid<9DDY=m=<5CGgz5geV}Z z*7bEvv*pPK;hHLJHKl8AZ=XK14Q`m7(!AZXO7o;ko1*ybuhh69i}3_uxsE9IS-|_~ zw;nxwa8V|P;qje#&N^54d&uK26blbG(_j%Yl0yMv7tTO`R+Q$6RTPPt*F~yY+|ab{ zlJW-?*EEc!+Bhdjdb*V#U;&ZLPeun^fTw15MC1lvG?Q7jD&mr~v)aiF9d4~2NBy?r zWl=k%;2BFaEJ%8X{gUnr@IqTLX6FqdOO?~%4mh23qeE$w(OiU;G9O@muuXTy!t~Qm zOe=-2T(!K|xJw>vm3xS5jN#a^Bx#SNs&2G1O@ES!KvC?4YS7N+>Fv{}!A=PR<_B*9 z!VbFh9V0XYo@sli^=Nu-C23-MfBL$>d!taQ6FP9>K^29608fBIHM8y_?#OAE1n1Hr zCn(FllLfqb1e%i#EG8<jpfHnt0a(d*0Dlx91$8-A2+MQ zTlf~>*0iAviyknP%XrvMN!v6-wuntRR^SwQ4Cfvu6%?w1ZmSctrK;jm4p-nV?UO+~ z*kI&aV29Iox)fri=!@yBy{3aIebO)6?DutroJsS%O6hop53=PoJ+aS3;LWS#fZ^4i z75}M$N?avyndT!7=EuQp_O>6Qj=T!+ASy?0({%kINWcEw_x|+5zkKTvO9X19YOl#T z_L_P-t}5K0=Az#Nm$!_V0(gb4=^{7XG&Gnau6UzjUfZJ<`fztB2&OQCuV6&+_=6u* z16e(W49PTflW-?AA&GoHLCsQK!D?C~`h~DY>hoJDE!duXPb|&X^k!S7Y^aqcNd*Co zDEGluWOY&E$kO7qg%Wq!Mk$7DP6wEsgSfIp)JtXx9vu*yl@DLZ)HH?!AW@nlmnl&i zle2Rfp3F@@zG~=__7ttPb;Jg|y>x|mXAEx}&$)T_44<7t+Vo%fe0(7e@z;<{+@&l} zY*WMMA}oIbyoZ3NBf}F+I9Y8`6`aT5vE^@jiQG5_z?cgQdYL;A_AUbei*$zc%fy){ z^!1qQX?L`dsqNYjVgaaKI9dPTgWQ!$1CZF7R;UO!#YF6oM4>^IhaBJ2P>JD=WT_AachnLI(VO5L(~+JwLIz`ymtw9VcYWLJLqJ)TT!yU+u?dtdwJw;(K_%ihLU zDB{(#3CCXZxC?@E!ZPk>K$fR=g1j>&7S}zt{V;2Eb4FsBtuK)5wjn)T(tpuS2`g@t1P;I?^KDgj zp#E9x!z<^*usS*JHtf*O7{fL9I;AnuQIa=UW`Es;FgbPF8*L|VV*|5gn@=U=Q5G0S zOMurV`iWCYKQXO;j#L$-74w;zq!DFtl}xb-K&VWbDdcSkJQWk9kQob<<<;OxnEtbT z<@W?0AR6#~4S32GK7XqQPves^yt;BLZ4=;hR3Ex{xLvY56Lyf&YfvOe8;Us!z?h+x zMzx8&@*lMYM$2i z4wERT24uYEIU{VIGj8)f;K^%(9b2k?sqPheY{5>J2V?o#mw%&F0q|Zem?Ul1QO|&P z%vWxnScuEDP$hjE89FL+iU5j~>(^k9haX zU;gQrS4_||miG?8L)`pM4c={S76UxaaiVt&9&7&YZ@1ei4j`c@%r&0`^po~rfeDv# z*G|wksdX2rJ@V`*qMYNCG~`)8;YK5OHYwiTp2qz}GWkGSrUsq)J8i$&=@wB;bzBX& zU0bb6eKJZFDI%9&Fp84U>L*D%i=sX@?-K0oV%X=B$%$qS4Tn+XbG?ANP|`*?=xi*o zYp<=kLYfak-lj@%29p8yJ6rHf$7a(~4Lw&=wDRtHmlIss<#VHuxt^)Iia-ON8uT^% zsVwjO2UnNCN}BZP)2H#8r_M^8W;oUv3p{bnH$Cw^pkq6unP&dVJAN&%Deyk^ncw^l z@Wd{8GkitHNA>o&f5r4_;*JK?d{UHNhro~g<*y^UpF&fkBGOz}39N1fZ`q7FgDi*6@l1X!e ze;1e#xeCD}a>`IGSfyQHcwN*_bt2*(S&7^ksB*WAw!(_YiG%IsYl9Si>Tq|sWTu3L zN-Wp_UMR9z2|U|$82cI(Rj{*D7hef(O3r=LY)eSDa5TcsTRs25A8lf8fG2mkdsYG& zBk8BkuEYks+XC-RASdk1WWw(szU$Iue5NtIA3OrQ+qY|GshC&K2OVK2@UER$2nS`~ zwVaeztQ;!t15rUEa#=N6i@dVbM9G@-YN##YL@ldf0P4;OnQZR7AuD1hWC+qiFgU(| z+hjG4lxu1c(qqi!Xd3*~jW*KIXk>dN;)#z%xr@R4VnNkB^IJpOptU8vKedUV54#NYz-#_ng(53@)9&i z`kE8<$YNON`#420mP&;njl-fh8%cU>wx{gCRCHSfPn(d2{-|XV3-x_zX)4~QrKL!O z{dtSd&;n=eWt8e;ES`Te3G+O{4bbg3+H!lXfZhz~6b?c+!eQWpQMrW0k=*3LahP`` z)5~GO;mj>hY_mDkXi%kMoo`4byohnwc7>oL{YQYBMp980LFuc(ip;9H_rbmPS-}Q) za-JqfH$??DLHLITyh~5K;R$wX9`9YD0pe`}?*{7T$8WtI@W2Qws|U|H@|g60W`Z*2_5A#Jg{}Na zmWS>A^byU0WP&w80X!^^Qc! zR8Mnzh|w4l!K~=_&eu#+g*?G#0L0qr4PyjH4-{dast{nUW3!S`n{#@EO^`yvBoOu~ z9`=f?-=;q921$~{MA|fG|7Mg|iTdqb$Q1BRK{af%U6<#w!-E#@1^s@XkDQ!gxmkm! za!JI28u-yhePF*usClUvyNvkF^U7Q?l3DtDvwdMpt6=LF?7X{s3t6v4fcI@DVgRG)$jOAF>A}o^9CS8Fa7!Wmf(7ap;cWts{iD6|Y z9W0;fXiE*Qb(*?)2vIH=f}u811?7yvD+R~=q?6|gc-o1hX+c${uq>az;?@m+GCjQ(dpWcMrq6ac^JfiEf&- zPBNLY1;7J6-~-ERCpI^6=q92iNx!4~F3`kA(qBwq^p4f)Zq28(#&*f`G_q=Gv^kBl z08w)o_i&o4CwrReB8Qs;yS*`?O!Jbe)&f_n#Y3;9ec$ z0KWnEK@I0B!bY=p5;^U(xsF9;7Wr;QK`qXKs^e5)hudbFQh&@(EoH%LkkD9pUPLnm z@0oxnStVWQ2V~?6 z`jC$yEcq=4M+Dv*bn1OMW_19vCfLz%OJVPK3VIT!YtACdqER8>V+F+F%4CA3?+|&j zMf~`*j5Weo(5KvvgZZ?q5R2CaxmlBzaYrXfKrMA_;aVy6t%KcMJy4>x!hmO5HZeCd zj!tcPH0r`jEl+w(1Un(??gnk?ry0%TFx+9G@x&x(Sp+wF)&p1C$iJ>`#67w{H024z|G%($7Uvx1T>nc9+? z&a-NKwQ@!o&*<-H)N>>XI~%n8K{HhnQg&YV|7n30;GH;R%Jp^hKL|T>usm8IREfpz zZd})p$!}$OfOne*q95RK%!uX1J9j4=YffLOom=VpW|;tCs85V55XN|@EQF3Eq2e)& zyq4DX!B!HRYF;<*=RMK{v%v%GpeF)vXU_1=1{;OzwOe!eP_jY{v!77z@wEakC7vQ` z(p%rpnLl!(`67X@!D{>S#a2NNnUi!a@8mqK8S^Rrk>|-&-aT|M!o@br$>St7r956n z3-Q(C0zfaDEqHfT&hr*0B{AU~xp``v>YJUu8kI0En5Mat(Z z6Sy`#NBKO2Gqch`N;w^(4r1UopW3GNHDKFO5Y5|-dMeV2F~KGU1{>^R$|}Y5nma{C z?!7P_X5nCMIdlfOi~Drwf1PfWE}|Go4j|fD8%(p1B!6+X;B70<^V)-w?k4dSAEsGP zBxr?z=l&}2a&b0^kjN#Sj zA#z^-<&y@y8-RD2gWpuNlhZT+)_0}6Dc5<(zp|0%l*#Z5gqzGEepHNA)9zX%l+Fin zcgXw=i%Bz^LFN|Dkop^ql3M*WKRLK?LEX{#N6gJMYc|yws{tX1B@Y%Y($LjWPG+dB z!jTp5soykP16m}HZG0X%E!myhLoVy7V+HvohU2u<{$<0e^taI;%YXp0dEL= zPp6U#l{SXgMAxK}UKjKbTFzm6^g%G-t zahTNb41z{xxheGSXz3%ahk()s!6Z$p!tO>1KSR_XW)y@dh++z@Zek$=TV}14>X40$ z=pBVNOjCoCGyqDIuA9Zk)5nkx{Qiihqfyq=EJF)XCUKJ}psSCi54{*2VALI2TlCYC z=k@wh1p*6UDPcux7^|njo*PB!JdKEpNOt^~=RgiYnxWltd9b*IGPb-%llzoD1YLLz z@;S-O46&n}w>hQR-N*8zORJtBtkmr%MLLc}S{f~>oR(HtnweQMiIQbxIqJ3rxNXqW zqe&L@hBm#uU?0RY1=3>f7IcEu{tHOG zW+@CgUA4%739qpR1{wi*HR3#BDg8BtEGNuxfOWXh-jx)0{+Qh2v%MYcxhQgwyRpZbR4t+5~(>-k$zN` zNGa(OT`O-b;U#S+bP_BNSu;moAyZ$Pl91{;BMvb`G)wT9MhCn(i~moITQn0UMw|w- zqZvyd@(EU+KGYOj?L#f?UQs!y&d+tu?BY39UJ&IpG0%=SfAQPrUe`$8pKH2#g{7!} zs==#o21V=iz2B(?>F?lCN;jnCaC>uQd4V*^#ndb!kWEDf1qDeT-L7zoveNk62NpwV zVrGLB=42IF1n=Bh?BFzk45f@dFm)H1`~A>%q!!B&pfx1SP))i zo2g=y8V9p0?75RO1@FWZfo?8C*>udJ4y$h31V<|`D-Z)oK`MXh`t?a7JXKKC+x(luc*TT$gU0q@)U`&!h`x%|@y z$IW5}JdO%`H%~C?yxd8Z2>24gRAb3LfCEiUeQfvvhp&3w`7%$dxbTmLe5`qkSGY*i z7`7sbY^3eAfY>niLQuljRci|_(~{LeD}ya~%9cKaXtp$yl9;eL; z2-(JtaG|7>dn1}@+S5?C(&yT@=edZ~uHwc>oC`~xl2|x!1|V2!RzCLy-rOv~qZXUT zfCpu&>fWQ+F|E?BO`H+q#tim<85f z&u$(ZOz-~o+kl7B9rG2?Lt9}g@7qVFO0e&0}=C;Gfy!w)Z%!!OjOyq+o1Vjm;+WkSXiMQkoh61R#iBa znlj+diwj&~{IJME!_vp)hmduyqS?C5i9>pqbpTHzfo`R0z3uaXgClj(^p30%0+VZ^ z*;f)jEHTOEI_02cGIW8bCqkWolN&vAc6ZZ;*~NDcziq}#1YW%q^?Twg`ycz&$M&^* zQ}CE_i*Hw{P8t?mqUG3mMP{j*hg4QMCL)d4QlKG_`>WOBjQB2&^; zrh8U)`%V-shHZ!cT~We==w=z_mF^E+FM_w6Vv&0kY$0`2_=^Yu5OU3NHMWI8%i7#oa3DGG3;195ZWs<%rQV_6cqA| zGzMsA&aA*&>UophGrO=&*g|#Y@M8jx^EdENRXF#A9W&}zU@Xry;HmHEcy|Z)DaB`= zT5b;+DNWl{RxmA&N0)X$MZ4_xlYVHkz9uS@C{1GO$O%FiMKykQfI?u{>R*X;=)Sa#3x^QM;gO7=V{H4mM9_ zmTPIdL5CYR4Dzp-6d9h$smnP-!))2p*gmV|pgO)bt%VC;r?jWf;-dq#xNY{2+U6=`+xn+|r z6hjM@la7cX#>Yw=mA&XzK?|T!I|vq;#-%e1YU>XBNYM7lQIf@;<^V9o($3HfT(v;7 zDJTfDbG*Nmw*Pad%&k3jzsNFWRmzOPo7(~;+l33VRLm2N#&)oJz==Qld(LA=kD$T;EkQThx^1lQUplL@hxWn?*`hKSup^5 zS3d@LYJ&JXcnH$F%NSnnMr&cRNL8$ucc=o9FccZ&&<3Sc&F;diQ7@2EmB(`#j}3VxODO^+)t=Hh#-lSbN{R{cFs>E!g9dD~ zQbBPTFqGRLq;Ye#m7qgMnxytzB1=@J)Pfc`%evbOcOPAO>swdOEepqG?nn-J)YwnG zb;fRU%JQR(@-G&rnS2r#$(eDf@{2&Lmse%BQO1-upu!Mid=v5(0PW1_GcP;6{nD3i zue|h(c&2i8+$i9!pPZift-yN|J8cPi0?%Ogq`)J~)2;NbT-yJgz@vgEr&-6m`)5?o zT}T;Oj*9jIbUW>Y$h+RqL6lChj;QU>06RC@8p804AW*-hsqf=S*Ibj)VGSGB< z8b*%StTWUG5cN9ggdsx8>8b393BTNyxu4vaz^hw2+%Ebcy|l)BI{7GBv{eZst;5gQ z^2-an^hPJLxQY?lj)$mON*BJyi|a~uA+ny6ZpO8;D)&%0l?c@$mwj^^)10s`7*umS zx^3dr^f8RjZ#e0=Bx?>;=Esu>8w3THeJ=`-BOGU>&qIQT@~@cw!AZ8-Hle^XH&i+( zTEWgmW1yR$0FQKT`n~=2thO9a3@cq-yt&@Dc-QCZ6sT2RT$42c@DcDXhZleL8NmC& zzcx~T~$1?^yO>gMI%&@prHagY*N^xM7yuN+_n!1jnd#mwD7fXL~mbB`M)EwCdo$`7H< z;}&rh-@=uu<>0F=PwHBP?;5eBft|ypW{E=?>r5G)!;X!O@()juig{;Cw(^^$zvgy! z&bJlCDK22qx&cJM<6Tiq1l}ZC9}>JT!U7TSVr{=@Y-OqzIaa}<8|yJO3n||#4FAGE zBCB<)5a2P(6L?^CZonh<9tlLiBO2eV?AxR1^*?>ZpMUlTfAO#P5*As3EAlw=0Poj- zQL=YJ?|;FgLjXL+=djy6x>q0AbgR+nrjtpc{M(7N)`RC6i{;;pQ(|*ys~e}c4qNWs zO5G7H9;U?FilspSRx+jO^d9y;DGVR9%&dZCKy=ks4*eic0TzE4<)U>8+6a#T*)v*1 ze;dc7OJsjJM;||FSWK?>D8%({X34G?*0uTAhOETp3ix;oJ@XgB? z1m6`+!VA8qYV-0q{P6Gp>CZp=S+K*x1MGPI<=cObu>14h(oMgn+yuPO2t0D80Z(E- zvut#;W^NZ#e)|YBH$j@`bp^}IEX@KpIJ%PJgqq`wJ#x7$mKIzk)MRaQjR|z-866zk zk~)=i>4Wf7&NS-^+;Rt5Vx4)^G-J2))B`~(rJHHaaDk@Zt1YR*y;Rx?UPE9NvD)f| zuyyJ2ttLla(5#AxzRs?t*X-9zg&pS}X_FwEPuu{_pUO{8J-{oHWYQcKya|yv$}(}# zG9v~=T5(DPKBxW#PRZVR4`^_QqO4UOGvk9_DHo4~9as^4CTCJ>YPfd}cr@upC)p=| z|C!$tc=9~j7n@)4_n!s4zxZnal?|Za`}WU#1>i~Ut_^3cCYT$*7V9p_TxfegiRFgs zS@8VQyT@_Y*aL+iDKa0T{~DiBOO0I%NW9oNW{P)2+(-qD#827{vsi-LAB-fG3t@`I zFkU(2R^U~Bl~Sw?7&PT>t5e_G$i79Mbg-VV0InS{6qYY5ujAXxQeD%AP4Ip)-?HaH zPp%4c<`Z#59vniLP`4%x(YIL92{!kH<$QiX83dkjf1)P+l-vk-1sPNJww7f0nX5v@ z-CIp-9%LJG$dZuLmL($Equ@dlbQ5TxcTJsXD3)ts_jsQkooxT{?`iY!Wh85w9v#W; zXFdydza{Ksr2~9F^Y?%IxBLC`y^+W7{s|K$)tcP|FKM!s&+9tQ^CXWmYrLW3LdiK}6oenZ!i$n08MjvNadEUY?OTABI4EEWqW&SxQH& z>(O<5j-h8_I9>jcOVt_8yEWJ_Pfr6R54KgO7LLb9BmQ(4PdMTxaAOOIX)4Tji?wcn z>-#C)J>0MtApE0w;0`ZBFN%oA{-EH!S<$2q=mJeW`eF%SDH=5|Pf1Qi&^fs_ud*ha%tMZn5DQyLq9`>U#sNQm zIyS0}E_-4U#OfBH(IW6&PCZS}`B>)ITUm7H1l+0dBbH+(UBWaKUB+^2PA2s#g|$s% z%aX>KEFt3vL4Ds8(xpfxe#@?H0c|p$y+iwx`O1@izgTHv)!UxTQY*?|4f&Nhr*RfA zAnNDqNpxWFFt1XwbST5k87G>Iibc+6f(h&-FVkE>E^%^~louK6pda0>l{Bx;3B6b6 zFF=u?V}!nM+h4BJ%j4}Qe`|;oH46XR=Y2bAldP%G13MKh-!AaX1@v^vs&<0li)@ppjI0Ee$+P#jZweTTgAp*6BkcGzQLt7G5qcSF=^@Lf75#)#FVDg>Arp+0LUdXRPqgN85%xRP} zNtGrVc{i2Mmc~Lr2%@KmInl33dvry$qLRg&aug}TQC*&tEbHOzQ6cbX(n*>;Mzy*3 z0|z}}2Xw}j<(~oX(;51o$m@8$yl0CWUZrPQxL^5cfLrh>9ZSwhLS+mmUDtUXaLR$* ziLhfbes;F09dnbtEFPqIM}5n&XP_ertzdknkQ_+pqP-IGtnO`+_tD0}1Du5tmMSfH z>R32y?g!+w{kHNk#`cKm$T<%s`*~DOe$+<=dyT45+=*3qVtk{)WtH zW_kufJ`i{}i|OrU_{v0{M4LRq4x~t%vHO zoh6fPyq=+YpiF2YJH-I4bRZBY5tKN?fvI%~aR?jap$CpUG}(>0>DVQnzz(Nd(x+mM zuPu=XW)e$&l4jbKj8i23twsvh!puCcIQJe!l~I54P`oVD+uQW{*M4gcp0MNj6ujRP zc;r)vY6ITi0iFzTzyFV~5uZI?&?LoukHnzzy=qP_7@#x^SWmP9DIb#7%lOoWg(iH4 znFTU+d{oxmRCcJcf&e_TPg2qLnhI36#N9X{*5n$;uW^~OvA|}EcQ)P- ziU=U`A&HmOFOI~Ak^qMSh2~t(Y#SW~;N}e^R2v~YqKJIv-f_6gX3M7F#2$Nu--!R2 zBnwa8S?2m!Y8>j?!-99eLX|C>4z0;kp8%eqo0_y~2s1b30GtXtqmn)i913Chm8Y2E zQs8myDdx`Kya2k#a}bmaVwv9Ejeq(l{^C>c^a#9P1U&e$UxZ=#L18EG{!qPw?uBK1 z&YAoZ9bf5=Nm}y8HrRouoYwnEhM6JMh*T&4olZ-No25H3`1`uLkw_L8&6fEbC7IvK}1PreM6q`i5oX}F(9#$d_+UI@Q z#mXrFkJC<%&OK2q;HSHg9jRDcARC%JuT=gJ#<6wEdeB`D7iLE2dlkfs#}|D4s1&LQ zyx-m3z5mU>_;)DGPr>^i|098?Tem-J0#6*-AO5}BKUa&VMNR6JIrP2P75$u)&RD_n zpp>Byo!p5zkx5}{$}C;lwIME!OXl0h5700ld_<22hjPZFhHgwaDSYVjjITaljW@g0 zgQJnYnwKPJp@u}`4YV8Yb3DDhv}I@c7Pr~^Eq$FD2XA$?VS*?8IU+N4_H7rpxL z{jCwOd<*0Adt=r)kKut6w?a-p1@6&id02u=?p0?~P0qm1DVz zw5%-X6w;Cc)Z8dV3W%9r!$Pl!Iqc3BfVjL_i(|QA3N#6I!9FX6{HRpg>UDC&vN1*O zfx)|`(^HpVi;32iGcJN{gV2;9({RY#_;Si4g}Y7tgjJe6Hp}G;6`0^hn|FQA1AcF4 z`_8YQ;iwn8w@*Lx7yth6{|*E88C^bOY{#VABxfS~Bl5n{Gzzo~8Vd3JJ-irMlXnDO z%&gPR8_Z8aCLLw2Td61nUBr~>uEzPR;uXze!H~>}pALfNVkjG8qmeFwo9>F#h|Gw< zQrEyu+Nb3)7Dt;?(}kUs*lV&xK=7K{gkdZdMcouh6;4~LjAZqq!L7T=+PvZbv+0w# z_@ZSFJ72KGe8a`ZxQ0NEEgQm+>*MEh;&IIv2{!qRAWBRA6ckmuBtV;12c75r<)2(E zC|Ssx+9m-!DUT>Tbw#}F8X?Ejp6tEGEalZy){QLYy$xu`)gZi5$f?^iK_{vc@Sd+P zs;962uOIz)A`dqDUyOIv9=pE=J&KjzL(eJfjO(od@B6rg;|}I{+x-ki= zsNy>3wag@dP>HoLUT(b3Dp@<{)10WG>yAR^9Al_50&g=Nm7cmhzh)Y>^81hQvmQ2PTQ`iB!NhS3@d`xiG#QS zuQj7P&bwvLeo*A3suWMVGC)M#vsvBZ4a2aUWx`;*1R#4!^eTfb=R z3?U}|89enZ1*EzJ(Jb`x_B6*HLRNo>YlW1ePWclU0aK-?Va#53Pv8B^L>^}zxa}K- zJ$95U#NN;RjA`t2*vnuXa4lJSB?PlsAy?D0`c2!3}&n-%TPCB^n3mj3VTxC z9M5Muzd&8H3)3RtMC(|GO`9(mLuHQKM>A=V1fE`rL6gaU#4N_PT+m!E6Asucp_SU@m~S&ch6O3 zn)__BTE?h}onzsJawp1Y8|EPj1nDY)r_9nE1q!EFtEES|fqV6U7EcTcl_v2BcmcP6 za_9ggC8wNhk=ODS6I)80Q~6VkTGw3B3q@0s*;q(_*lfH_ZI5h(7SQ0D7~vCN!}GYB z47mUtByktb0qNZgTDmFB4arSW&9Q!nW=p_(<11ajpC?5VyJlp}*y2QI^g*l5zkIX2 zpXjoZ!Z2YloBG0`qJ#maz2mssFERrfpHOwW`reVzuc%y6*u8#r_55mIa~cQ*=JQp5 z_dUPy7k}~BK=i*&I#3zxq__R{pW!zYc_dT7qgr_cx5Y~smNk~L1YSb&VmGyktrnRH zQ-qpj8~P^E{7h-U0j1?gbqFJaoqvh+K~yGj1ilYsJfuY>j0#am=xHe^_aMK92pvj} zL-iP&RI(ghux)sE$VmN1<5&{Qsz}Wwg%UrrqgfO9$VR6}xSK_l{LPkxUNLX_Nz*rd zM2il0S0gf7%(mFC%qG-5{$%T>3J7Et+V>nD9T+@%h3yvb=n#QnuAvb<>BGY|6Gw1!b(Re~`c$5I@_?3b4AI7nQ6 z9BGpBb1$VCbB0JC2&t0+b6Fbd@xucI8O@#eFq&;#yiG6XA~7nNRCocpr9n)#gxLm8 zdIIBQwXs@}Z-JjQK64Crgzyto5pZrgm!qHNkj0>dR7Oi?3C*0WPKs}^29!b&)NUHM z^yp@hp>T_^*xXz1DRV(49JtSWbKh*YQ>t5y3kO5Wuu=j}pGF?w5qeVmfgc}0PVh03{k?zuyPy5= z5%4(i2)w}F^$Wz(TAkF*Ah}DYm8Vc;xnb@-EB3uW0#5e3Vo%+7JH12tATI~$GQo_q zkS`hZJ(!ye)wZKmLNr^)6#eYg?ik*Ax}wmN@jkLN-VFjI7IoA4cFoE(>%zlRMJVYm z)xJVFhVpB3XC6tIxtjTCsps3IVX%aevt_OC;;e%f`$DYxzbdNgXU^TB^y#_6y z<2_&Rkt1&kJO!RWQs|jsEIz5ab`8e!7Xj6vXTbY=?F0cHwdNwqy}*yz)1cGE=9>Bv zK@f|L7zePHwUHbN_KNfAL1hV<(K@Rq1Rly1nmgTur-k&CMu14NC`d;e8dFp)V`91X zDni=M10+mAyRkzEKM7fIGWNzfaThp2#?-v$oRtX+{~H|dWTV|!Uyj6ZsL^aiy`qZ- zVPhbt^Jv9N!bCquZ4Aw`po(;tU8EB+i|TkD`Gke3*$*3e*B4ty&wd^>4b`nPngYcA z3|7{RJfSTQPOWyi%o+jjc1~%D(iWIrpX=lkYI^itcY7~c} zQap~XZhH4bX;B&~3bL#$p|;@iW#UM8z$1SP&vA1BKlK1B7yArSaZdSCG9|zb6=E|d z**RT7XxE&KM0t*@(%B#_Q&N#Ve%jEXHxcVWe7{0To>S^|G9Fu#Mw>Z!;jkG~%E;RT zgH(>aoS$hXZ)a>>4q9#g)%iu?pkCo0-DWR_vv6g#rQ2%tsQUvnXDG?0;3FPcPW$L# zaV^;&?ZNqn=T`t|CJRQ*!W-EW@P7W^e@o!OtNf(NoAQkVJYlEADPEI*cz*9+&w)*% zBi^lb=yaU~(nBVrE#`-65hz`xY7gRp1u`lRRau^BAZwM)aECj68@ zpRaHFuNQc#OeA43;PC($xPcvYit?twBk~@ZB`m=1o?X}~afvk-ac$aq*ch>DwrOj3 z8uQ@50zDGg)RPjSfESsxjo4s5Dlz#Rm!}ksmfAf8H*!|tvoYhCGu`S$!0~tlU0Zwg zrq-N-RRmUE$-$m26=C9A37Tl)k8z?$m0uxq$WUI16U))fZ-Q#Rj;KMrp869106(xI zz+0h;USL| z6#QO68kb;Q(p%jf%J*7NE6M~6yckXonkInqc*D6!7_>0Am(r^Z1~<3V(UMl>EzJ?6WEk`Q;m>zNTC-YkjWq>^b%3&HB3m?~nfc7mZ$8;1PJ=`Y+PE3p+j1uz=>b{_`_E z0_Hn6%AFOtrL?RI0SPHiM{RX2*ZXTwz#(p8nk&5ChUSy$MTXRc7JF!dOms zMCp}udHX(2dOu=-exo*hPP{!M`C}1?&|62DiMwLG?V+c&+coj2OC36R66y*>n}dS) zRc}_4?VilcB;72;#%0u1+FDQ~P6uYm*#br*hH#mZ8m~V_dFNN4q@(Vf_!D^Q(Eq1_ zxPJT_fyeSP;3;jI$oo4Pr4o7YnZgeAlr&#ct*Bnn!8hLpNd&X$u&5O|x$=NohSJ7j zY)AkGQr1#tf(xHn-f7u7vebM4CB_L1?!;A>_-3GhpjSUC`Lm#A9TA0jIAE)&q#nxh zs)<|kU#O>gJrK5JSdU41meVN({QdAe_5*y&#LV4ScKls zeLDvp=m|Q#(JK7lxBnyCd?d`}{UfoL(13wm6DE^sm$WWTFX@JF23}6EVLJ$T8|6(c zWLYKT{~yR5?(7KgNS$XYG6kM@wqspOv+*HqTCRO9idKY_?9E0vrgU4b85nzr=v#8F zlCaqS1jDInzF;bp$5X{C8Mi0~NMFjz#mKz`ytN=&XnwbB7KGXyB?RUj_4=9N-ty*R zCh}#qd?#2Z+_5szs^yXx1?+=@_qp)jTcdgaKy~K;r_u%Rbp1@~0-<8g9jbnz^wxO! zlI1Qr{Xwq02EA+Q6;OP|;m7krBqtxPZocWi{^A!!r@%%FyZtDgv?=fa)X3dUwL-+H zR1w9pPO7@@)@uf_(9tNA8|VY7medU_Sd+Asm5&AO#j$kOvXtBgryqR$!5zFW)G{(l z7_!YKjrUG)Bty_)Ma!k?=;|ELXp2sui#X3>psn+6&I#p^N*Udi9H(wh+MF>X=taxX zj|uNMAVi4(y)Yq9;D0XIh}mdk!A0`@4wV3@Q(>Rg`QE}f}ZlGfliwWpFF<9(EomYuPJPV0-^1im=3sU zQ1PVl(vu_OIIVHglvZps-UY-;IxsFBUU>KMM{nUS%V1OPsu+}*{HPIB_0IxVz<9Z{ zb9Y!KMU_+UZ0ef!JRg>240Rm!UGKnRS&}Ppw3SIvSAK>a9Ee+d?V_4RZOdFJJGp&7 zjq}cD4#ebjErv{;dAL}w_D39%hEpnE@Y}E6v8|3L!g>}VlX(6RVaO`!4-TFro4VD{ zIFviKv;R`Ok)>`A9g-Yo2kOvcSN1ZuAHD6-`B9aaa`W6I%@+p0SMV!339p}DJpvw) z2Yw=0J_S#m0_Z7g0v-y9e|~<{Lx-o^qq>UdUpItHEs=R!MNyplZfS}@n|5HNxv7_` zU+2U^U^4pPHkYh zwpd9%jR$7qlAR;?=Qzk>y6?o*X$V;mO_|D{AbD0pAJEyzn$D?}PEcU`gMBx?FxEv2W@ zx;s;%F_i_g?x_pu+hI1>%8fik9_Jiy`uv<<4D*Z<0*dAHlr{|k{eQYmp=VMlkGT!; zGw08;^(SR6$)4+Y7t7VpAzWe?TC<9pIt?L1VyH%yO)?+`x)CS^w0rLK>7$Qn@{q;) zOb@Khso8hMP=#VtQilzBGvAy^RnL`^8|qseJjs#lZ;#wkc%WsAwxn z%C3u8qejvhH!MoTgK@<^tjBUCwnuE?t#2-nkw%cx6Q?6XMx;j+EYvKIH%5;{d8tZ9 z>z4C5K)$;oQqK?C=Y91yloik-{o+i*j!wZ z8x?9~O^!UBeJ?olUhlU}RC-=5Kkw)NLS%{o@Bgq9c&2259;0`lT9L0mw(xv%;qNHa zYo|qTOOY8sE%uHaGqgRx&zob2j7gcoY*QmndV=G(T=Mj=!&i8Nh8-sraIyeTnqY8!lU6MCKf<*f-yF(X=IgPpl$F->X=b z2BV_b5qPub8Js~}u-=tXYBmWPB*2@m&0e$FV&*(VqeSjhe7-wJuGHKdlwtX|A`^?5 zWkM@V97&D<&owa7{n1xS`X}oS&&A!x#dGHtzqku{Ft8%ft z&(ND2Ed4m3b|`5OLp*&zlUHs4Z4+3;*=YQ51gvCK+6FFvJrhSQIt}zB9^(@@6&H;| z$IFCy#eCgo5YjHrENCRCX*o9wx1Q3Jr*W29#GZ=~&>xOR@1fSZuJ4vNGz+s;OfNB6 z1AenwPdb6NjEsMPnmrtP6>w4{-ApK5n7d<@v^*%c`EL*`sE>TzQLD1W(K9vRsbA;4 zRC`X7xK^*_6q_E>7z;FLq`K(Bf=z6&9jc-AE5pt<6XO z^y%%}w@14m6mW?B>@gHeAOq<$7E8|ZLD};CkRrxKm4tuQhPu&)pv*nWkuLM|ysW9;rgVv$DC_19Yk6luP?6PZjHCray-&i;2?o z6y;b4LR6OooWT3=HJ<~YCP5@Xe(U`CwE^$9{{7eYlk~lZj>hI9HwB)yhraz^pRe}y z3IYfUmL%`wd|&uUrz;e^xJYtMab&&14azNwznv>vEc7T4W-P(pJ@FiEB-5nEM0C{F zIjw}Jy&=5C%3a*%oLE!J8)Zw~lySzVL;d->o;L_;9l-NEjh2w5Rk~*_MXBz_EV=jr zGdLnOg8~arZZ~~63~>K!7BjMwqtJAGgk{!z5_Zj;6x!S%-0T?(%`O&M5z((s7F07> zA2D+9c^MuMJIvjiLMnHaEQRh{EHVrz3INA zpCo;PscjXJ$VXDiqW7~2wAv~w>sZ#A?@KC)nDIH--JNZAn|2p$Xv~12q*`ggkxxC8 z0IetW(4b_n8gTYWCq{EXXHj?blpPFQHLnw>OwuZY35e;o>f(TDT*jG83WmsTCq&KY zvJCL6WmTvEox;r-vudgU6&m@}th#1C(iUvv;4%Gt!Jl$!=IRa82R|ZpvQK|dn_@bJ zBGhBMx=lzj_iVdzGKnFy(i{p{LebpBAETYdMVu>WZr7qOiM3CQO(A}06|mEYaA~h7hSmbvPe+-<@g`U=#K!XYfNiO1S)Zk zZi}jc$z5&9ScM2;FDN~J!ch~AG`TSdc7X)6A}R%(MRiHX&4usiEaj)kkIrM9;1PJp z(J<|#K&|@5uksvJ**8ZfVV$1k+B1l!fzSAkf6GIr26)wE;UC?WRKIx_IW&Q~!UQAN zHG0hgsmjEi))Nq|xr2t+-dYt4@|Fx5bXJ6%tUZAVZ*@rHxGx603|?BrNd$O~rm=~y zF0Y`#l#WwIR#cgY$YN?v%@>ZJJ~+A|)_~4DRGb`lrbicSGPDB2=hq+J2s}mJXMTn; zEZFf#rD>)>T$S;2w0IZ%Bi-OjIaJ4qZaZ`HJnkyy2_3B+#8zF!9K*J3R`4dqH>dPy z!PV{!NSa`G%amXoR%*FlM%1%atw)eEd>bRVrxoT>{a)J+eHs+8lBX3=8jOQKunLR^#jk>4q@` z6`en)!(WpwCzPd#zFP;nhs@#TGHEzHBzRwqrJ!zAM2^uAgCtL83REwUnwn$7n&G@F z`JePG)Gl!VcodtDDp3?_YR^fVBBw!73S1l^;HjnmyZM3t1U$0l&+V_;mPs6h^nQT; znXmZPzkPM}sCtF8X|zW-_{lOaqsG;>!WO1fU6faeCCQ!zcJ7(x=$*3*B z+ui7pBi=}vbOk{7`Wg|0Ak_~oc0dm7j^4-C zWCRR9)RXL$%xA{ikHOyBrWBQ3lfA0L!pnQ`brk7d4mb&(nnw!0gqKZfW7*z|N8g8HiGH@nJE~7t$Mxv6z}zmN4D6Z(_~r3M4{@V zBx$W(70^t1ZI{QCaO(m<^Sm7g4IGdK|I8Lb3I$o%Z%LXUsl6X*T~0ih<+9prz-Qx8 zC5mbBJiDX>0e-tos;VGfNw`5=D>+u0%rUI*mQ9i}YdSrG+vWwp}i}JI8}h~ zUM$P=Z~xc6Q`p-S?<*D>bCBctRZhy6FVBIFbw0TTF6g3yKJofqUQuM|IF34s?J5qC z3-PjNtS2Qq5fN;5QAnkU391ZNNRws^WFjv>oC%2BF@%WdeM{mj)0SZniX!OdA{^oM z$4TnNRR^gVL9!&>Jg@Sas>ovUn7&B6tNR)gO6G4<g~ zsnAoU`3lw9qqr3e%XIk7V;Zt9D|>kf1W7076=c(`7c&^Lz@nO3+8xmL-KGwY-vS=i z0FsaaC?)1jD!?)b=o2(p$ZeK zq&X4F=e}7Jd;CY@Cc$q2-3;=T&V_yQctH_n(mt%{>Li^OlewIbI%)qRD)o~=Y(vX< zu9OXR|1jL0km%*vi8`%VG8 z_{C!a5BOBP(4~|Au66o}c3J%VUx1yIwaS{hiw06of%GC5bX1Ck1{|Nb2BU?J##I;>c zVJfLlEJiJ$nWeGd!%{vIHBnWp|3xSj4 z`lzj)L7u^@RBRNCJbWhL1_}c7xOCwH`o4?c382K&Xp+GYoS~-(2-U#aRM63kfz}Ly zw4Aqsm0mLXp>mNws=oBInI`oGp&V1;I5CHiuF02w(qX}COq{_WAds2xME-=zOWk_G zk`V2Am{PLnS|oR>ig&Utu(EZ<^hGuY_<609iKHBC47<0 z_<2@RRF;jbCYg%j5OGlO?$w%y%}gTEiJCt8J@GACG$A61$*FCudn`W0K19C+x41GY zW2!?})Deej(Df$xIQaHk>Q~?OE1#8%G<`Woo({eJ!vyvk@KCse;7f@h$eMl-Ly3_n z846|Aj)EQaSkTg^SKKyZ(S_4vGfjApG;Dh+=%_Xy(O@{cFGX_pJPZRN*t zDd+vFs8NB^EdWU}90hKx2?eG~9E|M-Rc=cM+4g=oD5p#oSTyq5hz6V$*~;MrhE^F2 zFPY0%jT6#4OjZ(Y_Uw`{26~?LGkG;mq()jkpR;s1i8LEx7!*aUfFYsQD$!OZctvtp z@K#N;m9+uY?ux!))~qu6IvH2V!4bAhryl1W-nEOPNJfcwG zy)>y%J42M4zlc-EPon(WPh%B$`t_MtGzS!#7c_a?!65t=Og|lZ?*%Px#725q+kr0X znoW)4&47NvF3;qu-*Onz;l0)UYT}u#0mY0hH@FgkL@Ux03X>eAvH0L24X7wvPCb{Q zK-X$h2(U_z@lWolxDlo8hQMrb$?_PuFWFl(;z89^bVURMie1Zm7G|mAn8^73qH(`%+bwjE2KhBVj zbebWwv?H(nOcu9RqSaZ;FU%fcFWU^y_mT6)%Dd&?rJU49T4|?9YGmOMgz@ z)YRO}(#e=go=jk0FvJ69=xe5U(rYfOmLA>S&?F=>1b53Ei-582iJhKGix5RxL1xaw z;_Bp>Vud4*tch048*#>wXgTMs7KF!nR}5OCp(U4Ae%~RV?3`G)1hZtspYh@rK?KBE zS2VhuthH+jqy=38cQBx$CwJEU`rTs2_)s(a8dNXGj5(S#?k8?6qO!a3!Ao0Sa}}OT zY8Gsp7SA^;32xDmX{=6c(n>nTgwSKFmqYWg)utv15t0m|9PoHEiGX<(jVAB}=lTSpesNCco;{?t-y7OlukIed-L+=++JRtoucj*1cKl}q# z3rUl`Ft8?BQgWj3L~c7P=?u^x%&3#dlvL##Pde#V-ruA*N*JmYG(sEfxKDxZNm=t4 z+Yb2{nU$dTK|W|Zdb$mMiKpp^{OU=t39F^uAf#Zet**g3WhYFch&c1t<}wtT5xPUW zjdfcKPIUN$1<@jl>9RX`&cef37pK3rUluXEMMq7XFlj~Vw_5thkqmOGH*b(3t+qg= zuL!*bhfw{WJ@A=_re0p39C{qMTQv5%^bCV4Q*mZ{gO4GnE&EY2h#09; zK+nzuUE^~;h$Ms9WU7Z4kkXNK`OLS(yxe@(Z=iO^;7{Q3{LA0{1JU=luV~7(wGNN= zdL1pPLvm;@+D zkuxhuAIy7FB)&mCpF27K3wzk8*qi$tcJz6?>Tjg^o4w=one!cxTB`tU*2lQfAe3zr2(w2xL2?6 z5C4F_`#+&rJ@)=m6 zy7du6@O%1V6}iz`qJ4%N2c^dd`U!J-bCb%vQPpCG3lzC7ok0f4DXUvueGlmpFxG=$ z8RN4lJ`9KePnbcHnbtt7dDJU>M_(h#z4`e+H`V6<+~cKc^D`eZujRB;$UR@ZV~S4J zjH;^kHW7wh0flY6i+t7-N^g^NXb0@_1n`hPjOpg)#VvX-i-)yF-?JO!(#jqokt(Wxp2i34#%6+gD3A~8Gs=9y(nn{fMS;K{I~ls1WVatka} z;WO7MbF4TEI=;cilK^E$Z^wS7%*&EOhK51TfuN#>Sfp=Y>*Qv6`t%+@33$ZH}N@&R!in0Yv@p7inBV9(QZh;ahC!ZAAL8X5edtQZej}JP6 zbwPB)G#wQu`uBOE3ozm^Wek#JE?NP=TWi!xp#nRma#OQCL1(UFql{F{0jxpx#ntEi z4tdjn_fzT;C_;(6dli}&Xr!r4U*0b%-eN5e#2$@u6>(CD<8nc;tK1f@D?VmoJ`TDG z?Kuzl>A-`}JWip-2taE?F;65iJ(Y86?8T`1{F&|xZT!xyeV1|FrmMSZ;Q2PHd6(Lj zV#Q@zhTxOY2+t>0#dVHW#$dx z218AZJx{=C9ns;fZm9o|NjEg}G=b}z34}~@SluRzv9lQwPvYGA4ek1NPTk_KLVvDF z9~w?p5JN})9tr8xKDnevzeX($CrR*e^hr6UB9pLF@_g2=tiV$)1>!aICXr|QJmg}8 z=rjJ)B+F;oyq7T89DQAf*Itr%ZASYcLL&_gj+ zlJ?XU(EZUeAd%+CquWTjyxKxqF`t`u6|)_tfk6|wNE_Hl;7H895?}Wz*wv98uuFM! ze}}lp_0~~r#q^q)JvsqC53oA74X8Sb<1+^_5;b^?qg=0%b%zQG0xasA8Q4*mfX!;X zj9@xv6_w0F#3$Br^XGSSR%FRN%SC2pc7drER4r=9`ocj38 z80ebp`sVTFlF|q9Q5{6E9aU$$dCluN*-a|8($kY5me)># zCWxn`MK>)s6eM&=m-VwK&MLM?C^`Cd!~t46n>lG?P|6JpbAMfa&<>Aw7Tx!p*X#WL z?PW<88m=eYkL`eWHHiS2o+{#2l2ETJ{NC zG(=-TZ9=O@+`W6pVkOler;?=bv%}t>_a_%K&N%aWIlcIeEsqU z@YEu_L?C!^(OV^@ApoR7mt&Y$CwbNNg)AB%tw>k9R?>)#(C`sk z#E6WeBHHI}J*lETVi3GE1c)j}Iwu}oqn8T`6 z$Y8uvowGSy!M@MaW+ktJfHZ3qWL3xk9jDZ9KwHn5IAQG?kvbbF&mLzhGFdOHfqnD0 zSoOlSpYaC{3m#|cjAudQF;&-rr;flew$mgK{8435J|!F@%@k0uyuYDS03Z%L+B>7Y zRe@q$Qsq)?y7&EZtU&(l|N6b3`8l97$_G-We28Jht{!h5bv|-&RJ0RzwI63*>Yy9FuHQW`2*C3jJ`o9n22Mo`$6<0<@I=R5 zT(GFCQj_rWX%^_siwWdrW_G=FC0jDl>Ry~N8Zo0-abql)5OF-hP7!C!-CyyjcQAXi z!gcxcKk>J?6q7VxQ)xaTSJ4`!mhs4*qSGFu+F>3StwWgoIP@fS?udcbch3f3Cv$z$ zW4FEqI_gY$wQoFD%X32Tv z$&$*=TkPi6=_X}LSG>KX14sMb6+QWI5`}Vd#I25=mkkjopmSiz=rX=VQh>52C+0F( znsienys9hyChAFzLnmvM?TaP7h7p9}z4|b1IixF_lgCri43_|k+^=!(6uf&gmo$@9?zWlD= z_;y9!&wOI;l)VPHB|{*lc+@Lwi$1P%3KDx%^;AODg**R#r$qMm1=v8+J>JE zyKg;}0=wYM1zBxwaP(Nsdm24+Mf&2|FrMIuVG9^??iKw(H)Fr-9e>aM*waX_DSRgD z8MO(cqP@$z3&}!i2vZpY9^XEFP(OnmsHs!ff2I+_Ih~t)0AJGt$_oi-ISth<{Pyqv zo>_raT&khq-U~Jpc;2v=N4t=@()R?7Q{e`@f%45gwEr=XNT!fdOVZ;pP`v~^GA3o` zSXT;Fr^p)kQCFOIUC>unpH{sycL>_9!qd$sf)=DQG+pA@awt!a(q=Pg+l;;)r9=$(FuTvSr9bm^OEk%FfE!mtSH5nhrMe1N=wr;o1jOxF7SxIt^O7g+I}(YZx1kxd#W~EX(BefpG+#z0;Uh%85r#-z=cB7uph< z5Q7Y68~Q#fQW2efe`xS1SajMo%<_PY?yf*Qy`4m0$Kc9l2}L6KIAl4m7^2#W3~tw- zns*rcDuNCqco?JW6r_tFrvf10-GA3_eD<3^^ZNPv`H{#JYyc=$+7O%9_etP+8rh9X zR7Me{8^gDj4Q6v4Y&w!$jQ#N8TTv@4Qc7vmGUZ8X#a+K<;zqU7cO9J~G1voK!dnEf z-23{`&ikmYQe?CIpxZp6@vDHQL06pPHu)&sq-6Lg+ zxM~C2z7ITyoc^tE|AcFXbkWeYu6g1YA0)U%!?NnA!DAZA5miah5Kb89FbQgrHUr<7 zLyiM)da3?gWhURIC9f&a`{AJ#&ACgy&)W1=Fm*Y(~Ma}oUlH7x`~~DK8ASK3eY;v!n|8K zqU?j1rN#)Q3?qr0Q?T|sf09KMpEG&|x`hQ?i7_wBp9oqrZs1ch^_%^`Z~U{2 z23W$Qq`9D30J#fMWar?w)*y{x(+T>^UB_xaKXMXLiu({i9hoaDg5>ClX~IWh#gK$m z9dfV|B@$*Fi#26N(06rP(@o4V{Q$i=yCpd-KAs$eCsf&-@m-Atdl6I4H_Qbrk|TdE zO4DvWxx72kNXTbK+omkBI;D*O|ypbkC{ku5}^^S)A%{To#9fVm1(&QBh zgqD~ubZyP!yT>}>$fC0gxR&WXC)qSvb8xwciWnOVkKSubAxrN*06WcrU@~`I$2u$a z!gXMj2_AIJtfo^WAy%v^V0@L99(xZ~%+i6ARQ&fRq1AYSu2&22HS?G@FNh;&X18dc zZ|^WxEs5D8ma(v35P3*ecj%8Cjym_GR+q0G^(YiY=H-+pSs^)7DyEyJ&rcCX7R-g($b;Gg` zM1ecZZ92VdihHs5fT{+#3OATEagT)E!*GZWzfLo19yg{S=Z92dL}IFzWFkdZM3P=M zOQ~B7K}`|CUvNn9V5XN6{b?9`v4CNLxsx|!F$r0XO=J^i?&p2S(@S9#WOd@!TMs6S_M)0sbOu<^ zax^*0l|4>Wa*b}I2GJfORU#LGA>)E>!Ul;S-X2jl&fzJtnuG_RNzoL@qc}%(+qnc~ zO!wdWjQEpjz{|^nzl$c2EW<%w^^?rjQdr^BS2bD8k=sX^3@z5g-;zQe!j`(TiKs#k z4BlQU-K-$TIr1REGF_+#wFx!PNK}fyX_`bDu2Z)h!Al#7E%Fs9Z{;2!LRyc&*;^rf zXu#Vqt?MLwCasb!bqhZH7@t6FY6$!Mc%6-bCt#nFoJRLm8OwFAwnw?_qfv)ZXRyD_ zqk9vuV#!f>#=r)9*)xOFe#3fFQ)^<`4||-oL84h)z*E-*9_@a@3r`~g742>S^H%$n zXX$WkJc@tk_GrYbhZ?nLarf@S7NL^8$@NE^3|D^&q}nANz$3uK)tPQ!tYrLt!pGqFdQ zKErMnnu61FdjVWNJ~u(YwLo)SSbjvOaCC%Df%aUA6%IT?kA5Pj66up&+t+nKJKk=3 zzmLEQl=^6bU(RMd%Qkrc@4|0%0r}I{4m&9}>?hPmh#008uL1QE_2MSHdpI7*!so;N62Bbk2&`NJQYN(G%H|iOh7JbgJB7_bWN7#=`-;^drEW ztB*4UiwaM)(!!25z%&p>TlS#>QoqkZsFg2t(WFn>yEmrT1Uo&CiwNeUa)-L+44*gE z-d4&&CrzI&yu%2*aE`^SaNP0h=xjH}^?|WpQ&oIY&f_Z3K4neYP}8|DY6?%tX*!1# zN{sZ1Zl#nsh4~HVRv)dS0vjXkEZ|PXy(u^6+smU3lrwdWOHD#c(5GMj3mXT_P%5VIMhUljCl<%6fJv;O{8K9J<_A* zvPzqP_lfWWJj`@nNt*daO}RETtf0d%13VkouxY@SZP+iN0*Pfn&~YA7<7HKJ>JfAin>2aeGid8@ zvjJUZq`2GATPB?mq%Y35M-uoFikT2>DIvvTqt!H29A(TH_}kqSDF$mV`RR!+xrePy0*Br*Uidu~XfczK>OsN#d;{JB@Yrr)U&!A^ z+h!}be&i2!Ec-E|VJWa8D{yOsmnP_lF2LJQ%*mPb3M5A!RWF3%zCY);gzy`dF4YF! z>qsPT-tRRKyy?3M;gj!T+}1s<45U(S=H3}+T^{5c)U>g4Yp~-XYaWdV3L=a!a|d!o zEg&d2wSul+1n4p68D(H3Hk$unTLI^sz6beU(ljz*jCyS!8(Bb&y|ABcv3F;J0IL)0 zdW?3Of=rCeQ}%*9!_n<6DH+-{@M)mzjaMVup!|fCW*-$fgp?M^e7(&W@*R(-l%M>s zcXjPx3K2B-)0*-{5>G9I92C4S{j&Qd{oOwNROW zA$SHC(xxOx2C8!{jd1ZV4+(S6n#n-bcmcwj8Kzq0r7>odQ5A_(KoY7KNLJVypsOR+ zg3t~abCZ`~#AIniPuKQC=^hMtmlQ0t<}FGT-4#=H6$mL-s-W%XjDHAAYDFxmXwG6@ z6&nleIu`#l^IL7{--|kuxH!z&2tv6Yr<*CK9qvwO!RTb+xh$&641-iTPN0@O!2(oE;Xt zufmvnVZfuMq@WCC_MT0lReUy^L*V0^si!fzZ6vp!N5&L5Dke?lRN55z1%6~rlBG0% zfJ<8ry!tIry^$s3HT8=A;gMka`C9T7{23>VU#B^hEegHUQW?wi2uCcN*R#uy_u$>p zDZq@iyP7f`vs*O_896i})TVf6!hC2rJ7d(!1VHkI&Z+CZqSoBa)n*msOrL+bcjWWo zZKkc&h5=)Rln~?4inC-0EfdXY^>B}qOMi#X^XTo}j=bR2fSbzC4BtV?b|dCROn_Ye zwb>l^xk)l#xiVa0#FsT0ytn82tqpya_GW1AXI%Zvjs^^XV-YU_fT# z9~L1?YP%XDv!3^?rofW3Qkk281Npi&8C-X7Jazh*D%y9Gzk|ZOb9aL zC9U0AdIrkVNT*2{L@NnhZDUl+pt&|Hueq6+l)g~N;X*%Mn^)x4W&k}lpn;DgPwTvd(Ue3a*Y9gm! z4o|Ga4&~i3w1SivrUZ3+zb3&S7QD~BzLy&^*nuIN?@rUm+C#VOIw7P=>hesT7+Mc| z7S>|>7c>c+c|3G_fQ9_Q1eip$lqR1*tmya6j%Oi;DHKnGk zR@SQ;n_7N4oU6w$Vu+0fXJW>jqqiS?{2km^LZx|3lZPZe$K?T6O)bw^2v-ml6$!6D zKcJ$VcMH1Vh#X3F;4n1uZ22_C^2hZyoo<@-PV$5`67nE!sAoh+j>MLp8?zo-Gcc=s zL}KHVupwD;qubL*KaTndAG=mn3z!b2qloJ{#T}|mCzA*vLc&te$TfVP!AP}KrntuJ zkP)X^QX|9%O2mhaJjl&^)vyv|uNJfj61tlYRF^U>mL)hl>5!c+u5B7Bm@|(#Ip_%> zV?JgqJY;bTYR1D+R%Fsb@ZDELgW5YsWVDJ>>t9iOi|CC=u*l6 zBs`BL7IJgmPik8WL=55VJfs^tJ)))NpmI3SS{oXrKv(OMR&`Z3674%US2pC!0pPK3 z62q_bku#?!&U%q6keCrR9@`>XAi$HRKH|mh+ZG|6o}RGA#2M>Kx*RwM1rNbH;=ehv zdJ!#I##jW!40%U8QWf?&>0tN2WrH#gxH@i7st{oUgKA?vQce9vd3*#u;xS zz9>c`CbNF5sR4FVFw#Di>cFGfWI262zP$U0w3(96^OADPAIc}WL*=e;3&WlPSv;o0 z)@ns-lKC;z)I#!11QE0cj0+vs3+o~F1pCXHa|qWgJ}h|1ZmCz8SAZY$MdHoXtu#&~ zO2uV7lJOxejPorQ{StW~r-0LDo)V+zO@$q29^lD9PLf;}z4(sceWlwiuUTjTzU51L zboxEfn?QOqPmDoMALC3@&jvecg}GC*gMh~xHb-2G_q`u{^zp|~(wDcFcSm%C{ahn6 z6n(nyx;52^?@1R;B7>K)kblN>X=vy9d3n1X#1^GWQPF)>^8hCa>AotTLsl-}X;7SO zkN~EPFkJcLPGdJ_dN8nc+KmUNN4GEp5Ax#KL9K8q76|3bBGo=+ur?8(xQ77w3 z#z^AbWJcMI&=$V z=k*dfdYv*Ph<6kOhISmaKT^)@7RMid??)ef2jcbz(0qR^$2Yf4E58U(jR8sB zRIL5$E+ED?uIG+uvhne^QKx{2OHyWQh%!DxOx9zq$&s0PNcD)oVyU~{>MSJOT~b_Y zmoyDpVQxZn8Mrd1Ed5>H(PbWOc2-ndbh;R+Td^#3%X)^VOSKn@qWD=Qf9%FO6>;jonc_mKo=-us&ozqnh zk55>?6g?7`bm8+X=di+AeHl@}Fk6N$>u9(A9KCZC(og9A1TtzT{fWgi3Djy>w5>H% z`Gj58-5o05hxchthY%Oi9PL<}j^s60)NTyJ5*K|_Ni*L}D#?xprrFbj zp#55vKVTVFjAb`X6(@M zIF2xfAT;w3I)+y{`Fn+{k+#Abq|#Ii5+`9Q$Ln4ai!GAFX`NC)S?GeH-N`72jXd;Y zTz&JbHEQlx(clNgJM1*+z;~w-y<4zjQ#i7|z)eTs8Gl9*oIv$IH$TCSDNCvV)kKJ# z33wEoMBeqqf|R*h3%?7MD`q6C+24zcNVP`SGrX@jGn~^+Ad-3<1WXg!AhO>A-dn(v zW=xma=avh7%rX~v4Mxzv2qfe%hssjs{F~7jnFGo}fyYb$4d7H?1UZK)l?~xYT~rh7 z*_fA!leZhvX3n3oG{RHd9R7kkG}*w&C&J1V=4fZBk34Gk~yBScQ@~}CiDhQg@3q5&YX69 zYGy&_9D8rpT?Dh7^xUUZk#D-w_a3^SArYno>E)Mz_wh%D9Xq0XINn9ndo8>f)^GHI z)T2}zu#p=ga3H|S+(z*Uz2M0|!dq9mh>Hql?$%xe*HZf#IzYO32V@Bt%#G)6UbQH0 zQD0AdJdjQobU=>I9G%lPP-n|gp^33l*y(sSP@3)iny+Tf{I>qJ-vD7`Y zRNZU<_3y;baa|cKSj7l0?p_i+5m+aRyfHFORDEDYujf#jKyY&8+AP)P zu7|oTbmNq}aTWU?T(TfoGT#_r{E@%|?J`<&pTpW^%L}avI$K&ztuNN#H({V{#jB*A z)D2cPl)Cej3K)4DC+YEF!Gj-LXz^;ckns{=#Za3WGke{{<`$p{M@FH>7p{c~%a7ks zqe$kUxZ4jEq_j2H=^5}?A2C+@3ryb0sgJYSJ#A5xtWBHFWJsN!8SK@Y7W)&pi^_|% z4nEu<(QFZkj81kG6fj~ReaClz9pGK&77hB~%#)O_-DsbHKCBc2+M?iEGm|ayQVM6< zfJE#GyIl~}%$p!gmy<1vL8L^~lyn#?X_jhG=16Q>1i6`p36*C&qY>ObNx=Wj@IjQeVrn2(~frPbMAxiaWxO zaClhopjeiGcTMuVSdleT`36LD-9{q`8C!bDjuX0Qa2*1k^hZRU1Jib;orDUF(dwQ42PpEwm{=a#{6&l|Of?BV z&|||WfEe7%aAnb`PT+7A&k5V9sSKM6i5kJoO;Qfa!`{|xBuLaN{N0jm7HEw!HRecf zA*8h&+Z2SJ5BHOWIAyaJD`R&s140pD0!tDWdOdRvs!6|w%Us{Dbq_Fg=t}mJ^Zsvc z`UF8bwt4;fo?=rsjKcmqyS!z_R^*Y`O;~@c+)3>>n;zZWy`@zUc3f`Q4vyZZBhDL{ z@9(0P-i|2*Fr!VOio|5fW;Tmddeu4R*0u3&P*Nm@y81loe94hoP2{{=AsIV=$ zPNb%tw^(BaXp%BBLAqOh(s+rw4*Jj>p=y?wc%^@jGimtRr#g`NSP5-?*`` zhR617w2i997yqJRQPa>!tXEKuG$qmE!1Nf69^Nkt4n5dSS^}giKp3f6;El)4q^^l% z&T^`>NuQ_nAM=QwzLr0#p`^7q#J5D1P1e&jXzDsWY+xU|vSjG;H|xK-LBGZBs#^3L z_(-~?&Bg<~dEeuyUD`q3a+m1C`_8$1LNaC|k3l-RG3(*M8xyFl?iI~hcGkv^s{JZJ z2obq9p;$vyG309;Pq6G$O66>XfNZ2g_cM>Rc`4!= zx7^=ivadBIotC(WeM|YS811_z>g!d2@1|)Y?$^)vmn6P1#sF(MCanMF-Se7TV*4I@ z(bX_u9uQ%cP1OHZdh46H{ER7`)&Sz|uKU2~DXz z6>Ha$CJ`?{3g_@*gW*XT5`UJgb}EQ%H}EZsI+a7u0kNu>#}Sg+3T;G41jf2~=u+UJ z7cFtUPRn85+Q_MMEdXS6Qj))C5Y%;BkQ&+Nsyfa@ZmQrFI)UjV{}y$d7AYQ`h5ErF zIIM0{jo#}ECe45+o5pEKwk%jgo085W@SDg#Tr@<+fJnCdFU>?qC^K#zLXH2X~NC@{kuo!L?f{Xb11E3kv-A8`_h+S&L){*za$Ra<4w+qx7pys za0y_lSBN~hxZj>_#>PMx)6I>FNd!pQj#vQGaj9O8(OoO=OmD2IZWT>aG0AWMo@@!+ zp%;h4Ges_&c^TG?lO?>dKR1gYTl9kYT4#TOKpLlL352ItL;K_FCKGP6?>9OmlbUt ziIWO&Y{@efZbUv~+zZQbL@3sYjfRQVycJ!R$dlNG<3!LPX8`Tx6$9Pv#lmY%WS7-+ z44Fb~Iu3dv$A`-vo!vb*`mWbK7D~Lf z3BSKt_uL;|cYw!)tgh3xrg-S&nF$*37y0oM4OjWt~G;oILNztI^H4I4Eg&2cto}QN*`KeNX;%p_K;$vjm6UTB> zq}w&d5m?xjn0M|YPuqLYX&DVaUXoC-{C?yxFQ*2LJ&k`IGluPE%Wf?-NoCCBW;2y7 zn0qX7ansF`Op)Fl7CRcfFI&)|8}Np*xAl=D7FzDqOgQ8l{9oF-Q&2RwnJix*mVRXv z?Z)9fK5{q)v@r-@Lnra)I%LV0j5W)|)PGJ@2Vl=IaZZ+WV-Ds4D^t87Li^ zwA|ITb;07Gfg_Ew|l#s!2gXJaTI3ZDAIuW&svwkNVzJ-Kpv&am%vz`Ib(#Li^CXM>5<^KnGt459mMFw_Z zAwA8OjT6Za!E-ouaJ$pZP}9LJyOpL(FlrU5OGTWvfDGxPjV_Id=*$-q-%1mxZ7yNP zd;ZZxPlg`%v#Lt^MT3A(7Z47tUEOXfA_xv;!BUXHPL{Ut!hG^xewtLOtyCzwkCH8r zfXcn92IExZGuVxfHWjQj^H>{Y15R&irmpU0$NpDAv}DB?*=#*6U6j;gt&up8n6aN* z3dl`5!XpsH2_U&%Iv^lVRhgQ|yX0;!M!eV^)cmI;cX6P;>uEJ6VvqS*o6dZcPRBnw7godf^ z`dtGMM(zeUH420tfky&W^&$kdXnAoZ#^oh?&No^@Uq2cTh&_1v#{FFPjYCwCIDM)% z7-wLt=zP20y;XlMnXLiui8y>8l#pSGltC%yBb22|lvFncq25FCz}<(VV}i~if#x~m zTuM+0rMti@R1l&NbT*`sn$(A?OOD5}TW%1V1k8Y^RIH_iGE@6~xS$~z3{iUxhDUqw zctHd)gNkuX*u{vv;a{0BU_B7vV>YMsa%gv`*PmxIBV3chWv-)G@5&XpZFER4r)xDyY%gQ zCD|i;UDvEr&Xx+m8*tN#*9G7$K!D9s>190@#u1sfx~WxL=5zJuq{=5OUjWa@{vJ5= za+_u>XhmkbR5p;)Eet1kVfb#fx@j30Eq=nX;h?N!Ke|e4OR^)v36gA65w?iG{DRi7 zL`!sR0aT6vmplu#N&h(ar>8!@O+1QSkv7r6!9&F|A>yC!3v~myN$UbqmVD_IAXmT> zbwRuADxZWA66yk|v#pDLTsOwuG?+G|EnH)J6v%NN2?Oyo0Ak zNNcG&;TGTkd7v&GWLw8U&QKnE>&!Z-EdFJ}#|i+ct6<8;42vMz#;~9=)B!(jN8|rd zBJA_mlQryd~$N5}WT3)R<2(AA~^@7;?xS%E9@(4i}#I&!p1zXi{!M2rxtw#_x$cOSi7 z1KqySgAOzLvHfPkx!Dks@x*ELn!! zwQwJc6Jxh>cX@kjd{Mvd>EQ(M=nbNTWY%Vuxk6!#B+`PlioBZWDrvumXCTV!#c@&oQa{n0H86oSMjlQ9;AP@4#fa9flBiZkCrH z3%tvR_gqQ@#7x)O0Mi_urOv4>>pvIXu;ynJOyDyx_j9N>Ie=tZ98S1OC}Spsg=t7X z5{7h=2L}(s)HxR9Z-B~$2b;3Apy5zP_GB}ZPo%(g)Tkm zNF?&h*jQ1mP?rFd-dIy0wW{poD^1g9^0~=d6bl>|9iz3=&2XGEEywN~z{r?lSQL4D zajA<%;moujl*1ka4_^acNtO+wTI*Pjm)SI9<73nhy4-e9XDRwc%R%RbKDw7M&MY;()?0DQ)+&)L^TzQ#IEjQz1JI0INVHHOru z3?AGf;zU9&h?WhE@3HB%69VhVH_CmP8lCyBzRpnZ}U`yM!S&qCFJm(ov)~ z>@y@6sc=B>Y z7R;}F_DjYL`*PQz?C@A;R_y{g?R7{uRZfmZ^yUl|_G5+3NNf$eA{N5sUBDGQ&#jS0}#Jld+%W)Srz;U~$1 zIqHxi2|56cVh%dFUidjPu8P*pr5Z02?*yA8Z7~C#f{#;A9uQ}$^}7Z1YQ!F8Js9t5 z%D+zjV;xTFOw+ump7>gcjx$L#;8KpfB+qW=RZ;$hQTBXY1CZ zL2FY=lW<4Ja5im1;X-9=57;cH%~RTZd-p!Kcr~CIL+v@S2W?XHn?4B>O5A*uCr0w; zz~ir-j()E}jg)k=8*RY6n>c;eEd7|ai+tf79=t1o_ij6d$HbSI|1DSma>T*P**R4U z%NGUnJg7~9S6<1~59D;d@oOJ>+UgQ$>K^uOge>BKjPN6K8r`4LCMO~FO5AHPk8-6* zW!jBm8VL(q;Zq#I_0XpCk06xm(L)RS65)H3Z_0V5;T)qo%DzqI(e%{;JzdRWC97Mk zyPmYFIl*p|I2zF~gj1gY30LJC_Dlx(Act!oRU!R}?r<(ygeU)brA^K1rr-*^EY&c- z(2-}zO}hR77EJ*kI4P|{n{Ni4JLFj0VKUwqWZD!2C%PYMLcf4_8kXJWF5u2tavVB| zER-DY;CXi%<%+&xWlYwNU8}7qo8@jN0LpwY@I%4gjyxLoiDauTT09tz; z5|ccwIqyySHBV4G4u0CZ+=m|D(5Buh>7?FMo~qj%f>=g6HTlX`)>PmziWP9?(ZsHl zQpp3vp3F7|JxyK9c%%Mr!yJhAy@CS+RZ1KCm@bc!FeYIzB*0+KhWo0dU#UV*sV~<4 zMHx7zSIi+m&=+x9hAnLZoJ{7^@bU`y6g+mkm|VCPoqZ~+RiEwLHi(~~2rO`@lREeP@>pk0n>5Jatu< zJ7QJq^nun6ZITN@S~5T8P`N$lZ`x^6Or;%hGkSFDScke@?GlJjG0nM zl_LY*cL+ROTVQWC#gL9N21z)b!r85xyei=BDT?|+O06lHmTng5@;rKHLJus9=bOny zS4J27EDsId7kn9|#KrPzh0=(dDXnS7H7iT(b9}H&vmW)P+kq;2-(xzj-Ai3YqaY*V zz|h>a#;T>frpcIl@SZ>2$isDIzm&&&fhTX`CFi$C#O&DR-gQAL6X^#@zXq4Lpv4%E zLWRH+hJYtu;=n6~6J3R0gF_i?_y(LBjWeugkbUe zH}$q9g^w3`OtlTZA2P@b9Y{`owgT@_YbFfw6ldzp!A!OfKnjYYT=<&bfW{Pf=CspC zIixPR9hS&jt|1jeYqOZ8n>HB;od<$xa>5oKhzU8~qmwo)=Mf3)JzOST1cbMUQ`eGN*}4JMATec1*U6b>nCY0g91x^< z1|si{GY|VJ_2^RkiF^h#;bo=@#G>R7;$2u|z5y?tdowc);t_yCb4_2~b#tp@{LOB1 zDs9mT+X+L~U-uWR-Er(Gc`9pi!(q@8X%$MohzU!Qr{lEU3Bs0On=sEsI;dy8_LF9d z1lrXln5ADKktZ=Oe6K@#M0qnJ^cVodEA7t4BRKBTT-cT7j&A;-sdrN{Aj4r)SaHZ6 z@W)D<2)1Q!FgRfssnL~SmM-fkT91XQRe=R{6H%fxxm(YjLY{TA3&h1V?AvIqizWMn z0rU({7}q;=yLypJ;2O)=}sAsqwrO zvBHTf5WJubS)-)%%&?7P0D3{Nm_K`ck?EAeWB4Ik-_!8#x(sAkk%_r_Dvaf($V#@ATOPZV~eI zm?dpRTMisahs3!p>q^!N{_yq=@C>Pv0MdIE~rDlpkAh8g}xT&keR!(&?0J7Y-9 z2cgEB`UZ1r9%)lSC}xwcz`WhR5vytZJIJJy3gF-++bHM6qG4iXOY2Zj8cH>7`kE-Cw6i2j;S(eudMfBO&~QP-hj#* z^TlXHuo0RJWLr9ifxsgK`6E+?N;HTxM^>AXo+sgnwzv(&0#S}2J`LzO@|>QZY6rn) z7ourz=KRS#CTT{iJ|a^_nqL;p~d(p6_S85>W6*U0ir27 zmt9^$S#A0V9O7Ld2lpKclELWq(s0r6VH(CB9o;@0UE&od&6Zp8=X)l$xW22ok2OpP zV7&mKhPq1-A}l(2YIIB8IE}tRYjjNc@Kd7n2rSw^7Bo-NjfQxPpwLp}BdW&Q_UwTE z0M>g{Qh^M(Gz>jPgTNtYi`&eE08f{W=Cp}bZcz$J129PfR=wA1z{`j_a+1{js-eKV znY*O+9$H%K#u^VbfZS)yWaGnw_eEcJy_`L-3V@qtIOVuZ^L+7}kevzZx$>@(0O@pe zi4OK*sa$CqJn>>``1a=>v>5Fj*2Ah_bPFQwoiO`!r_zKW+?dZOh8}yjpr3L}w6YHD zFcrN5&(JEWRj61lpDw{p_Xq{_VP(evf!8#G`3Rz`4mM>x4+0zg->zaPSoQS5t4dB) zy1{(n(0Ro+plvW3?yQlF0FEA@1acZhchus@LCnb(iFS_`T`dJe%Q}O*VKo5@xWVZ$ zM7)VS$W?2nefX0xOAuN!sdaNtRZ-eTzH$DWEDPp$Go{j1OkuS|N4D*6u!@{*`OP(8 z&Z79>1q(We7Z;0X-C$x*hf`E5MYLtBo+M;jE=(u>GA{T*)gRpf-op5yswFq}RYoce zl9=4;MibNc$t_Nh0T#a$f?&6RCnNGiY{miFy(Gzb!Jq6b#3ylhLXIThK+p6FhGTg+ zl99jzR3kK`4!Iy;#|Yvu-gQ0he(co|F+@?7p`T?jLCKScWv+V8q>$d6j;>CIV7<#}`zteaD<9GMaBO!I^*EfsnZB}R} zK`brRlP~X0AO9S;)_q(wueoHxiLO z?u{T&LoE6Np;16OBOj)lwDle=53Tzh;8C&cIhH*&2A*Wk_w@6uoJ%y;wjJ8f398v{ z?nA4n43!~Lt-d;-Cdg}yfVwq{2z1KD0J%$xYs!FzTb!g-+uRUFUMZlzfG4$Kxu{xF z`9xAnc14PAkgpLp3|coI9O2|amwrblQYI(@`QDhMR{iCB(ZYEcea zjGpC+TZCv9*5=Y?U9~l-b(L4&9UQzb{3^_=-fX$AS>z@NQt@U*LeE6|=F=AgDEsx1XpL(VGOH?A*CXD0erTGi^%}f4tfkQR!8>Slz-4X;qK$dnA3yV?2sv zPu(#lO5-^cBRQ?WOpGN6+jDFhgdR?eEv?XpT|wJki^; zv|s=Y^BAKJq(teUf&D5VM>0oZ)UawLJfoedn!dxz$=pSx-PxI`1^b2X%P#UWy$ z$@7I@PQ~f6YPcw-AsJ?Pd3*1CdVhR6%bn6deSiHqj+RF#$XhV2Sb4k0<` zc#|7ZGiSKX)S&ZlQPE?oYTs+hm;;uB)U~{&1Bt5ZuEnxUmW@4|pR#6f`uWt_vHIO`3K4vLV|6I_@l9b-+-DU& zAE0w7EL6F+tN>wEHnCQhVON}ZhJ@Gfn}h93K!fX6KVeFYnr z?}8kc30VY2F4~x2$`p`0;H09C=olCR^%asM!0VUV65^kxcjlaW$c3Oj0X}d(xt$=Tbq$9`e@xZqdtKgsn$=Nv{*6YTxGaT zqke#Dc?3Q_RSBvgdg{@YlQPjtvRZQ1V*CJZ1Rj_v@J!XB8%#Lx?$G`qR2l;wg9XWE zNu4`m_(#{CMEwnf6q^V{Acu-yRJspw=5sQx2uzmdW(^z8w0rE5%XE|FR`vifBS)m3 zLUYMD2Oj&FoADi+JgH}llYKy@$sWf%vNccFNDzPUWiEp; zD~nCqRJr+ew@1pG=9){IilE7@1fi{Na^ueK;UH^u=>}80NXx$9)U&HfN6}zH%_vBg zic~OsYj)@@A-K)|ZtZMx8>ylwEG8^~P1KKFuDI;f|4*vodMZaaGDwcfnJ_41MHY;Z z5R(iTG)piWV8CjaM-15r-+2bX0_^TiYrV+e>Cp>jdN~4gB5!=dR`Y6PtDz9!X(nr(_F-_NHsA&n6J)hBSN)5sJ zSDi>=P6@feW(Y#)C3n-!VZ!Wr_oAZ?`2HEDKfS!H&p=1uEo($5-l?}4la_8^EUO`r z8Qw!9>FtoZ5nDM~QO8}BFy{q3D7DJyf}vm z#KLqQ-isZ*1BjujZcDEY6nbT%B` zMju6Q7ei)O{djzAx|F8OUjP-y8FDnxUom#2W@NpxW+odYa)o|cEC{Deejk{>%PUol z9wx~jHUB?U)10jkqVNpZpyFNTMM&Kt_#zke7{kV4+v#pMK2J$yLLh^A+zs!9o*MRB zZ^kl=)m8ePOqS!yEm=(Wc?M)di0s{8scKnuM;EG(kq~L~sx#6lC$mOg0inPXQwDgl zaD20z*ma05lJhGy4(Q2>5;9{<*Q6%-7g5xmf|>d|fhVEu9igWtUArb9Bu&QXrv>&N z$hT_fOZ@r}Z!%G*1W;i3t_zG}cFLE4pRki|USHN&S*R4kKR`QSRY1mcacqs{w-gOyzQQ{3E93lMC+ z=I6yYK#jq&csU*Kd@chd&b+}o`pI<+xBzdj;L{7<<(b{syNdp z6*eEA0B?YFxjA@PAbs`aUM{z!9GCRtJGtzZczV*o^LNc4kVRFW2WaM;<|^-18K7x zXz_3-O)t)=Zpog9ZI$+>p~;e}Ixyx34Q35AV;65h+KfdR611potHWkBi*yC0VJC?7 z7FNqLEZFDE+2Y}XsHjX6eP5;6zGHOzB0~zw%~zS~8vY7S1V|~wQ|2?V4mky~C|jU~ zX_Xrg2r$!lhwfn#yBow!ce<>dWTLU$38E6?y5`prwHxKLJi{9v^{Hy*urIURaU4ZPTqC_*Xgs-@f`Xy|fu6!jcAn zg@X*Pu$LLQ5+{`kkey#%NSJ!|^4t0O=~P2%zyyoS)cBTADpLTA8+*zzPfa3t=(Osn zKoxmoXS_U^9zmJPCbejHXpSN_K^Oz%6>qFC`Q|lM4~)_xihcS7vZOo1SKO^vaDxtF zq5N^d8UK0(@0SZd8`jis#FL9~}!Bf$3fzNbn{Y#P5Fr)o9wgLaXa`vR5SfBj zMumY<3o{eHVL*?O2jH{W%G)-4WV@0v#}&Lke%G1TG(DXHrj95@^QMdK zJ%=^@pF<^d>YErwJjL@}l_l3JOd1DG@$Q|bZ+nnU#O82w2c$13SAPChN1kS`9uyh* zlZFq-kg;$HarFqKZo(B_N}E5mTN*tZYXXr=6NKDeXP(86-*~$gD{9e^t;m~)fIKM&t+Kf!zy9f|Fs)&O7yd!xvws~cUSw;c6q!2r@L<07R zfBI#mOjxFQ1{0$lPk|?DnmaQu32u=N-ef2TGlRkaM=~Mri*Ts3lF}(MI8jds-BBQ+ z>SA%Bf~r39>u|6F>YIZ{qwwb&CmcLIc+f_zG#r!wXmvaHsANd4*xinDzu}dhcVpT7CYL!!*2iQ z9`JTsCJU=M(;p9y3+?F*9Y$m!Z?be5`54{GYd!grt9?bPfE8%%b?*$@36w8NpnHLb zrv19V%tsx4Qftzo6C#VqW8T>oKFj|fZH}4{Y39Gc0hvxez~ebzEiM12Wepe10`m#* zOtWnpdZAk7y#m%d%qcjN8L*)PHb?qR2r`Kx zV8=55VXd_JYrUcF*Znh!Jta(@iRILthu78*@N9h|i91hJcalffyataG8CTbs7!EzDXWJ3^UjVIHjU$G1@06FI zH2yFcRCb4r2k)H-@tn6KfbQ|V(W*n3a7Jmbx#k-}zC3+^Qi2kDEy(V%gutUPW4JC2 zusoQo`cEft4I|4uosg{;1n)Gd*3l5&Wl*t*TvgD0n}FK{5jKGtzQr1(@3#=J$f6Fn zZWWm3y?^=sGh)B)XyV+?Or?3K6Qn`kLji-Hc-k>*3(h7q@%F1@`Lo$qU{5V#Of)SBW~B+>*t{m@DtE&3Yq%E%Q9erbq{ zK)3e>m+B(HF8vmAmaa`yp3{GmGgXt*o~Lk&<8WezUC~`t5(2`ov^c#nL8pkUhTIEc zw(a|1R!cF~`siCiTD8cLCAe;n#g50trBnQhb&XWH`8!gY3#G}$L1OP^q_kOV86^K=|Ug^R)pq@s8 zUoh7QaYE9)hjYhs?Iit=^TeP4xNO-1YV>eCkKlWAvH`DT4`MQ&3FVnIbEiSr`sta?Ld18Ofq$lmE59m@uQf1^?ALJ709fX zPk*lw-||23WHe333CVI|qSwX&JR4ICJV+9hFEbACxl9fgH28s`YKlg+47)gsqO2t*xi2?@Lr4WGcHR^g#3 zof-rY)4Z!01N1bJhmnAK2*BgWlaj0m(DyK~hNz^uJ8ir9@=ia_=OsnU^WC#>BzL~Z zsf`vLFBN-{2n9z|HNckp`s$M~i8n*99GOjFMk)e|%4VXcf)5KxtzHkq;hO{(O=Kg~ zEtIRgox4d#(I7kO0Nok?EM0Hm5r*BPEU4LJUfe%1Q;2Fv>HmX=2I=ENTx@endi|wN z_pKLiQowWQ>ltjx2Q+#_3+zMFMM75jlJr@0rpp<63|E!L-)olbWYpES{r~^~07*qo IM6N<$f@xp?761SM literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/team3.png b/section7/eazyschool-end/src/main/resources/static/assets/images/team3.png new file mode 100644 index 0000000000000000000000000000000000000000..27b10a319f6dd8bf3851bcd5fdf94ca502fcb623 GIT binary patch literal 78307 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 z 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

~ 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 z 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 z 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 LNkvXXu0mjfi!r<7 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/testi1.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/testi1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..965bfe0a3cd9a3c361061754a1ef3621cdf1e54b GIT binary patch literal 9009 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 E3-=x0ivR!s literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/testi2.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/testi2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e31e08c4a22cd5654b29c8ff58a4813f01dbb0a8 GIT binary patch literal 4971 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 JO|STT=0A0T&!zwX literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/testi3.jpg b/section7/eazyschool-end/src/main/resources/static/assets/images/testi3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8c104ecafdbc00ab5db856b744a31099d0781580 GIT binary patch literal 8824 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[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter(t=>t.matches(e)),parents(t,e){const s=[];let i=t.parentNode;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)i.matches(e)&&s.push(i),i=i.parentNode;return s},prev(t,e){let s=t.previousElementSibling;for(;s;){if(s.matches(e))return[s];s=s.previousElementSibling}return[]},next(t,e){let s=t.nextElementSibling;for(;s;){if(s.matches(e))return[s];s=s.nextElementSibling}return[]}},n=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},o=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let s=t.getAttribute("href");if(!s||!s.includes("#")&&!s.startsWith("."))return null;s.includes("#")&&!s.startsWith("#")&&(s="#"+s.split("#")[1]),e=s&&"#"!==s?s.trim():null}return e},r=t=>{const e=o(t);return e&&document.querySelector(e)?e:null},a=t=>{const e=o(t);return e?document.querySelector(e):null},l=t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:s}=window.getComputedStyle(t);const i=Number.parseFloat(e),n=Number.parseFloat(s);return i||n?(e=e.split(",")[0],s=s.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(s))):0},c=t=>{t.dispatchEvent(new Event("transitionend"))},h=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),d=t=>h(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?i.findOne(t):null,u=(t,e)=>{let s=!1;const i=e+5;t.addEventListener("transitionend",(function e(){s=!0,t.removeEventListener("transitionend",e)})),setTimeout(()=>{s||c(t)},i)},g=(t,e,s)=>{Object.keys(s).forEach(i=>{const n=s[i],o=e[i],r=o&&h(o)?"element":null==(a=o)?""+a:{}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase();var a;if(!new RegExp(n).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${i}" provided type "${r}" but expected type "${n}".`)})},f=t=>{if(!t)return!1;if(t.style&&t.parentNode&&t.parentNode.style){const e=getComputedStyle(t),s=getComputedStyle(t.parentNode);return"none"!==e.display&&"none"!==s.display&&"hidden"!==e.visibility}return!1},p=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),m=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?m(t.parentNode):null},_=()=>{},b=t=>t.offsetHeight,v=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},y=()=>"rtl"===document.documentElement.dir,w=t=>{var e;e=()=>{const e=v();if(e){const s=t.NAME,i=e.fn[s];e.fn[s]=t.jQueryInterface,e.fn[s].Constructor=t,e.fn[s].noConflict=()=>(e.fn[s]=i,t.jQueryInterface)}},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e()},E=t=>{"function"==typeof t&&t()},T=new Map;var A={set(t,e,s){T.has(t)||T.set(t,new Map);const i=T.get(t);i.has(e)||0===i.size?i.set(e,s):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(i.keys())[0]}.`)},get:(t,e)=>T.has(t)&&T.get(t).get(e)||null,remove(t,e){if(!T.has(t))return;const s=T.get(t);s.delete(e),0===s.size&&T.delete(t)}};const k=/[^.]*(?=\..*)\.|.*/,L=/\..*/,C=/::\d+$/,D={};let N=1;const S={mouseenter:"mouseover",mouseleave:"mouseout"},O=/^(mouseenter|mouseleave)/i,I=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function x(t,e){return e&&`${e}::${N++}`||t.uidEvent||N++}function j(t){const e=x(t);return t.uidEvent=e,D[e]=D[e]||{},D[e]}function P(t,e,s=null){const i=Object.keys(t);for(let n=0,o=i.length;nfunction(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};i?i=t(i):s=t(s)}const[o,r,a]=M(e,s,i),l=j(t),c=l[a]||(l[a]={}),h=P(c,r,o?s:null);if(h)return void(h.oneOff=h.oneOff&&n);const d=x(r,e.replace(k,"")),u=o?function(t,e,s){return function i(n){const o=t.querySelectorAll(e);for(let{target:r}=n;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return n.delegateTarget=r,i.oneOff&&$.off(t,n.type,e,s),s.apply(r,[n]);return null}}(t,s,i):function(t,e){return function s(i){return i.delegateTarget=t,s.oneOff&&$.off(t,i.type,e),e.apply(t,[i])}}(t,s);u.delegationSelector=o?s:null,u.originalHandler=r,u.oneOff=n,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function R(t,e,s,i,n){const o=P(e[s],i,n);o&&(t.removeEventListener(s,o,Boolean(n)),delete e[s][o.uidEvent])}function B(t){return t=t.replace(L,""),S[t]||t}const $={on(t,e,s,i){H(t,e,s,i,!1)},one(t,e,s,i){H(t,e,s,i,!0)},off(t,e,s,i){if("string"!=typeof e||!t)return;const[n,o,r]=M(e,s,i),a=r!==e,l=j(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void R(t,l,r,o,n?s:null)}c&&Object.keys(l).forEach(s=>{!function(t,e,s,i){const n=e[s]||{};Object.keys(n).forEach(o=>{if(o.includes(i)){const i=n[o];R(t,e,s,i.originalHandler,i.delegationSelector)}})}(t,l,s,e.slice(1))});const h=l[r]||{};Object.keys(h).forEach(s=>{const i=s.replace(C,"");if(!a||e.includes(i)){const e=h[s];R(t,l,r,e.originalHandler,e.delegationSelector)}})},trigger(t,e,s){if("string"!=typeof e||!t)return null;const i=v(),n=B(e),o=e!==n,r=I.has(n);let a,l=!0,c=!0,h=!1,d=null;return o&&i&&(a=i.Event(e,s),i(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(n,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==s&&Object.keys(s).forEach(t=>{Object.defineProperty(d,t,{get:()=>s[t]})}),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}};class z{constructor(t){(t=d(t))&&(this._element=t,A.set(this._element,this.constructor.DATA_KEY,this))}dispose(){A.remove(this._element,this.constructor.DATA_KEY),$.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(t=>{this[t]=null})}_queueCallback(t,e,s=!0){if(!s)return void E(t);const i=l(e);$.one(e,"transitionend",()=>E(t)),u(e,i)}static getInstance(t){return A.get(t,this.DATA_KEY)}static get VERSION(){return"5.0.1"}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return"bs."+this.NAME}static get EVENT_KEY(){return"."+this.DATA_KEY}}class U extends z{static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,s=this._triggerCloseEvent(e);null===s||s.defaultPrevented||this._removeElement(e)}_getRootElement(t){return a(t)||t.closest(".alert")}_triggerCloseEvent(t){return $.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback(()=>this._destroyElement(t),t,e)}_destroyElement(t){t.parentNode&&t.parentNode.removeChild(t),$.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.alert");e||(e=new U(this)),"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}$.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',U.handleDismiss(new U)),w(U);class q extends z{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.button");e||(e=new q(this)),"toggle"===t&&e[t]()}))}}function F(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function W(t){return t.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())}$.on(document,"click.bs.button.data-api",'[data-bs-toggle="button"]',t=>{t.preventDefault();const e=t.target.closest('[data-bs-toggle="button"]');let s=A.get(e,"bs.button");s||(s=new q(e)),s.toggle()}),w(q);const K={setDataAttribute(t,e,s){t.setAttribute("data-bs-"+W(e),s)},removeDataAttribute(t,e){t.removeAttribute("data-bs-"+W(e))},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter(t=>t.startsWith("bs")).forEach(s=>{let i=s.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=F(t.dataset[s])}),e},getDataAttribute:(t,e)=>F(t.getAttribute("data-bs-"+W(e))),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},V={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},Q={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},X="next",Y="prev",G="left",Z="right";class J extends z{constructor(t,e){super(t),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._indicatorsElement=i.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return V}static get NAME(){return"carousel"}next(){this._isSliding||this._slide(X)}nextWhenVisible(){!document.hidden&&f(this._element)&&this.next()}prev(){this._isSliding||this._slide(Y)}pause(t){t||(this._isPaused=!0),i.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(c(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(t){this._activeElement=i.findOne(".active.carousel-item",this._element);const e=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void $.one(this._element,"slid.bs.carousel",()=>this.to(t));if(e===t)return this.pause(),void this.cycle();const s=t>e?X:Y;this._slide(s,this._items[t])}_getConfig(t){return t={...V,...t},g("carousel",t,Q),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?Z:G)}_addEventListeners(){this._config.keyboard&&$.on(this._element,"keydown.bs.carousel",t=>this._keydown(t)),"hover"===this._config.pause&&($.on(this._element,"mouseenter.bs.carousel",t=>this.pause(t)),$.on(this._element,"mouseleave.bs.carousel",t=>this.cycle(t))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},e=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},s=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType||(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(t=>this.cycle(t),500+this._config.interval))};i.find(".carousel-item img",this._element).forEach(t=>{$.on(t,"dragstart.bs.carousel",t=>t.preventDefault())}),this._pointerEvent?($.on(this._element,"pointerdown.bs.carousel",e=>t(e)),$.on(this._element,"pointerup.bs.carousel",t=>s(t)),this._element.classList.add("pointer-event")):($.on(this._element,"touchstart.bs.carousel",e=>t(e)),$.on(this._element,"touchmove.bs.carousel",t=>e(t)),$.on(this._element,"touchend.bs.carousel",t=>s(t)))}_keydown(t){/input|textarea/i.test(t.target.tagName)||("ArrowLeft"===t.key?(t.preventDefault(),this._slide(Z)):"ArrowRight"===t.key&&(t.preventDefault(),this._slide(G)))}_getItemIndex(t){return this._items=t&&t.parentNode?i.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const s=t===X,i=t===Y,n=this._getItemIndex(e),o=this._items.length-1;if((i&&0===n||s&&n===o)&&!this._config.wrap)return e;const r=(n+(i?-1:1))%this._items.length;return-1===r?this._items[this._items.length-1]:this._items[r]}_triggerSlideEvent(t,e){const s=this._getItemIndex(t),n=this._getItemIndex(i.findOne(".active.carousel-item",this._element));return $.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:e,from:n,to:s})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const e=i.findOne(".active",this._indicatorsElement);e.classList.remove("active"),e.removeAttribute("aria-current");const s=i.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e{$.trigger(this._element,"slid.bs.carousel",{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),b(r),n.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add("active"),n.classList.remove("active",d,h),this._isSliding=!1,setTimeout(g,0)};this._queueCallback(t,n,!0)}else n.classList.remove("active"),r.classList.add("active"),this._isSliding=!1,g();l&&this.cycle()}_directionToOrder(t){return[Z,G].includes(t)?y()?t===G?Y:X:t===G?X:Y:t}_orderToDirection(t){return[X,Y].includes(t)?y()?t===Y?G:Z:t===Y?Z:G:t}static carouselInterface(t,e){let s=A.get(t,"bs.carousel"),i={...V,...K.getDataAttributes(t)};"object"==typeof e&&(i={...i,...e});const n="string"==typeof e?e:i.slide;if(s||(s=new J(t,i)),"number"==typeof e)s.to(e);else if("string"==typeof n){if(void 0===s[n])throw new TypeError(`No method named "${n}"`);s[n]()}else i.interval&&i.ride&&(s.pause(),s.cycle())}static jQueryInterface(t){return this.each((function(){J.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=a(this);if(!e||!e.classList.contains("carousel"))return;const s={...K.getDataAttributes(e),...K.getDataAttributes(this)},i=this.getAttribute("data-bs-slide-to");i&&(s.interval=!1),J.carouselInterface(e,s),i&&A.get(e,"bs.carousel").to(i),t.preventDefault()}}$.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",J.dataApiClickHandler),$.on(window,"load.bs.carousel.data-api",()=>{const t=i.find('[data-bs-ride="carousel"]');for(let e=0,s=t.length;et===this._element);null!==n&&o.length&&(this._selector=n,this._triggerArray.push(e))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return tt}static get NAME(){return"collapse"}toggle(){this._element.classList.contains("show")?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains("show"))return;let t,e;this._parent&&(t=i.find(".show, .collapsing",this._parent).filter(t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains("collapse")),0===t.length&&(t=null));const s=i.findOne(this._selector);if(t){const i=t.find(t=>s!==t);if(e=i?A.get(i,"bs.collapse"):null,e&&e._isTransitioning)return}if($.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach(t=>{s!==t&&st.collapseInterface(t,"hide"),e||A.set(t,"bs.collapse",null)});const n=this._getDimension();this._element.classList.remove("collapse"),this._element.classList.add("collapsing"),this._element.style[n]=0,this._triggerArray.length&&this._triggerArray.forEach(t=>{t.classList.remove("collapsed"),t.setAttribute("aria-expanded",!0)}),this.setTransitioning(!0);const o="scroll"+(n[0].toUpperCase()+n.slice(1));this._queueCallback(()=>{this._element.classList.remove("collapsing"),this._element.classList.add("collapse","show"),this._element.style[n]="",this.setTransitioning(!1),$.trigger(this._element,"shown.bs.collapse")},this._element,!0),this._element.style[n]=this._element[o]+"px"}hide(){if(this._isTransitioning||!this._element.classList.contains("show"))return;if($.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=this._element.getBoundingClientRect()[t]+"px",b(this._element),this._element.classList.add("collapsing"),this._element.classList.remove("collapse","show");const e=this._triggerArray.length;if(e>0)for(let t=0;t{this.setTransitioning(!1),this._element.classList.remove("collapsing"),this._element.classList.add("collapse"),$.trigger(this._element,"hidden.bs.collapse")},this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...tt,...t}).toggle=Boolean(t.toggle),g("collapse",t,et),t}_getDimension(){return this._element.classList.contains("width")?"width":"height"}_getParent(){let{parent:t}=this._config;t=d(t);const e=`[data-bs-toggle="collapse"][data-bs-parent="${t}"]`;return i.find(e,t).forEach(t=>{const e=a(t);this._addAriaAndCollapsedClass(e,[t])}),t}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const s=t.classList.contains("show");e.forEach(t=>{s?t.classList.remove("collapsed"):t.classList.add("collapsed"),t.setAttribute("aria-expanded",s)})}static collapseInterface(t,e){let s=A.get(t,"bs.collapse");const i={...tt,...K.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!s&&i.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(i.toggle=!1),s||(s=new st(t,i)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){st.collapseInterface(this,t)}))}}$.on(document,"click.bs.collapse.data-api",'[data-bs-toggle="collapse"]',(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=K.getDataAttributes(this),s=r(this);i.find(s).forEach(t=>{const s=A.get(t,"bs.collapse");let i;s?(null===s._parent&&"string"==typeof e.parent&&(s._config.parent=e.parent,s._parent=s._getParent()),i="toggle"):i=e,st.collapseInterface(t,i)})})),w(st);const it=new RegExp("ArrowUp|ArrowDown|Escape"),nt=y()?"top-end":"top-start",ot=y()?"top-start":"top-end",rt=y()?"bottom-end":"bottom-start",at=y()?"bottom-start":"bottom-end",lt=y()?"left-start":"right-start",ct=y()?"right-start":"left-start",ht={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},dt={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class ut extends z{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ht}static get DefaultType(){return dt}static get NAME(){return"dropdown"}toggle(){p(this._element)||(this._element.classList.contains("show")?this.hide():this.show())}show(){if(p(this._element)||this._menu.classList.contains("show"))return;const t=ut.getParentFromElement(this._element),e={relatedTarget:this._element};if(!$.trigger(this._element,"show.bs.dropdown",e).defaultPrevented){if(this._inNavbar)K.setDataAttribute(this._menu,"popper","none");else{if(void 0===s)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:h(this._config.reference)?e=d(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find(t=>"applyStyles"===t.name&&!1===t.enabled);this._popper=s.createPopper(e,this._menu,i),n&&K.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!t.closest(".navbar-nav")&&[].concat(...document.body.children).forEach(t=>$.on(t,"mouseover",_)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle("show"),this._element.classList.toggle("show"),$.trigger(this._element,"shown.bs.dropdown",e)}}hide(){if(p(this._element)||!this._menu.classList.contains("show"))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_addEventListeners(){$.on(this._element,"click.bs.dropdown",t=>{t.preventDefault(),this.toggle()})}_completeHide(t){$.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>$.off(t,"mouseover",_)),this._popper&&this._popper.destroy(),this._menu.classList.remove("show"),this._element.classList.remove("show"),this._element.setAttribute("aria-expanded","false"),K.removeDataAttribute(this._menu,"popper"),$.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...K.getDataAttributes(this._element),...t},g("dropdown",t,this.constructor.DefaultType),"object"==typeof t.reference&&!h(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError("dropdown".toUpperCase()+': Option "reference" provided type "object" without a required "getBoundingClientRect" method.');return t}_getMenuElement(){return i.next(this._element,".dropdown-menu")[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return lt;if(t.classList.contains("dropstart"))return ct;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ot:nt:e?at:rt}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem(t){const e=i.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(f);if(!e.length)return;let s=e.indexOf(t.target);"ArrowUp"===t.key&&s>0&&s--,"ArrowDown"===t.key&&sthis.matches('[data-bs-toggle="dropdown"]')?this:i.prev(this,'[data-bs-toggle="dropdown"]')[0];if("Escape"===t.key)return s().focus(),void ut.clearMenus();e||"ArrowUp"!==t.key&&"ArrowDown"!==t.key?e&&"Space"!==t.key?ut.getInstance(s())._selectMenuItem(t):ut.clearMenus():s().click()}}$.on(document,"keydown.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',ut.dataApiKeydownHandler),$.on(document,"keydown.bs.dropdown.data-api",".dropdown-menu",ut.dataApiKeydownHandler),$.on(document,"click.bs.dropdown.data-api",ut.clearMenus),$.on(document,"keyup.bs.dropdown.data-api",ut.clearMenus),$.on(document,"click.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',(function(t){t.preventDefault(),ut.dropdownInterface(this)})),w(ut);const gt=()=>{const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)},ft=(t=gt())=>{pt(),mt("body","paddingRight",e=>e+t),mt(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight",e=>e+t),mt(".sticky-top","marginRight",e=>e-t)},pt=()=>{const t=document.body.style.overflow;t&&K.setDataAttribute(document.body,"overflow",t),document.body.style.overflow="hidden"},mt=(t,e,s)=>{const n=gt();i.find(t).forEach(t=>{if(t!==document.body&&window.innerWidth>t.clientWidth+n)return;const i=t.style[e],o=window.getComputedStyle(t)[e];K.setDataAttribute(t,e,i),t.style[e]=s(Number.parseFloat(o))+"px"})},_t=()=>{bt("body","overflow"),bt("body","paddingRight"),bt(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight"),bt(".sticky-top","marginRight")},bt=(t,e)=>{i.find(t).forEach(t=>{const s=K.getDataAttribute(t,e);void 0===s?t.style.removeProperty(e):(K.removeDataAttribute(t,e),t.style[e]=s)})},vt={isVisible:!0,isAnimated:!1,rootElement:document.body,clickCallback:null},yt={isVisible:"boolean",isAnimated:"boolean",rootElement:"element",clickCallback:"(function|null)"};class wt{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&b(this._getElement()),this._getElement().classList.add("show"),this._emulateAnimation(()=>{E(t)})):E(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove("show"),this._emulateAnimation(()=>{this.dispose(),E(t)})):E(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...vt,..."object"==typeof t?t:{}}).rootElement=t.rootElement||document.body,g("backdrop",t,yt),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),$.on(this._getElement(),"mousedown.bs.backdrop",()=>{E(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&($.off(this._element,"mousedown.bs.backdrop"),this._getElement().parentNode.removeChild(this._element),this._isAppended=!1)}_emulateAnimation(t){if(!this._config.isAnimated)return void E(t);const e=l(this._getElement());$.one(this._getElement(),"transitionend",()=>E(t)),u(this._getElement(),e)}}const Et={backdrop:!0,keyboard:!0,focus:!0},Tt={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"};class At extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._dialog=i.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1}static get Default(){return Et}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){if(this._isShown||this._isTransitioning)return;this._isAnimated()&&(this._isTransitioning=!0);const e=$.trigger(this._element,"show.bs.modal",{relatedTarget:t});this._isShown||e.defaultPrevented||(this._isShown=!0,ft(),document.body.classList.add("modal-open"),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),$.on(this._element,"click.dismiss.bs.modal",'[data-bs-dismiss="modal"]',t=>this.hide(t)),$.on(this._dialog,"mousedown.dismiss.bs.modal",()=>{$.one(this._element,"mouseup.dismiss.bs.modal",t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(t)))}hide(t){if(t&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if($.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),$.off(document,"focusin.bs.modal"),this._element.classList.remove("show"),$.off(this._element,"click.dismiss.bs.modal"),$.off(this._dialog,"mousedown.dismiss.bs.modal"),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(t=>$.off(t,".bs.modal")),this._backdrop.dispose(),super.dispose(),$.off(document,"focusin.bs.modal")}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new wt({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={...Et,...K.getDataAttributes(this._element),...t},g("modal",t,Tt),t}_showElement(t){const e=this._isAnimated(),s=i.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0,s&&(s.scrollTop=0),e&&b(this._element),this._element.classList.add("show"),this._config.focus&&this._enforceFocus(),this._queueCallback(()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,$.trigger(this._element,"shown.bs.modal",{relatedTarget:t})},this._dialog,e)}_enforceFocus(){$.off(document,"focusin.bs.modal"),$.on(document,"focusin.bs.modal",t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()})}_setEscapeEvent(){this._isShown?$.on(this._element,"keydown.dismiss.bs.modal",t=>{this._config.keyboard&&"Escape"===t.key?(t.preventDefault(),this.hide()):this._config.keyboard||"Escape"!==t.key||this._triggerBackdropTransition()}):$.off(this._element,"keydown.dismiss.bs.modal")}_setResizeEvent(){this._isShown?$.on(window,"resize.bs.modal",()=>this._adjustDialog()):$.off(window,"resize.bs.modal")}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove("modal-open"),this._resetAdjustments(),_t(),$.trigger(this._element,"hidden.bs.modal")})}_showBackdrop(t){$.on(this._element,"click.dismiss.bs.modal",t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())}),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if($.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight;t||(this._element.style.overflowY="hidden"),this._element.classList.add("modal-static");const e=l(this._dialog);$.off(this._element,"transitionend"),$.one(this._element,"transitionend",()=>{this._element.classList.remove("modal-static"),t||($.one(this._element,"transitionend",()=>{this._element.style.overflowY=""}),u(this._element,e))}),u(this._element,e),this._element.focus()}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=gt(),s=e>0;(!s&&t&&!y()||s&&!t&&y())&&(this._element.style.paddingLeft=e+"px"),(s&&!t&&!y()||!s&&t&&y())&&(this._element.style.paddingRight=e+"px")}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const s=At.getInstance(this)||new At(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===s[t])throw new TypeError(`No method named "${t}"`);s[t](e)}}))}}$.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=a(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),$.one(e,"show.bs.modal",t=>{t.defaultPrevented||$.one(e,"hidden.bs.modal",()=>{f(this)&&this.focus()})}),(At.getInstance(e)||new At(e)).toggle(this)})),w(At);const kt={backdrop:!0,keyboard:!0,scroll:!1},Lt={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"};class Ct extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return"offcanvas"}static get Default(){return kt}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||$.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(ft(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add("show"),this._queueCallback(()=>{$.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})},this._element,!0))}hide(){this._isShown&&($.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||($.off(document,"focusin.bs.offcanvas"),this._element.blur(),this._isShown=!1,this._element.classList.remove("show"),this._backdrop.hide(),this._queueCallback(()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||_t(),$.trigger(this._element,"hidden.bs.offcanvas")},this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),$.off(document,"focusin.bs.offcanvas")}_getConfig(t){return t={...kt,...K.getDataAttributes(this._element),..."object"==typeof t?t:{}},g("offcanvas",t,Lt),t}_initializeBackDrop(){return new wt({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){$.off(document,"focusin.bs.offcanvas"),$.on(document,"focusin.bs.offcanvas",e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()}),t.focus()}_addEventListeners(){$.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',()=>this.hide()),$.on(this._element,"keydown.dismiss.bs.offcanvas",t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()})}static jQueryInterface(t){return this.each((function(){const e=A.get(this,"bs.offcanvas")||new Ct(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}$.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=a(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),p(this))return;$.one(e,"hidden.bs.offcanvas",()=>{f(this)&&this.focus()});const s=i.findOne(".offcanvas.show");s&&s!==e&&Ct.getInstance(s).hide(),(A.get(e,"bs.offcanvas")||new Ct(e)).toggle(this)})),$.on(window,"load.bs.offcanvas.data-api",()=>{i.find(".offcanvas.show").forEach(t=>(A.get(t,"bs.offcanvas")||new Ct(t)).show())}),w(Ct);const Dt=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Nt=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,St=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Ot=(t,e)=>{const s=t.nodeName.toLowerCase();if(e.includes(s))return!Dt.has(s)||Boolean(Nt.test(t.nodeValue)||St.test(t.nodeValue));const i=e.filter(t=>t instanceof RegExp);for(let t=0,e=i.length;t{Ot(t,a)||s.removeAttribute(t.nodeName)})}return i.body.innerHTML}const xt=new RegExp("(^|\\s)bs-tooltip\\S+","g"),jt=new Set(["sanitize","allowList","sanitizeFn"]),Pt={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},Mt={AUTO:"auto",TOP:"top",RIGHT:y()?"left":"right",BOTTOM:"bottom",LEFT:y()?"right":"left"},Ht={animation:!0,template:'

',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},popperConfig:null},Rt={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"};class Bt extends z{constructor(t,e){if(void 0===s)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return Ht}static get NAME(){return"tooltip"}static get Event(){return Rt}static get DefaultType(){return Pt}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains("show"))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),$.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.parentNode&&this.tip.parentNode.removeChild(this.tip),this._popper&&this._popper.destroy(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=$.trigger(this._element,this.constructor.Event.SHOW),e=m(this._element),i=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!i)return;const o=this.getTipElement(),r=n(this.constructor.NAME);o.setAttribute("id",r),this._element.setAttribute("aria-describedby",r),this.setContent(),this._config.animation&&o.classList.add("fade");const a="function"==typeof this._config.placement?this._config.placement.call(this,o,this._element):this._config.placement,l=this._getAttachment(a);this._addAttachmentClass(l);const{container:c}=this._config;A.set(o,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(c.appendChild(o),$.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=s.createPopper(this._element,o,this._getPopperConfig(l)),o.classList.add("show");const h="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;h&&o.classList.add(...h.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>{$.on(t,"mouseover",_)});const d=this.tip.classList.contains("fade");this._queueCallback(()=>{const t=this._hoverState;this._hoverState=null,$.trigger(this._element,this.constructor.Event.SHOWN),"out"===t&&this._leave(null,this)},this.tip,d)}hide(){if(!this._popper)return;const t=this.getTipElement();if($.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove("show"),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>$.off(t,"mouseover",_)),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains("fade");this._queueCallback(()=>{this._isWithActiveTrigger()||("show"!==this._hoverState&&t.parentNode&&t.parentNode.removeChild(t),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),$.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))},this.tip,e),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(i.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove("fade","show")}setElementContent(t,e){if(null!==t)return h(e)?(e=d(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=It(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const s=this.constructor.DATA_KEY;return(e=e||A.get(t.delegateTarget,s))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),A.set(t.delegateTarget,s,e)),e}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add("bs-tooltip-"+this.updateAttachment(t))}_getAttachment(t){return Mt[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(t=>{if("click"===t)$.on(this._element,this.constructor.Event.CLICK,this._config.selector,t=>this.toggle(t));else if("manual"!==t){const e="hover"===t?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,s="hover"===t?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;$.on(this._element,e,this._config.selector,t=>this._enter(t)),$.on(this._element,s,this._config.selector,t=>this._leave(t))}}),this._hideModalHandler=()=>{this._element&&this.hide()},$.on(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?"focus":"hover"]=!0),e.getTipElement().classList.contains("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e._config.delay&&e._config.delay.show?e._timeout=setTimeout(()=>{"show"===e._hoverState&&e.show()},e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e._config.delay&&e._config.delay.hide?e._timeout=setTimeout(()=>{"out"===e._hoverState&&e.hide()},e._config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=K.getDataAttributes(this._element);return Object.keys(e).forEach(t=>{jt.has(t)&&delete e[t]}),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:d(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),g("tooltip",t,this.constructor.DefaultType),t.sanitize&&(t.template=It(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)for(const e in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(xt);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.tooltip");const s="object"==typeof t&&t;if((e||!/dispose|hide/.test(t))&&(e||(e=new Bt(this,s)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}w(Bt);const $t=new RegExp("(^|\\s)bs-popover\\S+","g"),zt={...Bt.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},Ut={...Bt.DefaultType,content:"(string|element|function)"},qt={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class Ft extends Bt{static get Default(){return zt}static get NAME(){return"popover"}static get Event(){return qt}static get DefaultType(){return Ut}isWithContent(){return this.getTitle()||this._getContent()}setContent(){const t=this.getTipElement();this.setElementContent(i.findOne(".popover-header",t),this.getTitle());let e=this._getContent();"function"==typeof e&&(e=e.call(this._element)),this.setElementContent(i.findOne(".popover-body",t),e),t.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add("bs-popover-"+this.updateAttachment(t))}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match($t);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.popover");const s="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new Ft(this,s),A.set(this,"bs.popover",e)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}w(Ft);const Wt={offset:10,method:"auto",target:""},Kt={offset:"number",method:"string",target:"(string|element)"};class Vt extends z{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,$.on(this._scrollElement,"scroll.bs.scrollspy",()=>this._process()),this.refresh(),this._process()}static get Default(){return Wt}static get NAME(){return"scrollspy"}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":"position",e="auto"===this._config.method?t:this._config.method,s="position"===e?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),i.find(this._selector).map(t=>{const n=r(t),o=n?i.findOne(n):null;if(o){const t=o.getBoundingClientRect();if(t.width||t.height)return[K[e](o).top+s,n]}return null}).filter(t=>t).sort((t,e)=>t[0]-e[0]).forEach(t=>{this._offsets.push(t[0]),this._targets.push(t[1])})}dispose(){$.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={...Wt,...K.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&h(t.target)){let{id:e}=t.target;e||(e=n("scrollspy"),t.target.id=e),t.target="#"+e}return g("scrollspy",t,Kt),t}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){const t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),s=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=s){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;)this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t`${e}[data-bs-target="${t}"],${e}[href="${t}"]`),s=i.findOne(e.join(","));s.classList.contains("dropdown-item")?(i.findOne(".dropdown-toggle",s.closest(".dropdown")).classList.add("active"),s.classList.add("active")):(s.classList.add("active"),i.parents(s,".nav, .list-group").forEach(t=>{i.prev(t,".nav-link, .list-group-item").forEach(t=>t.classList.add("active")),i.prev(t,".nav-item").forEach(t=>{i.children(t,".nav-link").forEach(t=>t.classList.add("active"))})})),$.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){i.find(this._selector).filter(t=>t.classList.contains("active")).forEach(t=>t.classList.remove("active"))}static jQueryInterface(t){return this.each((function(){const e=Vt.getInstance(this)||new Vt(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}$.on(window,"load.bs.scrollspy.data-api",()=>{i.find('[data-bs-spy="scroll"]').forEach(t=>new Vt(t))}),w(Vt);class Qt extends z{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains("active"))return;let t;const e=a(this._element),s=this._element.closest(".nav, .list-group");if(s){const e="UL"===s.nodeName||"OL"===s.nodeName?":scope > li > .active":".active";t=i.find(e,s),t=t[t.length-1]}const n=t?$.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if($.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==n&&n.defaultPrevented)return;this._activate(this._element,s);const o=()=>{$.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),$.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};e?this._activate(e,e.parentNode,o):o()}_activate(t,e,s){const n=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?i.children(e,".active"):i.find(":scope > li > .active",e))[0],o=s&&n&&n.classList.contains("fade"),r=()=>this._transitionComplete(t,n,s);n&&o?(n.classList.remove("show"),this._queueCallback(r,t,!0)):r()}_transitionComplete(t,e,s){if(e){e.classList.remove("active");const t=i.findOne(":scope > .dropdown-menu .active",e.parentNode);t&&t.classList.remove("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}t.classList.add("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),b(t),t.classList.contains("fade")&&t.classList.add("show");let n=t.parentNode;if(n&&"LI"===n.nodeName&&(n=n.parentNode),n&&n.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&i.find(".dropdown-toggle",e).forEach(t=>t.classList.add("active")),t.setAttribute("aria-expanded",!0)}s&&s()}static jQueryInterface(t){return this.each((function(){const e=A.get(this,"bs.tab")||new Qt(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}$.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),p(this)||(A.get(this,"bs.tab")||new Qt(this)).show()})),w(Qt);const Xt={animation:"boolean",autohide:"boolean",delay:"number"},Yt={animation:!0,autohide:!0,delay:5e3};class Gt extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Xt}static get Default(){return Yt}static get NAME(){return"toast"}show(){$.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove("hide"),b(this._element),this._element.classList.add("showing"),this._queueCallback(()=>{this._element.classList.remove("showing"),this._element.classList.add("show"),$.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()},this._element,this._config.animation))}hide(){this._element.classList.contains("show")&&($.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove("show"),this._queueCallback(()=>{this._element.classList.add("hide"),$.trigger(this._element,"hidden.bs.toast")},this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),super.dispose()}_getConfig(t){return t={...Yt,...K.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},g("toast",t,this.constructor.DefaultType),t}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const s=t.relatedTarget;this._element===s||this._element.contains(s)||this._maybeScheduleHide()}_setListeners(){$.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',()=>this.hide()),$.on(this._element,"mouseover.bs.toast",t=>this._onInteraction(t,!0)),$.on(this._element,"mouseout.bs.toast",t=>this._onInteraction(t,!1)),$.on(this._element,"focusin.bs.toast",t=>this._onInteraction(t,!0)),$.on(this._element,"focusout.bs.toast",t=>this._onInteraction(t,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.toast");if(e||(e=new Gt(this,"object"==typeof t&&t)),"string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return w(Gt),{Alert:U,Button:q,Carousel:J,Collapse:st,Dropdown:ut,Modal:At,Offcanvas:Ct,Popover:Ft,ScrollSpy:Vt,Tab:Qt,Toast:Gt,Tooltip:Bt}})); +//# sourceMappingURL=bootstrap.min.js.map \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/static/assets/js/counter.js b/section7/eazyschool-end/src/main/resources/static/assets/js/counter.js new file mode 100644 index 00000000..1bcc307d --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/static/assets/js/counter.js @@ -0,0 +1,98 @@ +(function ($) { + $.fn.countTo = function (options) { + options = options || {}; + + return $(this).each(function () { + // set options for current element + var settings = $.extend({}, $.fn.countTo.defaults, { + from: $(this).data('from'), + to: $(this).data('to'), + speed: $(this).data('speed'), + refreshInterval: $(this).data('refresh-interval'), + decimals: $(this).data('decimals') + }, options); + + // how many times to update the value, and how much to increment the value on each update + var loops = Math.ceil(settings.speed / settings.refreshInterval), + increment = (settings.to - settings.from) / loops; + + // references & variables that will change with each update + var self = this, + $self = $(this), + loopCount = 0, + value = settings.from, + data = $self.data('countTo') || {}; + + $self.data('countTo', data); + + // if an existing interval can be found, clear it first + if (data.interval) { + clearInterval(data.interval); + } + data.interval = setInterval(updateTimer, settings.refreshInterval); + + // initialize the element with the starting value + render(value); + + function updateTimer() { + value += increment; + loopCount++; + + render(value); + + if (typeof(settings.onUpdate) == 'function') { + settings.onUpdate.call(self, value); + } + + if (loopCount >= loops) { + // remove the interval + $self.removeData('countTo'); + clearInterval(data.interval); + value = settings.to; + + if (typeof(settings.onComplete) == 'function') { + settings.onComplete.call(self, value); + } + } + } + + function render(value) { + var formattedValue = settings.formatter.call(self, value, settings); + $self.html(formattedValue); + } + }); + }; + + $.fn.countTo.defaults = { + from: 0, // the number the element should start at + to: 0, // the number the element should end at + speed: 1000, // how long it should take to count between the target numbers + refreshInterval: 1, // how often the element should be updated + decimals: 0, // the number of decimal places to show + formatter: formatter, // handler for formatting the value before rendering + onUpdate: null, // callback method for every time the element is updated + onComplete: null // callback method for when the element finishes updating + }; + + function formatter(value, settings) { + return value.toFixed(settings.decimals); + } +}(jQuery)); + +jQuery(function ($) { + // custom formatting example + $('.count-number').data('countToOptions', { + formatter: function (value, options) { + return value.toFixed(options.decimals).replace(/\B(?=(?:\d{3})+(?!\d))/g, ','); + } + }); + + // start all the timers + $('.timer').each(count); + + function count(options) { + var $this = $(this); + options = $.extend({}, options || {}, $this.data('countToOptions') || {}); + $this.countTo(options); + } +}); \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/static/assets/js/jquery-3.3.1.min.js b/section7/eazyschool-end/src/main/resources/static/assets/js/jquery-3.3.1.min.js new file mode 100644 index 00000000..f4ca9b24 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/static/assets/js/jquery-3.3.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.3.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";var n=[],r=e.document,i=Object.getPrototypeOf,o=n.slice,a=n.concat,u=n.push,s=n.indexOf,l={},c=l.toString,f=l.hasOwnProperty,d=f.toString,p=d.call(Object),h={},g=function e(t){return"function"==typeof t&&"number"!=typeof t.nodeType},v=function e(t){return null!=t&&t===t.window},y={type:!0,src:!0,noModule:!0};function m(e,t,n){var i,o=(t=t||r).createElement("script");if(o.text=e,n)for(i in y)n[i]&&(o[i]=n[i]);t.head.appendChild(o).parentNode.removeChild(o)}function b(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[c.call(e)]||"object":typeof e}var x="3.3.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector",w=function(e,t){return new w.fn.init(e,t)},C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;w.fn=w.prototype={jquery:x,constructor:w,length:0,toArray:function(){return o.call(this)},get:function(e){return null==e?o.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(o.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n0&&t-1 in e)}var E=function(e){var t,n,r,i,o,a,u,s,l,c,f,d,p,h,g,v,y,m,b,x="sizzle"+1*new Date,w=e.document,C=0,T=0,E=ae(),N=ae(),k=ae(),A=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,S=[],L=S.pop,j=S.push,q=S.push,O=S.slice,P=function(e,t){for(var n=0,r=e.length;n+~]|"+I+")"+I+"*"),_=new RegExp("="+I+"*([^\\]'\"]*?)"+I+"*\\]","g"),U=new RegExp(M),V=new RegExp("^"+R+"$"),X={ID:new RegExp("^#("+R+")"),CLASS:new RegExp("^\\.("+R+")"),TAG:new RegExp("^("+R+"|[*])"),ATTR:new RegExp("^"+B),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+I+"*(even|odd|(([+-]|)(\\d*)n|)"+I+"*(?:([+-]|)"+I+"*(\\d+)|))"+I+"*\\)|)","i"),bool:new RegExp("^(?:"+H+")$","i"),needsContext:new RegExp("^"+I+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+I+"*((?:-\\d)?\\d*)"+I+"*\\)|)(?=[^-]|$)","i")},Q=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,G=/^[^{]+\{\s*\[native \w/,K=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,J=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+I+"?|("+I+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){d()},ie=me(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{q.apply(S=O.call(w.childNodes),w.childNodes),S[w.childNodes.length].nodeType}catch(e){q={apply:S.length?function(e,t){j.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function oe(e,t,r,i){var o,u,l,c,f,h,y,m=t&&t.ownerDocument,C=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==C&&9!==C&&11!==C)return r;if(!i&&((t?t.ownerDocument||t:w)!==p&&d(t),t=t||p,g)){if(11!==C&&(f=K.exec(e)))if(o=f[1]){if(9===C){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&b(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return q.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return q.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!k[e+" "]&&(!v||!v.test(e))){if(1!==C)m=t,y=e;else if("object"!==t.nodeName.toLowerCase()){(c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=x),u=(h=a(e)).length;while(u--)h[u]="#"+c+" "+ye(h[u]);y=h.join(","),m=J.test(e)&&ge(t.parentNode)||t}if(y)try{return q.apply(r,m.querySelectorAll(y)),r}catch(e){}finally{c===x&&t.removeAttribute("id")}}}return s(e.replace($,"$1"),t,r,i)}function ae(){var e=[];function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}return t}function ue(e){return e[x]=!0,e}function se(e){var t=p.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),i=n.length;while(i--)r.attrHandle[n[i]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function de(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function pe(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return ue(function(t){return t=+t,ue(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ge(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},d=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==p&&9===a.nodeType&&a.documentElement?(p=a,h=p.documentElement,g=!o(p),w!==p&&(i=p.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=se(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=se(function(e){return e.appendChild(p.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=G.test(p.getElementsByClassName),n.getById=se(function(e){return h.appendChild(e).id=x,!p.getElementsByName||!p.getElementsByName(x).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=G.test(p.querySelectorAll))&&(se(function(e){h.appendChild(e).innerHTML="
",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+I+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+I+"*(?:value|"+H+")"),e.querySelectorAll("[id~="+x+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+x+"+*").length||v.push(".#.+[+~]")}),se(function(e){e.innerHTML="";var t=p.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+I+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(n.matchesSelector=G.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&se(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),y.push("!=",M)}),v=v.length&&new RegExp(v.join("|")),y=y.length&&new RegExp(y.join("|")),t=G.test(h.compareDocumentPosition),b=t||G.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===p||e.ownerDocument===w&&b(w,e)?-1:t===p||t.ownerDocument===w&&b(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],u=[t];if(!i||!o)return e===p?-1:t===p?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return ce(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)u.unshift(n);while(a[r]===u[r])r++;return r?ce(a[r],u[r]):a[r]===w?-1:u[r]===w?1:0},p):p},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&d(e),t=t.replace(_,"='$1']"),n.matchesSelector&&g&&!k[t+" "]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,p,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==p&&d(e),b(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==p&&d(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(A),f){while(t=e[o++])t===e[o]&&(i=r.push(o));while(i--)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else while(t=e[r++])n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:ue,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return X.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&U.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+I+")"+e+"("+I+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(W," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),u="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,s){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",v=t.parentNode,y=u&&t.nodeName.toLowerCase(),m=!s&&!u,b=!1;if(v){if(o){while(g){d=t;while(d=d[g])if(u?d.nodeName.toLowerCase()===y:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){b=(p=(l=(c=(f=(d=v)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1])&&l[2],d=p&&v.childNodes[p];while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if(1===d.nodeType&&++b&&d===t){c[e]=[C,p,b];break}}else if(m&&(b=p=(l=(c=(f=(d=t)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1]),!1===b)while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if((u?d.nodeName.toLowerCase()===y:1===d.nodeType)&&++b&&(m&&((c=(f=d[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]=[C,b]),d===t))break;return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[x]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?ue(function(e,n){var r,o=i(e,t),a=o.length;while(a--)e[r=P(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:ue(function(e){var t=[],n=[],r=u(e.replace($,"$1"));return r[x]?ue(function(e,t,n,i){var o,a=r(e,null,i,[]),u=e.length;while(u--)(o=a[u])&&(e[u]=!(t[u]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:ue(function(e){return function(t){return oe(e,t).length>0}}),contains:ue(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:ue(function(e){return V.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:pe(!1),disabled:pe(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Y.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xe(e,t,n){for(var r=0,i=t.length;r-1&&(o[l]=!(a[l]=f))}}else y=we(y===a?y.splice(h,y.length):y),i?i(null,a,y,s):q.apply(a,y)})}function Te(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],u=a||r.relative[" "],s=a?1:0,c=me(function(e){return e===t},u,!0),f=me(function(e){return P(t,e)>-1},u,!0),d=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];s1&&be(d),s>1&&ye(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),n,s0,i=e.length>0,o=function(o,a,u,s,c){var f,h,v,y=0,m="0",b=o&&[],x=[],w=l,T=o||i&&r.find.TAG("*",c),E=C+=null==w?1:Math.random()||.1,N=T.length;for(c&&(l=a===p||a||c);m!==N&&null!=(f=T[m]);m++){if(i&&f){h=0,a||f.ownerDocument===p||(d(f),u=!g);while(v=e[h++])if(v(f,a||p,u)){s.push(f);break}c&&(C=E)}n&&((f=!v&&f)&&y--,o&&b.push(f))}if(y+=m,n&&m!==y){h=0;while(v=t[h++])v(b,x,a,u);if(o){if(y>0)while(m--)b[m]||x[m]||(x[m]=L.call(s));x=we(x)}q.apply(s,x),c&&!o&&x.length>0&&y+t.length>1&&oe.uniqueSort(s)}return c&&(C=E,l=w),b};return n?ue(o):o}return u=oe.compile=function(e,t){var n,r=[],i=[],o=k[e+" "];if(!o){t||(t=a(e)),n=t.length;while(n--)(o=Te(t[n]))[x]?r.push(o):i.push(o);(o=k(e,Ee(i,r))).selector=e}return o},s=oe.select=function(e,t,n,i){var o,s,l,c,f,d="function"==typeof e&&e,p=!i&&a(e=d.selector||e);if(n=n||[],1===p.length){if((s=p[0]=p[0].slice(0)).length>2&&"ID"===(l=s[0]).type&&9===t.nodeType&&g&&r.relative[s[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;d&&(t=t.parentNode),e=e.slice(s.shift().value.length)}o=X.needsContext.test(e)?0:s.length;while(o--){if(l=s[o],r.relative[c=l.type])break;if((f=r.find[c])&&(i=f(l.matches[0].replace(Z,ee),J.test(s[0].type)&&ge(t.parentNode)||t))){if(s.splice(o,1),!(e=i.length&&ye(s)))return q.apply(n,i),n;break}}}return(d||u(e,p))(i,t,!g,n,!t||J.test(e)&&ge(t.parentNode)||t),n},n.sortStable=x.split("").sort(A).join("")===x,n.detectDuplicates=!!f,d(),n.sortDetached=se(function(e){return 1&e.compareDocumentPosition(p.createElement("fieldset"))}),se(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||le("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&se(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||le("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),se(function(e){return null==e.getAttribute("disabled")})||le(H,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(e);w.find=E,w.expr=E.selectors,w.expr[":"]=w.expr.pseudos,w.uniqueSort=w.unique=E.uniqueSort,w.text=E.getText,w.isXMLDoc=E.isXML,w.contains=E.contains,w.escapeSelector=E.escape;var N=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},k=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},A=w.expr.match.needsContext;function D(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var S=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return s.call(t,e)>-1!==n}):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,function(e){return 1===e.nodeType}))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(w(e).filter(function(){for(t=0;t1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(L(this,e||[],!1))},not:function(e){return this.pushStack(L(this,e||[],!0))},is:function(e){return!!L(this,"string"==typeof e&&A.test(e)?w(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:q.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),S.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,j=w(r);var O=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?s.call(w(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function H(e,t){while((e=e[t])&&1!==e.nodeType);return e}w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return N(e,"parentNode")},parentsUntil:function(e,t,n){return N(e,"parentNode",n)},next:function(e){return H(e,"nextSibling")},prev:function(e){return H(e,"previousSibling")},nextAll:function(e){return N(e,"nextSibling")},prevAll:function(e){return N(e,"previousSibling")},nextUntil:function(e,t,n){return N(e,"nextSibling",n)},prevUntil:function(e,t,n){return N(e,"previousSibling",n)},siblings:function(e){return k((e.parentNode||{}).firstChild,e)},children:function(e){return k(e.firstChild)},contents:function(e){return D(e,"iframe")?e.contentDocument:(D(e,"template")&&(e=e.content||e),w.merge([],e.childNodes))}},function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=w.filter(r,i)),this.length>1&&(P[e]||w.uniqueSort(i),O.test(e)&&i.reverse()),this.pushStack(i)}});var I=/[^\x20\t\r\n\f]+/g;function R(e){var t={};return w.each(e.match(I)||[],function(e,n){t[n]=!0}),t}w.Callbacks=function(e){e="string"==typeof e?R(e):w.extend({},e);var t,n,r,i,o=[],a=[],u=-1,s=function(){for(i=i||e.once,r=t=!0;a.length;u=-1){n=a.shift();while(++u-1)o.splice(n,1),n<=u&&u--}),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||s()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l};function B(e){return e}function M(e){throw e}function W(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.extend({Deferred:function(t){var n=[["notify","progress",w.Callbacks("memory"),w.Callbacks("memory"),2],["resolve","done",w.Callbacks("once memory"),w.Callbacks("once memory"),0,"resolved"],["reject","fail",w.Callbacks("once memory"),w.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},"catch":function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred(function(t){w.each(n,function(n,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var u=this,s=arguments,l=function(){var e,l;if(!(t=o&&(r!==M&&(u=void 0,s=[e]),n.rejectWith(u,s))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred(function(e){n[0][3].add(a(0,e,g(i)?i:B,e.notifyWith)),n[1][3].add(a(0,e,g(t)?t:B)),n[2][3].add(a(0,e,g(r)?r:M))}).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,function(e,t){var a=t[2],u=t[5];i[t[1]]=a.add,u&&a.add(function(){r=u},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=o.call(arguments),a=w.Deferred(),u=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?o.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&(W(e,a.done(u(n)).resolve,a.reject,!t),"pending"===a.state()||g(i[n]&&i[n].then)))return a.then();while(n--)W(i[n],u(n),a.reject);return a.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&$.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout(function(){throw t})};var F=w.Deferred();w.fn.ready=function(e){return F.then(e)["catch"](function(e){w.readyException(e)}),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(r,[w]))}}),w.ready.then=F.then;function z(){r.removeEventListener("DOMContentLoaded",z),e.removeEventListener("load",z),w.ready()}"complete"===r.readyState||"loading"!==r.readyState&&!r.documentElement.doScroll?e.setTimeout(w.ready):(r.addEventListener("DOMContentLoaded",z),e.addEventListener("load",z));var _=function(e,t,n,r,i,o,a){var u=0,s=e.length,l=null==n;if("object"===b(n)){i=!0;for(u in n)_(e,t,u,n[u],!0,o,a)}else if(void 0!==r&&(i=!0,g(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;u1,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=K.get(e,t),n&&(!r||Array.isArray(n)?r=K.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t),a=function(){w.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return K.get(e,n)||K.access(e,n,{empty:w.Callbacks("once memory").add(function(){K.remove(e,[t+"queue",n])})})}}),w.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&D(e,t)?w.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n-1)i&&i.push(o);else if(l=w.contains(o.ownerDocument,o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}!function(){var e=r.createDocumentFragment().appendChild(r.createElement("div")),t=r.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),h.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",h.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var xe=r.documentElement,we=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function Ne(){return!1}function ke(){try{return r.activeElement}catch(e){}}function Ae(e,t,n,r,i,o){var a,u;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(u in t)Ae(e,u,n,r,t[u],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ne;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each(function(){w.event.add(this,t,i,r,n)})}w.event={global:{},add:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.get(e);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(xe,i),n.guid||(n.guid=w.guid++),(s=v.events)||(s=v.events={}),(a=v.handle)||(a=v.handle=function(t){return"undefined"!=typeof w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(I)||[""]).length;while(l--)p=g=(u=Te.exec(t[l])||[])[1],h=(u[2]||"").split(".").sort(),p&&(f=w.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=w.event.special[p]||{},c=w.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=s[p])||((d=s[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),w.event.global[p]=!0)}},remove:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.hasData(e)&&K.get(e);if(v&&(s=v.events)){l=(t=(t||"").match(I)||[""]).length;while(l--)if(u=Te.exec(t[l])||[],p=g=u[1],h=(u[2]||"").split(".").sort(),p){f=w.event.special[p]||{},d=s[p=(r?f.delegateType:f.bindType)||p]||[],u=u[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;while(o--)c=d[o],!i&&g!==c.origType||n&&n.guid!==c.guid||u&&!u.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||w.removeEvent(e,p,v.handle),delete s[p])}else for(p in s)w.event.remove(e,p+t[l],n,r,!0);w.isEmptyObject(s)&&K.remove(e,"handle events")}},dispatch:function(e){var t=w.event.fix(e),n,r,i,o,a,u,s=new Array(arguments.length),l=(K.get(this,"events")||{})[t.type]||[],c=w.event.special[t.type]||{};for(s[0]=t,n=1;n=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&u.push({elem:l,handlers:o})}return l=this,s\x20\t\r\n\f]*)[^>]*)\/>/gi,Se=/\s*$/g;function qe(e,t){return D(e,"table")&&D(11!==t.nodeType?t:t.firstChild,"tr")?w(e).children("tbody")[0]||e:e}function Oe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Pe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function He(e,t){var n,r,i,o,a,u,s,l;if(1===t.nodeType){if(K.hasData(e)&&(o=K.access(e),a=K.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;n1&&"string"==typeof v&&!h.checkClone&&Le.test(v))return e.each(function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Re(o,t,n,r)});if(d&&(i=be(t,e[0].ownerDocument,!1,e,r),o=i.firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(u=w.map(ve(i,"script"),Oe)).length;f")},clone:function(e,t,n){var r,i,o,a,u=e.cloneNode(!0),s=w.contains(e.ownerDocument,e);if(!(h.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ve(u),r=0,i=(o=ve(e)).length;r0&&ye(a,!s&&ve(e,"script")),u},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(Y(n)){if(t=n[K.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[K.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Be(this,e,!0)},remove:function(e){return Be(this,e)},text:function(e){return _(this,function(e){return void 0===e?w.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Re(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Re(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return w.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Se.test(e)&&!ge[(pe.exec(e)||["",""])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n=0&&(s+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-s-u-.5))),s}function et(e,t,n){var r=We(e),i=Fe(e,t,r),o="border-box"===w.css(e,"boxSizing",!1,r),a=o;if(Me.test(i)){if(!n)return i;i="auto"}return a=a&&(h.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===w.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],a=!0),(i=parseFloat(i)||0)+Ze(e,t,n||(o?"border":"content"),a,r,i)+"px"}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Fe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,u=Q(t),s=Ue.test(t),l=e.style;if(s||(t=Ke(u)),a=w.cssHooks[t]||w.cssHooks[u],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(w.cssNumber[u]?"":"px")),h.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(s?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,u=Q(t);return Ue.test(t)||(t=Ke(u)),(a=w.cssHooks[t]||w.cssHooks[u])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Fe(e,t,r)),"normal"===i&&t in Xe&&(i=Xe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each(["height","width"],function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!_e.test(w.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):ue(e,Ve,function(){return et(e,t,r)})},set:function(e,n,r){var i,o=We(e),a="border-box"===w.css(e,"boxSizing",!1,o),u=r&&Ze(e,t,r,a,o);return a&&h.scrollboxSize()===o.position&&(u-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,"border",!1,o)-.5)),u&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=w.css(e,t)),Je(e,n,u)}}}),w.cssHooks.marginLeft=ze(h.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Fe(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),w.each({margin:"",padding:"",border:"Width"},function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(w.cssHooks[e+t].set=Je)}),w.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a1)}}),w.fn.delay=function(t,n){return t=w.fx?w.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e=r.createElement("input"),t=r.createElement("select").appendChild(r.createElement("option"));e.type="checkbox",h.checkOn=""!==e.value,h.optSelected=t.selected,(e=r.createElement("input")).value="t",e.type="radio",h.radioValue="t"===e.value}();var tt,nt=w.expr.attrHandle;w.fn.extend({attr:function(e,t){return _(this,w.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){w.removeAttr(this,e)})}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?tt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!h.radioValue&&"radio"===t&&D(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(I);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),tt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\w+/g),function(e,t){var n=nt[t]||w.find.attr;nt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=nt[a],nt[a]=i,i=null!=n(e,t,r)?a:null,nt[a]=o),i}});var rt=/^(?:input|select|textarea|button)$/i,it=/^(?:a|area)$/i;w.fn.extend({prop:function(e,t){return _(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[w.propFix[e]||e]})}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,"tabindex");return t?parseInt(t,10):rt.test(e.nodeName)||it.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),h.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){w.propFix[this.toLowerCase()]=this});function ot(e){return(e.match(I)||[]).join(" ")}function at(e){return e.getAttribute&&e.getAttribute("class")||""}function ut(e){return Array.isArray(e)?e:"string"==typeof e?e.match(I)||[]:[]}w.fn.extend({addClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).addClass(e.call(this,t,at(this)))});if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},removeClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).removeClass(e.call(this,t,at(this)))});if(!arguments.length)return this.attr("class","");if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])while(r.indexOf(" "+o+" ")>-1)r=r.replace(" "+o+" "," ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):g(e)?this.each(function(n){w(this).toggleClass(e.call(this,n,at(this),t),t)}):this.each(function(){var t,i,o,a;if(r){i=0,o=w(this),a=ut(e);while(t=a[i++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else void 0!==e&&"boolean"!==n||((t=at(this))&&K.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":K.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+ot(at(n))+" ").indexOf(t)>-1)return!0;return!1}});var st=/\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=g(e),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=w.map(i,function(e){return null==e?"":e+""})),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(st,""):null==n?"":n}}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,"value");return null!=t?t:ot(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,u=a?null:[],s=a?o+1:i.length;for(r=o<0?s:a?o:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each(["radio","checkbox"],function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},h.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),h.focusin="onfocusin"in e;var lt=/^(?:focusinfocus|focusoutblur)$/,ct=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,i,o){var a,u,s,l,c,d,p,h,y=[i||r],m=f.call(t,"type")?t.type:t,b=f.call(t,"namespace")?t.namespace.split("."):[];if(u=h=s=i=i||r,3!==i.nodeType&&8!==i.nodeType&&!lt.test(m+w.event.triggered)&&(m.indexOf(".")>-1&&(m=(b=m.split(".")).shift(),b.sort()),c=m.indexOf(":")<0&&"on"+m,t=t[w.expando]?t:new w.Event(m,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=b.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),n=null==n?[t]:w.makeArray(n,[t]),p=w.event.special[m]||{},o||!p.trigger||!1!==p.trigger.apply(i,n))){if(!o&&!p.noBubble&&!v(i)){for(l=p.delegateType||m,lt.test(l+m)||(u=u.parentNode);u;u=u.parentNode)y.push(u),s=u;s===(i.ownerDocument||r)&&y.push(s.defaultView||s.parentWindow||e)}a=0;while((u=y[a++])&&!t.isPropagationStopped())h=u,t.type=a>1?l:p.bindType||m,(d=(K.get(u,"events")||{})[t.type]&&K.get(u,"handle"))&&d.apply(u,n),(d=c&&u[c])&&d.apply&&Y(u)&&(t.result=d.apply(u,n),!1===t.result&&t.preventDefault());return t.type=m,o||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!Y(i)||c&&g(i[m])&&!v(i)&&((s=i[c])&&(i[c]=null),w.event.triggered=m,t.isPropagationStopped()&&h.addEventListener(m,ct),i[m](),t.isPropagationStopped()&&h.removeEventListener(m,ct),w.event.triggered=void 0,s&&(i[c]=s)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each(function(){w.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),h.focusin||w.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=K.access(r,t);i||r.addEventListener(e,n,!0),K.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=K.access(r,t)-1;i?K.access(r,t,i):(r.removeEventListener(e,n,!0),K.remove(r,t))}}});var ft=/\[\]$/,dt=/\r?\n/g,pt=/^(?:submit|button|image|reset|file)$/i,ht=/^(?:input|select|textarea|keygen)/i;function gt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,function(t,i){n||ft.test(e)?r(e,i):gt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==b(t))r(e,t);else for(i in t)gt(e+"["+i+"]",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=g(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,function(){i(this.name,this.value)});else for(n in e)gt(n,e[n],t,i);return r.join("&")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=w.prop(this,"elements");return e?w.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!w(this).is(":disabled")&&ht.test(this.nodeName)&&!pt.test(e)&&(this.checked||!de.test(e))}).map(function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,function(e){return{name:t.name,value:e.replace(dt,"\r\n")}}):{name:t.name,value:n.replace(dt,"\r\n")}}).get()}}),w.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return g(e)?this.each(function(t){w(this).wrapInner(e.call(this,t))}):this.each(function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=g(e);return this.each(function(n){w(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){w(this).replaceWith(this.childNodes)}),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},h.createHTMLDocument=function(){var e=r.implementation.createHTMLDocument("").body;return e.innerHTML="
",2===e.childNodes.length}(),w.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var i,o,a;return t||(h.createHTMLDocument?((i=(t=r.implementation.createHTMLDocument("")).createElement("base")).href=r.location.href,t.head.appendChild(i)):t=r),o=S.exec(e),a=!n&&[],o?[t.createElement(o[1])]:(o=be([e],t,a),a&&a.length&&w(a).remove(),w.merge([],o.childNodes))},w.offset={setOffset:function(e,t,n){var r,i,o,a,u,s,l,c=w.css(e,"position"),f=w(e),d={};"static"===c&&(e.style.position="relative"),u=f.offset(),o=w.css(e,"top"),s=w.css(e,"left"),(l=("absolute"===c||"fixed"===c)&&(o+s).indexOf("auto")>-1)?(a=(r=f.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(s)||0),g(t)&&(t=t.call(e,n,w.extend({},u))),null!=t.top&&(d.top=t.top-u.top+a),null!=t.left&&(d.left=t.left-u.left+i),"using"in t?t.using.call(e,d):f.css(d)}},w.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){w.offset.setOffset(this,e,t)});var t,n,r=this[0];if(r)return r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===w.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===w.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=w(e).offset()).top+=w.css(e,"borderTopWidth",!0),i.left+=w.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-w.css(r,"marginTop",!0),left:t.left-i.left-w.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===w.css(e,"position"))e=e.offsetParent;return e||xe})}}),w.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;w.fn[e]=function(r){return _(this,function(e,r,i){var o;if(v(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),w.each(["top","left"],function(e,t){w.cssHooks[t]=ze(h.pixelPosition,function(e,n){if(n)return n=Fe(e,t),Me.test(n)?w(e).position()[t]+"px":n})}),w.each({Height:"height",Width:"width"},function(e,t){w.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){w.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),u=n||(!0===i||!0===o?"margin":"border");return _(this,function(t,n,i){var o;return v(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?w.css(t,n,u):w.style(t,n,i,u)},t,a?i:void 0,a)}})}),w.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){w.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),w.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),w.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),w.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),g(e))return r=o.call(arguments,2),i=function(){return e.apply(t||this,r.concat(o.call(arguments)))},i.guid=e.guid=e.guid||w.guid++,i},w.holdReady=function(e){e?w.readyWait++:w.ready(!0)},w.isArray=Array.isArray,w.parseJSON=JSON.parse,w.nodeName=D,w.isFunction=g,w.isWindow=v,w.camelCase=Q,w.type=b,w.now=Date.now,w.isNumeric=function(e){var t=w.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return w});var vt=e.jQuery,yt=e.$;return w.noConflict=function(t){return e.$===w&&(e.$=yt),t&&e.jQuery===w&&(e.jQuery=vt),w},t||(e.jQuery=e.$=w),w}); diff --git a/section7/eazyschool-end/src/main/resources/static/assets/js/theme-change.js b/section7/eazyschool-end/src/main/resources/static/assets/js/theme-change.js new file mode 100644 index 00000000..1ee17708 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/static/assets/js/theme-change.js @@ -0,0 +1,22 @@ +const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]'); +const currentTheme = localStorage.getItem('theme'); + +if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); + + if (currentTheme === 'dark') { + toggleSwitch.checked = true; + } +} + +function switchTheme(e) { + if (e.target.checked) { + document.documentElement.setAttribute('data-theme', 'dark'); + localStorage.setItem('theme', 'dark'); + } + else { document.documentElement.setAttribute('data-theme', 'light'); + localStorage.setItem('theme', 'light'); + } +} + +toggleSwitch.addEventListener('change', switchTheme, false); \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.eot b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.eot new file mode 100644 index 0000000000000000000000000000000000000000..cdef69f09be0ba253b6a8fcf74a683b2849424fd GIT binary patch literal 136822 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 &=&^OXx>DnU;mPNd2~DZS<1txA+=Q&CwkkVL zkdqZ)$Iy7WDgOE>yf-$*=WXEgAbc!MJ6FUn6c-VWm^r{c!_G@9hx==%^taBP)j3zw z=62RE&(@0Wi5C%X<<*(_8|IubU!8PPi4|R4D-x*_1Le8PT0a}O;p7dN0<5#=5G?X7 z>>Oagv!TOKr5?rEZtI=pN-X~z%~X+zK1oYvG- ziy3Y0ExJLXcv3K6$x<^UBg?in^SY;DOnD{<+vOqHE;ys#1gMulS$icfs#fono`?}lv%##zi(r_e@<%koHSiEP8RydH9 z0%0C&7x8Yqo#>o5^nN?#lXD5TTtUQorY&`P0xpK25fklzo=;?>W_dMc*!RsG@cp4O zMj#1nxq=tp9LKDqz8OEF0MVH=_5l0?msPuA0wf7wFgj9njRNBo{O|-^7ilh^8&mZd zVH%BVc(f`$;sea|ltdwsu)8DiVj@wDcRO*MblXU}$W9oDk1fx*ZyT=u{u~MW>i3mM z*#9>LQ03&0XH;1Po2Gcmw7w!BdaMpia50U(iG#$e6#+2;MW3l45)81BTL!e!xX$I# z+me^_QCzSisN__$hSh=f2&KL3*RfG;!b-g;VM%P`qb5(u*vi{Mpf2=vxGQXU+GV;n<)fH;HGOMZ3 zFOk*R$vu0MPDpB((>8dN3GC=FWVF=SablM_KfHQIsEUn<>jNA2o>Dw>^Q;?satMgl zBe_dW;E8BMp(R@Q~f-@b4FsGU{2BdsHOem6H8bD@Op}Of*{B*x%aYtu4@8>~jV`4lyHE=s z3{sQFAnX0YD!k_yQ{fnPV!*a;hBmbsV|%Rm*zZ!qGWNAys^vC1)3~h94D5iD3}&%E zK)$x&yEy)Fh^Su*BShk`)mDbkDZyN13hOLQ3j{RHI;nB69-bM>vCY(qHG2R`7FE0~ zd01ebT0skh!ji?V?jKmiT2lCQUI>LyonV?m?^G?w-8lR9)J7b*;S!%$<7ABq)f(7h z05iCejcc*2EGuoZXSb<{@QEFhuhf2No*7MqXq+VRs3z$vmOgjO`%_QDy}ced)*38M zq9HBR?bt9}4w;&l1MsK@)PB0>=kb1=<-CrxgRqo_fs$3Fu&R2g_O{envZ~6RUFnYY z^oOMLx_S`cD*+qpPPaRGf6X2xM}X^F6yTGW}y5(&ftiZ#JAeZHA?W=n2JM`UEcBF{k;_>p4iL1HVN*gFQq z3o?N-Wsd_oMu5jjswNqHP;hx{EIK)g)xohsfaL|}8)(<$$EA6oN(N1BmgeM znnJ9hB#Vjx^Gp!q3WqQ;IS`K|QV2N7h=R(dpj~4{nX1F;yjP>~O5nRciO~_-|Y<0>6 zY^veXRK(}N2CEf;?YMP1naBgCk)v0>{Yo9_G*AE>W01vyAwx=}5IuMK@?Eh)LTNE< zE)&q&4aBf;c2j^l9R)6YLP5594(76=0xA^Ih3Hz(2w0M?&e7CddpMFeCDSgqv?*#2 zS%w(B`NfqxcCKh1ZSw?IGxG&iawZ=Y5DR8Xpb{=5j&hdB$yjTE5iO2)*ygsd+!l$( za!snKdJzKti~cwKj-N;Wdttkt1|CC|5(;lg;KX!?F)XDn>}8}_7VJ@~Gx{2$D;4Pm zR4f<_k3V9_2=%{C-9!jurxvaWlNR8ZKbSzm>K@E}DwFFZkDx!k*47bBgw<^w<*elx zvJ<;vt!dYyT+WN+Q?Aw75pYwQy5SW!m5-XyAQ$a(I;@1NZRnPrpqH#bv!{-f#`s zbf*fOq_hxPHB=Qn9}Q>udIvIN>&J-*4Z%KLylrrZTnH>b1dSsJ>47-WIvtUA62$H; z2V9tjy3%-8?96Khm-ZYf-;k$u8X`&+GmN2BERF>g`zYhO9 znMJ;xO=+IZ4JJ;Wy>M}V|H$JP2<2$zr=dmV3OV(}^72*fEpK+0w;sy>RFE?{IiRgw zGJ9az35hz)J|B|+O^<=5MW7Otix<(#MbrxNcgGhS2LyD(0QevummpK53f*PyZ!3gH z0aVcNFxB&v*;UJx$J3o%DJj<8lDsOx%_YH4&1B{eFJIoCj}30vm@Iy(X>N-OpMS~9 zaUmtQ?K9Cz-Rta3nbxOgu<}doD_T_}(leH5&$PE?thlXp%W7WoX|sVxWg&<9sU&J{ z#BUWrap18aHMG;$7o>s&#SEh=xX{nK8^O`QP!KLR<>;B-E=>*&Uof)fDtD7mh$Y*| z>XupcW%YrGbG7{Ot=soael3tR3^U`{jv@zJ!Xf3ga&vRJd1Vo%U3_fhg5lGSFGe!$ zso7*!u~@4W$y#F6H(#~ybx}_xvE5Nt9H%8H%b|;!Dost5FtyeYi!!~=Xv{|qDA8hu znQCVW%0HUvx%PV=|2cqts1W%;2Pxf5`>lZ1PR$JY29)PiC}dk!!4Aqv^PTC)wo9)V0a_TqKJ<4ijVbij_IRUoz0sL`)S@OgNKosNA=<#i?7H@BEQkNJ5?Vai7_Ih_q5B94-g^}fi8C?2QMXa10F~rEg zahDyp^Tuk&puN1eG_Q4bze`xvh`U{}NIztdkAFP@#p-F_W{3i1$RK*Eg|>)L%nQ~c zytpu>0Gy|>U!-1?JZQLeuUeE4*o2FsgsmpzZB>0!*WdJi)lJKO@wH`}o~&QHY1#Ld zFJHdRzaSY=->-}NWqJSf$-wrxN$tE~&o*2G=}tC0er>JC3j~ z41NU8-|`NXfr8{d*3jcC7*qBZ)v2m9M2(JFTO$C%S18~LcB>^gnyD~?Vgl}B0w|`s zNds(08udp*L_kfeW8**W1D5nt$kAL{;StB`GQ~h78(?Kl)CHph z+p)N8b1F6*u#1{1Cz^spW&wQXdLxma+M`W&#)D^?bmj6R9xwC)Ddbx{TZq=0l@|GP zO(!~nmZ~*Jv2oaK0qB7}^pRpfwujTRVJ%+ZWkS+Y)r;%dxQ$&(3S7mC9h9U(v=GAn zpGAtU+B5(@h*#{uW!r7b9X@TUz@6R#?sO6iJR1EBP^Z`Apw_a3Ec{|@7uyZH1O%}X>ytZX zpONRI<=Svug-2P0<6e!zy&VAJ=%)$0X2(7!bae_yC| zKvk{Omi~|>%xNV}x@;x4_6KZSoZ}17t8aMvh8vzfb-JV{%3m?em}x`Uf_FDBArTJ9BJG%ObdH4uy>`WkF~jo z-gOif%+z`JE7O228gK(yS318}F@sVvl}<>Ob>9fbjR>KRaMaZ!x*H95goJ-g0)jOi z7pX$u&M|G6sg2lg0gbz1bJ)okVUx;?n1eCFNIhTlT(H2D~0iLh9pZB`O_pLYG$)}8tY-fD|7s` z(nN8c-+B1By@95*>uKhYo3=7N3TQoxZOUs5p#pga!DuczO)?Q3TWDeDw@Pdox3BhFwrWT*FF?D7dnXmrT%oJ3iT`1mB{= z;8JUa{tUuBhEdBEazzXx4B%3Y+AppLnjhpLRY1)?T<3+0uz+a{0ji)L1$dt-h+WE8 z0kxD7tcuVr?7XJ0X!%8Rz)9rdsv!pwh{O*H{ngXmV8G2MTRQ`m+ak(_pjE2nsBK3g zVf!ut3IN^U;t8u+!I`UDN^`UG@7Ziqn%80K+lIsz@Y0$&MAV`olFM_p>!z{O1n-%k z@hP%l8~H*h9F`o_c7h$rg31Zwh)lt|aPWQ-;}cE!eABiJ^3n|_7sGna-UqLJ<}i?r zd_H9VKA6s*3CxZ(6UFj^gRNVLfR~oi*I2@@KV@@q(Dk7|2Jzykx(AbqLPy2C7cSF1 z|KVS)fZ?kFl94>S`GhngyNCW-`%GtdLKNI!Pwvj`m>-r2AAJ&UKN$l?+KCrsyO2+q z0;;89M2jLd6mTp+o2KRuum%tS#p?&zMId0MUe_~eH#?B{&~@{-eso1ZG6&B*p|5!` zCxv(w?lz^ktS7*ln?BzcFK4}M+P;8{Zk@mUv>>10td%2uCp7f|VKSALwF~ihutZ>L z-zDEhdrF9(6REJkA^~=VXVS;|3XUm)G{E{A?ey0Y`KGArK!RdXIS`V$z}flyPVB33 zqA|isG8i^p396LkR;*mH64;I^C5RS)lRjEUK&PT3$O3WVA!sOg?S}@>ph)bVOmxL5 zAKtxbMKptrW|Wo5VrCc)4Q!W~@xRchp{f{)&a?>B{+fD5PtKaXXwEnuZ|8 z2S)?7me7LDn->h9`X7=8_(~NdofD*UaAB&Fu9L`yA;*F5Y@ohu{^sS_qzU8!e?5)E z{yCMNq`K!sIkSvtNky8zL%cHG%sLIdC%6O&K^Me70>s> z!UY1QYPMKKux0`=75*id9)b(8WYOC!oSFdCeb6>bQEf28GDym!Ici@hH#L=;9;Ls{ z|AFYR{K8Z%*HS=47)uH*xmtQrUeckp;}s2LyB;>8a?qOmek7P4Zgp%p0N9M(HcARv zYAj~`-#)+;aNSn2n%ai-X$C{K%*l2r6oA#)s%hEE_GCMZGLAeGP8y#1OyIkgqu8;h zEJ$xzmE$Z6+@5D5@N?t;oWP2cus-neH2OXby6>Tw4NCN_e?g&|#a5YmnOs{KEnZ5_ zd2rd5UF5#We_J=YjI2K!pY2DPFQ0T0S#sNtCjUG%HzW^Ib{d; zVy~3pV?>uVM0;D~xG$~5tJ==Nn_{jpqe4!AldYH#)ZfA3CZvRzd6Fh3zY-M;^~I19 z_$H$1KtC*EB7RM7AYX(mJ&qzmG$xa}zUwxHPioX-PvcOeT)|}PpqhLeXYvR`ZDhg% zr*ZBg)_Lt5Safs)8+)7}BScA)6N{ovfsoqfgwi|Zv=)>OH|g$&iNuO9`4Ig_ICBVC zEbk#aGNWazR48f%X>jEod^nnn0gcAK!3$&sG7Ovij_+6xTZY%JjSrs-gA!pk>-c~y zq;67JUeW^Lco0#2pa&6r_c5%06@HSq?<0Xf6S^DVm5PM0evgKs*63bzoKfF4?$H#4 z4t=(o))5;D^|VJ8>WLlc*&KlPotFjAS1(CNgG)pQM(28+%v-ap)O%{lNJVmk;?j%G zUdAgYKKQ+RhLrVK3JX$f5bv!VLR)0eCH2=VntGQ@zTQK_l|G=KAWU7N zVYSdau!#s4b-b?yUKWrQ-RuURu;?KIn7$JP{1nDWk;W;*QBn5DOMvn5)=jb#nn%Xp zqjvx=*gJ8ky~u;khKOf3T_0_UKAQ807eK72<=E*UX$s?pEr`KHy0|x!2?(>>us=um zWkG5eWOk;uF?r}SXSxfq1xVDc{mf@du^{jhxCgS55iz59BN)~x-d>c9ea85>&3h11 z==-ba`{%GO6(4n^u@@`BpSCf3na?l}F=Nb+nO`t}U=A{W1=}!4C*Je50P@7iRkC

uQUX|wmEA-ALy_IsM7w=H(ft#d9!m-lZLlMfVSGGSet~}-P zSegon}2$yGLKZh?$amo&IQ>XQO7#Vy40cQ|U&uXRQ)eBVB2|GDh z0=05cghR6GGn+8gbn0bPOEc5~dm}W9Ru0bUx%f6p;s&kP&x1}a z6)%CsD<*sLVlO(6*Uvb3eF9$W)>G@L_4a@~up<(^ZL|)3!7`=NjQq}j7bwSZ?rR%AK-+ zcM3uq<>eO7ggo*P&&w;3JgXZ3I%PW;56Ws3-laf4-fkhQEcSuneiQ-2RauNgL^R-h`??74?&-_Q8g@yw!Rg;RD(uDp66kM+0+MZ!`X%z3i0U|tnfPb zc0`V}UfbGw?L`6U|Dx+X;M};bd;h&tF#rZ_01V2aFM#b0yTC4&++`=1BE=$#O%$n4 zb;*(?OR^->Dv>4Ik}cObwxhTvb`slh63cRvpG)-KC$W_{af(xv=9m1Fm%Nvkyf|(3 z|DM58BIRTYFf*7L%-p&6+*5w%cQ62(I)Ne_IfPirTYhB`kadJ)Gcy7z*}x}dgaLM& z;>jW=nFOzi>r+qqkx)DYbBtaxLPj%#*U3Yq+P34yoRDQ!@n5mzm`&5+V{mZ37jlYh zcoTjrb^p054c;FV!~#E;Zjg(d@WJCqX6d?out2PePhNc5myi)~*TB64Zx-vb*>}xj z(OgJ7A)UnUhygjNlY+!*5d5X*z||(ALqatYcWJi-N1QT3Oq2!(OLrt2 zp`lcEsaYsA3#Sr;UL=LZQ>(_WjKa4v9*#wEgvW+55i4|a){mxL|FVSomCpaYPrcJ} z)<%I}#$hJ@cQ+5&#H$bXt%tCz^t2UXW;hhf#!|7vhkG0NhC-98%f+MVFlak6Gg9%` zR5SeE;%0t2g-0Kih?n)kUi&9}GX#GsHv+_^Ere z{}ynl;+;J+@Wz1$)r?wISE^goJ?dWdLG{zjl5kYnOyZ4=_(*6hT7A~;2X+urglpwt z2;&Klr)T3QMldjz=j~p9r}Yg%c-|zfK~B|gcRA$Tsc_B6{7n5^^<9bDr zF2ko8It^Kv5{seNVc|&|wWJ4%wZ}eL)F$cL=Nd>F5|799Y=;giK9EiZJ%hOG66cWy z5Jbazi(r2Hv<4g0j%Xx-GYC9?yI6`uG8iljV9V8N>CDz`=}gBBO*wfvrTPe*tEuUtEv~h=rFk)x@|`6gc&_U>PAG7bV>S0!X((jq)cutu*Fc6 zkM`qBv@JKB4u#_z@RkDxqXmJUoT(hh0wA_D^)Rhkrxs;Y+EL@ZZ3>ckRm z4hI5ng=$#tY++#$%?jtDQX~Ts;4HCD5 zms8XYnfK8|cz^dpHA8HN)m~eC zEWx!t7Y!#|Cvl^ok<#QEsA@`OLx%o)7fk(|>u`f4@YfQofkneq+1%lj0e^X_kcz?I zt|tvG+}x~tI8I5I!Cw#o`ReIE6C9^!NG1~H-0B}@CA~agq?oEr)kJ=oUp1X!Dmt4NgvXx=i6QbjB2`mM5` zUOI0-E}Q*ohJHPo=?q^$eixemxp`Hvnhj7t2L?`{d0sW}I-Y63$kqV7XbXy0TB}WX z;58Gh&s-=TD}SEH7R;dR%AOg~uz*<2)86tZnN^9+0{am`Hs2K>77>#S%6Z_3koi?L)TmG+A}ij7Pn z8PaptGTl{%!kdPMhHlLamf$_oszdHC6mxDm7D^P7J_i=GKaXG+8k!S#;+{Qkf9?DU z^W%iaUp*!Lk6P9?lgYzX7dEip_ss|o;s$`d*s8!4Li1Ufi zu+s^drJ-;#7t54lPALTa0aGIXGx!hpGinBUF#{Vp7%XKIYfHQ)%y6by%?u#?=lurd z6Gxg9be$cHj50|rD=>arsdOW?ymk9#zgd71%a)Y8%*fy-Jq+ZjU~b<|vcVyVdRnAa$zDgX}CaOxC1TO=!DlE_FLs?7_@pMI?a{|cuO zFe1iZ)|ko-^s=0gY!W`mh2!#EKWy&@w8H}%-Q-< zf^L9RXya+?wbW&`>Yk;K;~tr7{B@Ebbz zrnqTMf4q>f!inR+e$^d@M)1+|LWJP7VbVZJrzp>4tOV{s-DBw2ZZoyt1Z0>z7&77~ zpBp@|Ar!;>Glvz$8_;6f=}^tFwWZkLmaLO;@T42zm7&_m)MwIW)E0+`^qu|~(gLiM znw8atvQ=gX`ur_Y|g?Dm`*dFFqfH*u_eQjM;C|1!duK7QZt;`jX= zn6-WQ8BPye2lLylNc_77?i+ZRXZz&9y9a)9;DZA{L$38_!CZV16zB`g2K3yxbl>15 zh#@y{VoNYuIziyBeC}k!FYCq2muoUZJyou zR>)=i?uypvadCKv>1m|g^;C3@C?~%+nKAQ5bW2CgMO7~v?J8#hAS9pM*#Cqj zwE(l$+9$@xC)9XHH|ErW(HYk!$JHHIZEk!e>PHV;a^QIKertREu1l_h&?0JlVljMu z=iL_>(R-*Sq14F!jT?uCZb}|%sLQTa`Xe`-Y@NK)h~A&N^8}e2jcisWjU#HZkx}}0 zH8-lC)*;Y5K^z#B4~z(OP{whcgyhpYRI5z&VdF}`AaGCe!<(jG;ebfj|~m#*Bow>7(zI`ZAqCvYa7K5g2U@O`CCXv?Y0%?vMN|HrZc(Tq0WAs2oDx!@w< z1_C&oxI+bS-tjUW@aSSC2YC6c+I8K0>n~dK^R4lhI=H~z4wzXTyMFD`=Ja&)FWbGf z7u5V4nS#^qQ!bGpoe_WojS4y*QLg^yY>qw%u!4mp;^}6zU&16MdpkIQg(S^!6)jKX->$ zzWtLmZ|$$Amt*O?{lM0Vn;MTCF(TK0s4huDx_BpfsAoYaHL-gK6yDIlCFaTXbVz-ZVP$zsX~sUmh7*o=0OZRIDZeeO_p|PkA{)@tMpfqo6WbJc_{K!Z?p)PNfN{zJ_RW8$N zW!C;G8g)t~$wxKCx2xTUy)HWXM#lN&0d{2FBBmv!IfKzDFAPZ&fqd>^p&p~T{n+}e zPxC+9K^q*IU!7fhXm+(-)w6BCl8aroVaL^LKkHZ(8-GQ`a*neoMh`D1=(XoIA9bvf zZ06;A;ca7`-Mc$O8{?6v-|{mHyRY7n{?*&$1h>gPkG%5oQO@94AC>h#wMcUQQyd-?p-BDNz1{BK`M2gux!PdJ@dmwWzLYN)9Th6!PfFe!QCCLRemXL$p8vByRv%rv z@9W=MyDx`R^=w_~ynUtiJzk%z9jxEw*Qe?&@YB!+hl^;E8J4#~W|en|Vza&+3%lw} z_%%OkFV^e7$0_`JoMa^$2FIjB})pl6ud=TQC~v zYv;QX>GTrz3s_k-iGr^C4dq?^X^_B|G;taW-_Zz@-F}_?4WgLJK9k&*~*|TTM}dql*M3M zUqf2oL4b+EJ7A00(avt4Ep>-SY9sCW(&(Za+c>suiAWWG11nX%WO(z5k)5NpjpO6> zc5^a6*m9g^!Ks;;Tia%H!#;b3TARzAW(K~Q$*pgg*_v%kOpOm^#+R4JM-{$fJm87J z`k|H49j#1#d}_R&Escznq-sgdn%$D}z~npQ};B zvoqPb4Hs|p$5p7fJbmDr^YyX#KvnSI>stIPF>)OR6)2wQ?LeJ~fcCQfI)oe@D6yxvojCbWv2tf;(Y?J1-1R#USw zp`(B0r)_^9<>L!G5K zRqW82G+UN^=chmYxS{1t`1OsSGvt;o_C0kn@v?US49LM@_ZtwsJxc`c{R1Bfd|O`|`0oS1Gw{;D-wgZ+-)37a;PJjp z-Ky?WZ&pv@^Zr>l;=d+ZvYn+Dx8*m0Q?|P3oGtzdBH;D_;KQBMzX1#2{OCwXb#7k5 zs=aR37ik| z8NVjr-*X3M@Cf0}BU?-k<$~8QQ!d-ajwBOpQrXKwB_;#Q4k9;XnfC0eJr;6Jikb-#ILyzZB9j_qd@fjhN zE8~ziTqkha;EA|68&aUP#qPlK3+6}D=0XM#7^o%I4urA7gslXq+WYOD>r1MF*!Y8im&o z+cTVoN>bM|C2V0kJY(VU#!H-_CP_GEr)J^0P9*J^PiivM6+L`Eculx0r7m$HJkCec zSx%W+TzKkp8tq{ixY9znB6~Bvk7~22FaX^|Z0MJYTWiscb8Ei`^M(dhxtnhOWv*(5 zo5}oikl1%N2Q>g%Uk&qJaIOO}v9E^JeGwZwjCX$342#v63tUlyX z#S@&Y=0x#@n@%zkNrHw8Q9~(0oPk!ibo-y3Vz|aL(e;pvsA&`BG=?EkQmG-AOgY@^ zW~kN*0d1yDhs|WYBvqQAoBt?}r#dlFtxSAIrE*EeOUkZ-q_h|<|_%m%Y(%n z)OFoI1Zhs#!Qa6_p+p_Wf2x?zq{-Zau7vYyojeY{mZevT{;Q07q6E)gyt?)@1H*VHEqtzxnD&+<}G2ir@-<&c$%wsXbK zV6@Xp`^OG$xN_@ar5yG2(Q7|kXcdC}c~v7|UXqbQf;nY8pIvCS1s)!X`l)iVYL1V{ zC2=L^@X9vc?M{GCI*P~Rl`I>dyloUaY*rXe1j5>1!E8gWy~YG0vl|PEUD=1cwDmQF zXcrZ0{T|QpJwEf<2OjwB1Fu&O{7ucFf|GO>hYJ&hzmM2Il9)L!KOz)vIOf}v?2^iq z*E9Nm@~e+M_SMJKdpP)k&xVMQ7yT;f7QQSEFBT?#_@v~7Kgl`X@u*=uYR+fE700Q- zESt$FH-Ig#eV#Ks_SFk8H3_tqC8D)gGe6CDW{`_ES(i);4MLNz!GM?~+(|YqE_{g8 zJ3frJb4c@mXhD(%2zcYB1a|}ZEmpW#`E3b?gQxgx%XJlb_}cLB^%n$B?p{PRpyLcIS;CF%qoJqELX!z!{d{B$5$?nL3-2K4H=)UeW|> zWaGK;u^GGP^#|?_28`ggbRnWY-va1h7x()_-;4Rlr_Y>u`pjFZ!^5{zn4b65`EI+lD_*zn@U7D) z7B0TM@BjF<0B4^D3$;KV6gk**$~3dE;DRM18jUgt5xiy_akq7CTC`~IoZ}Q7`v29! zsah@Tlr!VuY#}i*IQh|<Jx#5rCc z12DSze<&RoY@UbgR*?fs>~8Dxw@ z{=vVXmr1;;a^7?6pRmUl$d{b^BKrdYkp9>9?90s;_w9@18xOwp;DfSOxcK5oZav}c zhZkL(pD*xnZs@`LAAInYwE&kkVAEIb1(jCCCX{N*ghA2%XM%8;y&j?<3NMeNW31bS z=z3zoqhp}qoJ%$wT9*;$-nHb^rAvz=lanJ08xK!T-EipIYcIKeZTP_A;(^8gvuSE> zVX-r{=^ewYZYYkg{cyBg9)-%P|K^UZY&_hWoo!vZv@+INTzq+h95yz!FO|)v_Ptxy zhKu9H_i)I$Kk55A7}zhVjp}){@;R}+7&Ra$QTY{Og1C9BIBbQP_|eQ1M*~uq^$E$WP!8=kHD8X2SXXyAgW-XH49m0 zc15zyyHh~wm({bmYA#p(-xmza?@n!>n%e#*BN59s6J^^X07j+WXu1jXc+j05it;+; zHZsZZS}m8W`H!C`r!L{pZPPyw3Jg+5FxlJ_74?j$nsQ71Lu1oX!;J{MG_YBOlSllF zWAw2;0+uW8J5=TRf=1`+ZFxq0TUeC;S@r&;|M2CPKb%YcMy@`BXC$1c7d>yV3Nd&p zK3dN?IdwLdeC+avAHMvtWNz&r{c0N$v{bYP-*>UXLL@m{^{ER1&gcK&gLn#Vd(go| zV|3s(qHDKi5c4!47?w^Z(D{Y1Q8a0BF!eWJuW(uHK_p+aV;b3G14*6jq&3!>O~nq` zds1=#Nlt7*)sL^s2X;! zK5^&B*JDpMDZuv!3)yKB_@MWMK=%I)x(l1!@M93ox_}qbTfN?7*tO(it^7vkDMJeb35m&Pn4{;Nh8>U>!QtX4 zAXp)YRn|q~&(8(tmkW4hKP+kS|HuX$P<%_9h)FZpLvTswE~F=4$-JSwTXr1|grR!3 zaDPHI)qi_k@FvWxY+OtvE|GelCON~Vwv4WhR;fkwt)T?DVHo4*9q1`D9;^p%R}g&0 zHZZl-L}FWT3apL`Pjb!cKl^&M>w=>k&Ke5+!meBXGEiO0a{AyXF6WY0PtHa!xB@vL z7Y=D@+#De?4bZ~o8Xrw04xWGLlXB?#E!lqv)JHB6nhv>%5G=8;-24S+x$U#B|LiU~ zQff5I@w*e^OBY%5O^mrOqAld`430AwqxXn6hnObb9Hv>EY@*^e1Iu4XEs*>@TYwS0 zNA@+Y>uuYxx%L~`kw!6(Q@b%ULv8n^+QtK$_uQV>2fvfvH@b4-p5Y(fJw9D)ZjGo& zrnba>>@{=$C7+pW8ow}ftoBfQB=i8KboPh?O@T)5^Q?Y~zDjot+ag9B_6%hy%04Ylkwxg&!Kw+a+Xq)RodqoS>hE;cpQd}Ig-n=C zNdk4#etK3`(yFgKXBJ^;Pl%T(@kr9c(Gozz1US7GG1yX32m{5T!&br zmK-S@8A`?KgB0zQf{-PG`^tva7|d4yVig?Q`F{Zf_uSX=0k&HIbJ&&7?P#cU#>C~> zm+>#E|HJ(26H6LU2nd>uA2 z6RP_2R%Go9Q!CrOdvkBtv$I-Xp05;Ai~Hwyc#j{v^7ggW6gGTg#9uxB-SSjnbki5M zO~k3FQdHILt3#bcuDbo=IE7AIjq1VbnVs4Fm)>NKb$?J~Y>WQQAAK4(8yd|-Bs`ct z5KE_H8!`!3j8OHgtj#T(kK@_&p;iln0(6JEgO8`HPfd+(ks)<|EbZmf(~afg-=<@0 zkHpfO&XkuUAurn5F}37JigvVD>eS@98UvM=zfQgFFA!5dO(dPX_MSNOm;v$H1pzi( zO?do*Ib5dIK`paB6h&Cu4LZh`YW5a~XO`mnpzf3lrIx}A9gh~XQ(i7w zZQas_Jp(6{5&BZN{OGV(KR7?SqwU6K)F@MsZbtJS5T0Zv3BPq}?KvxL%@kUvSHSL= z(|eks^4oN-AY`XgCVUi0YE*K$CI((Vx8+Of8L|Mo*uB@#-#6-$Qk(}bVLMP}VUZF6 zhAt)TjIpHq^TCWvmyu{h(83h4FarM}`LDD+QdM9qEz&W&G_*(_^g6=xX55V%dsde# zlR24X7F)JEIXh7*z<-iDJXlJG-(n9Po|-<@N$Aidro2e#ZSfehp zZa8ALz^bSc&PNxK1IE>I(lL8@b80Xjd6!$T?S-L8Ca)#Ns-^K<+&ns>_exH<5Pz#v ztc;A{;8HQS0AZAuf|CkjIb2N<6y5-P2x)|Y_mKXo;5>aveU|niqq|9vlB_Q?*-+^l zK5&bg{oq~iQO{q0WNj^o)BL;org|8L-T`6wl1|m0#5q6$w;^rdqd?Qq`3hFl^ZN12 zR@z1M<0xs*W;qic&XlvxTr`(T)HQh9a5L5}-=SJt?s&th*O(ZYro>XHnaaUEwfB9A z_`EjZXFT1yS=TP`;e%6@7(%nnSj8_$I;h&XdGoWIH=h*W{TrV>a^zWpX6M@lI`i}j zPd+%#6Vs*Fw^)FYtYcRzb`W9c;90XO z*;pl?Y3jE@^-;+4STyZ*O-;+;)%l0KPBc-u8(%+Y z^mC>KbG3T5Sax#y8;>nsxj^)(T+AjG_g6IM%BY|8K}`C`1`jMI*8U`iCPmrBL?jjY zU7MfGO_&R|UA(u*mRus?`~TRQfnI0j_{fe?H{wpW6T|uwj+V{(HL_vS59n<&_oyEm z3*pO2T`vcdUToXe;Gu9TlJw;q@=T>>)2{_Ke-VpS_@U*F`(052Ykh56W-abmp9V@P zcTKc_ZW$b+&k4vb7~8XX#<`hjkz)79iiB0u3#%1u?Tt~MA+^TV;cecjF>ay3PJ z*)TCu?Iy_8!x!y&(~a5j#-+DyTe}Uh!H-fGZ`rtEtV)7(14c|lZP+c(?AlU12qs+X zY)Gd{tNTkC0=9>RU8C<~eL?*m{*MsRI#P_K2L#C#fyfg0Aju3sq=E+@xQMXPn7aea zo%%%F#h@-6&1^X~D=ewIZf`vIflXukmyaG@-aWBYxx9DTo8NrdhO7RmP#nMVy_4Ho zXyvP0Zn?Fx`{?rW(Ur#3{F{IE%}YUF4AB=Qckmp}VxUR#y4QE}%zHh%p{{8@`pcJm zz<=OhCrAJFf$x7O_x;0a%THX#v6a{>c2f>{NWXaQmJso9~wrLy5QAn z@PE5-X+X9?u*ld*te|!71LK#fhPl}=Hk;0J2MXp6d^q8e}HW0Dl&Rp&#!LJ_K5d$zDU7tSIdv^Efg_Gyg7B$P%kK z?(kR4x6_5#wN@)%8XYa=TNY`rRC{0|i)HeuG=YR-k~9G)o{J}oR@u!K9MyHq*^*@$R@^9^Ein_L&Sx>G#}9Jx-m}v;*mREKl8u+D5m5sfLqP`tLcu zU5OD8Z6-z#Bu#aL2my|CK^+kerYO(OY<%a=_zQtynCuMQGrM!>pDNisrND^&=iQwj z?Gbse)-e+vxSpND-Wya-?|Xo7!UaOX?h8JYB3#!ZFz74DO;M`E5SPI*B))K5TVfkA z4UqSE{;K-fOg+8OUi;&zt-aCYvF?^DVxT`A4-!Trmo%+CbIp}_IU5dTBAJpjspd-Q zf~Z|ChoV`hUbG^xPNvg#G~@h*QEX@13)?2gR;QVV4r z$VM_FOC$F@w%}wV6E{ypGFoKy%3)RpcbCFh#e^t2@%Pk2>KDk}1(hbzT;jp#iVVUQ zDJ+?EprfFz&?NK+(sqQMMvz9*1~wXJ5Rx9vom#DLoKL1Z&EmqgkzJ*l? z2QzMyI^m=DM{?!y$@1j3#ZsxaePVoTr|{wZ59}#ketB_^_9m4XJF@mKN5+nK_V-#D zC)>U5JvS`ma*Jm!I`-J-Rtu+27FR!YHt2tOzQ4`)NAR*GX*F7l_QESY?>E{dt@q8V z-mM?0+^x-ES}8@+;&_RZR+6W5*CR5RD!GdlYF6W5NkZocIc zpLh^_VWp7E6)IB;xz^!5OO3|Tp2HIx-r*-w6st+yNZ$&0fBq!!w+jBH&x|Elx^94n ze2vFdPadsT))IrsdqWY13`MhSZJL z+P|%?t{(2*ty16o<~MKOeD@PqtGiy^HNW-<`&=|Tdy%#FUi9#0b5E=FuJOCp-`D$xaU_OJsaImn`D*Cl* zv*i^UxmaPluZ5i~dHTCnTgr9qW;Yfs<%dZh7+>DBV`kbsvM{rahqT$BhZ5r zEbrhg<+hxkSA~x?11CQOlcEH5N{c51WIj{B+ppoagxd zUI_Fbx-A|-%#fAjO0GFNQq4q_+6bQqHJhYH5nk$~4F~DMkQHTJl9ZF!ZdxECo@b2i z9=KBEIhJsPd&hSksBVFr3xZsR_)k&Z=5TnjHJAeh;9>jAHdzAVtiX=rpdguulu-C) zssGWiXPx2szIR5F@8XBL!;>XHIwj>#EN?KIurz1uYV%NcXgUw~kDjEO68J>h0`3pY zEE1_yLVikd3n=XF|I&Ikg{Z{ogi|V-3@;p?Y3I8hCo-cMj+!;=^jxW_p z5zQ}bxOlKrYs^sl*1N@6+J9AEn`#XfFUnggzO_l_@$@Jpa(nirkA2K=E8F&z78XWt zKeaWI$vTHO)R)>;4339(F4|jse7jPImMFkIboFXsWXvTkI^?Cx>1YfAd10U5EHgC` zjtioz9>#UwoFSUV4GBsJm!kMV?7%rCwoM-x%W%bN!Otp~A9?}(Tn5kuMdSZE4?ren z&os5|&@!jpQo@Q=vgP*75U5exOE(vCkzDoajk%IagbHPPxIf|;2@;1c%m?~tad*Mi z6X|A0ja@oa2d-apW+v@;eyTg{Sku*^d5h%zk)@r5#;;B;`(7L%B1GM0C2fR?g+wq< zpX2zv{?&*jbw7xo!-XQ_U2eC<4e->UP;X2_-XM1-mQ0YA9$=+#`@lGY54Q}1T%h>U z`|1CI8q729bpu`Lo$4c?RB|y_5OZL243!LrEW9aLETLjGWrdQ(yiI;1!FJ?=4yg|4 z8-}|Pjr*>pq>KtbwwAP0-e4wM^irXOCe#LsnX}JX|KD)>#M~4qRN_gp!y&;QDQ#mi zm5b`(9Pt~VNSb9(%N4F_92>fwin$P65`~wlVU`~Ah#kf#@=YyCD~LP&1|#xw#9|~S ziSsRxhN7ogZSm%@L|YK|rc+Eym$rJ-NbE^+9#QfFA1cYvz+`b?W9{`J%U)Bd^!QX$O)iM6CvhTnZV|NAc7Ied*l1 zaqEwdAe^6**8G3gr_^iul(dKB(7xKIm;?XQK6OFX-3c95DfC*>r(fH(qLan*dlnHF zoh-`>`xQOtzvxyM4!LhZl@yY;)#)A=cCf3T2i-!k?TAl33)avyUc6jN&pTF=nldi8T!%-D0JyHZLvO8)h$+h*hLro%_>W4~f=?a5y|mAZcQkjOr3 zz(DW(GBSN2$UC?MTMsM_^t8U+!(e~)pWfO=w4e76Ka$-#|DWFPbJ^$p`=kb-M7K$& z?dg8TZqE-S0)iMmFP>CX(*#rm(dcDZOp871=Z!O-+=Ne%6R&BeFwzA{py! zikh;+_RVH=Q^!qBl)X$=5C8B7Kls7_2!6i&4an%nVId88Nr*T}@S^px= z6S21JICq|?H&IS!vY;KQCFZBo!8a{Oe_ucBiEkC&R)<0Of zYUhrtuinAbCz!I|M(_N2wCqV?3->4-)6XaZr5uFD5&fMQ#F#dY_IZ4KsBn-#BpU=a zl5_1|_Oj>f&zHu=MxxDbZgg#%H=HYwcO537g!+LM1;EW)p8etX!`c^S>`m(R-bm>? zr4etw`5U>B+`{Y)n|HK^Ga2Gd6|G}V=2WD(Ys<`s9$))@%vAnlGL;T;sGkSx@;pn& zc&c{|JTmY!`S70tFZ_GRd%-3219T>;34#sCnJDmWrgHfUe0Ti`yVb@q+!j?v(kR7x z1&|R;_6Yevq|rTa=E=%X|M7}s^yir9%jg7R*P-xOE$Yk%tt2VMU0NlOpSTgEN6<$7 z7JTipIKBDqz$q4d2YGw)$G34IqFdTQ$^pRH?u+3BIt+nWc(aoi7ZkH+!f~ojsOmTg z$F&QUdLbUKriUusnC+y7s4R+BZ>davR~v_Z-cO>BniG^_aN~uwFQ*1Qyos@D$g|TE zld*tgfm;qd`La(E3dN z=iBF1I6RgsxtYO4b<(R6Cp1rK_Gym&@t3kIAc=3<2o~na$i_9pEl$*={rx7fLkMDkVqVY!#pRD?6V| zm)HK{ZD=7vN9#FB44GIW{DV*w0Fp6**^rFs*y3Si?5{Eox1u%g!S{b?;0WlBtI0yY zZQxGyiY(0GVk)h_`Lfn%&4}42*{Z=Sa0;Yy2erXRo%SK{?%_r234I+gY_{}tyb^7H zN_qTOVE$#z#(mJ1-3f-+en1G#t}D?0QoA^;dPK-HwM`=cq7HM5TR=){sUpdql#nYb z{f(MBL1?-@1k6!sfSi{!wNw52wXw^h_oi=rZq+-mxY^w~wjsQH@qXjdlf^RJ6WVEG zt2$K3bMUBU^I+BT(jsEg4v^6DB*b4%KzBrS|9?GX}A^YGLt zm4L2uNU4@)E?&7wC8vI(XDmKCv-bC!PHp(jP1`p`1x;7_L_?j)3-hSJW(;J3J z`7<{(R}Nf!@qzspn{EnNe9o897FH9z7DU5Y&>97BK1T-tRC=N}2dbd-Rsw+1D`kU6 z$fuV@zTsZch#|D6iLL5LULkd63kV+6Bq?pUY)(<%1ZqDFQq(6o55f}bv;W?iy>g4% z<`QpApw!HHdU#mZ&ZZsr80F|_5%nLW*daB{8vyiy<5s90QC z9&S^!c@7d6Wl=v(xSTXSS;(0{0W-uE-9~e<P zZoc-i6)K;+nnQEWZUJ(4P6|;LR#>eW6J4JKDnL+JA?t?69a<#x_pXX;dJ+OE?M{SZ zc^QtBzRi%2M)b=;czDM#^|k9)tkPr{wpX6ktMZOSyjQ-5e4X{;zr&aQ%BAZk`IQfT zP@eItb%rBo2E_o&wG4WTUWorZ7{gtHAlL?6q(mmMA_T+CDtU9v!7(ya1Rg`keBJZx zVNFg-F3A!yR=^kYVnHJsg1w~=;4Ef#uCq%=9(vuLn<4E*g89-QAYk(imM%_&jGh_ELuQg?J)iT29BK`FN&5}b4_bZj zKc=KQ8@4|EEi)-xQ`AN0a!K`onJSdP<8yro1%V+4>@#dVZtKUS9RQvO z8tlxriQ`evrAVI{*RR>Q+p-FQ6O18hn=jr$D+n`*u<_+X(Fct*z<<}q2DCngr7kH) zZYX746kRnlA3cvWlQAy}+>h)@5hUp4~X&oxSwZ zqeo+-$#4oWuC5-6M4a&G*--f8jCcpk!;l_m#ahf9b-8a1zKR#s|5cyGXC(OxT%6E6 zGT1Kotz#Gn52VcIulx$WSV;J~Vl71!!&$flr0qR9|k`9)LXCje8 zHI>o^x7i7|`n6N3fRkKoq?gp!>H7&{U=kmfM|i$ZJ{5?znK_AyBZKgP5crx@^=Yw| z!0ED0#1aw^$SLwp_UNR+{eg>S9$c0TznNLEee9;LER5#~g{?uO*8b9HmWcxa;!*7f z7h7&BO{)NuOBx9$mSP?ny5EK`#cUoN$u!}cFlA4VVxPf|tx6(WD`J|_sS)TfWR(^mD2cO$1`bCvkx)9j`_(yjM-p6#mVkFHq8=^c#|CmKgrOyi0j)4w=p9N5_2KCbBpHZGk|&m3Jo zvh!NUj7H3(n~t(%`G2u=%+Tta+Z&G>Ixv$yhwbx$9VqO|X}(vgM-2>|n_omV76Yv5 z+wF=H=EHt61gjE-(gxo9+wXnvZ{Pj!a}V>k_VuI9qwkucY;vrVwYFP>JIdQ{=>b0( zm7U)E^1#VQWXG49N1KOEU31M%VQMDdU)~NCa8Kl66d&?)T1tJLNK%w*5eAKEau>G4 zd2kD?244X$p9Rk3cl%SLX312^WF}ohrpY0Tu0dX<#7F}iU0IoYF8J2qgI+MBc3a)R zCq2nb$|r5Q)wGq7J?LI|QpAGw@wZ?x%Iqlt7Hml5ZcASKQ!5O~()+~Jp|aZhQ( zikQ1mriv2WJZ_AdB@Xnhrc}`g*|~JW(MB{%XlR4XaA|zzNyZa}lfd*a)tTu`%m{f* z7YQ$7jAx9Db^ybW2`{RCpWY->&2L9iaU+rn*}sTIEr|l5(B2Rk6V%s<{36-)R&epm z9*ZcB;jppM(cJ_yiTj4yMVS=D#5sn9Tgnv7*_CW#k2O0~O>UVFZ@wZ7CDK)Hi9v^^ z5RH;s%48g}2J3@Gje?pgVcetvZ;hBc^$7cFm3mnVMa+vr;dDY&59bn#YvH=%qNWAD zn7%DIK~LHj%sM2&i6$JFe@v!!MpiZn^H1RP0FcqwvzdE-ESD;YRRDWBk}6A#u&XXX zlGx>}JDe=EF$0ZQDC&B!L@K?J&*KMnTN}@_A8!m?fB-d%Kt0&%ifhl>193#i`+~mG;bnhP#?*o7GgQdSl6Sn!KkI6hk_wL`MxlGk&Q#i^c4Kny zSSMb!-R%kQZBa9_;l`LZL4r;u=Er_mF0@NKw{&Z@;e?i(dj3P6oAU01uWosw?QfiI z6x!9$k^H3VR$`lCk%OUXbepBpZzH*fgEMPqlkg0u+FM%lqwUVNVp`+W3sqV6rWB7`%eZdWr48Cm>dF0iD>9cOzx<`pWw=;y9`r`TVdmp zx4Ct4{Bm2}p;DT<`(Co_n58<;=zq;KL}}cx!He3-uaR&3I_NpxK^dF-7$b2jrSzYC z9}w>7yL8jBmlnO`-KOV$b9AJR`#h&Nu^J5Z`g>3@_=0hltJRF3h&8=U~^(3v}7(s21~6tVWzx);4OIKm=Q0GG|5ehX~(?AP4UWK z58pZdbJ%JPLNQVof|&uaWX`pSxYy~|#1WB35VXxA#XS%d(7lRINou6TY6L6IFNjgW z-pwNnk#Hga5uMYm`lLx4@;SXK19J4waHFTzmdL_Mz6Ym9dnumDX!^`Hh#j~ivjGDc zt%1NY$@<>B2^!Rxov`45=&26XF4ecct-#qb^^%$URz)f)fo;|)8v>xmHS&&C9hpee zRM?LZFtT$_v*Gx;=zJok*1ktdGhDE=a>m$!R^3w1a549L)M8LSk&J$sdZ~8Ejl^$Mu+X~B8fVgbY^F3 zlb&Q{lgCWZXvt5+z0Pbw^S#{@TpmFb3vVCOj#wf2I{MzrKjIm3S6F#D>_OUbS)({% z-)kzE_?|qPZ|}QwJjcJPsnrMeY`VEMem$1lpDS1!98;mv7Iv= zzjnCaH`a5;l4#E|){$c8>`j40wgnf4`{yi9DhkA50VzjojL=<{FLMo0N|7=ple9@_N_;4@e;o8wx?&N?2QO z*t6$`J<8$Gxjj7pAx+T;oz~CfXMw|7di=q$^Mm0X8`)KWnaW^d3+I z=sgK^!OzkEJ5ndn3;MlH=M_L%;5F3eVQx2My6s2DxfQyp%>LfIs7MyT^Z;4#zpp%P z>YL}u4?I?{Oy@C#cz|I$`;*(XNG>ycq-bDIT6%czhbueM@c7c1BvO?E53#zk_Pbn| z3gwgeRH2f!RU(=uJu3M-al!?A z3Uia}6$f^TBnKcRgErfPA5I(^AjEu*#g#Y30qh(6*%DMO+rf$Wmf&2N^k{2*Qw$** zoU7jrq~bZJ3XNC$jO>34y zt`HeR;o3CyE&32$pviAHS9P-bMS3p00e*l_6`iEiwt!b6o^XpxDjL`EAYkI#nGc2H z?_!tgVy+S{wyYAU)pClRVPDr7W$i-5th#<>%q*D+tzKx#cZ;TuL&_P68DIeaFiz2A ztdZpHxZ#Kw*Qrlhfsew1CP`CY&xL+#P*0JHoz@D*>+aO<)(%{9_8#q?)KE*6>YAz+ zb8sla(rgkc(Thc6P)lh=J*{W%(r!Bf{pg@}QjcqiWepYt%o>*fa7witLs7Na-nud6 zL|eoAlA6a{aozRW%2sV8>f)so34!p@t7MTzwXsR<;t6eHY$(>&nr*F0YF7yQ4SjT& zBlaT!p~=xH8%*dMZ%7WZ9L!K+iSbxc0XCz`^?Ke^9tqF`A$}3F1N}uNbml*7NT8K4 zY4??1@#_RrJ`COXiLjbchefwVm+fU=Nf3P1z1dX*j**O+=FydS-2S4(0Oq!)DNUa= zc6z2{zQ=Q4oR`fd(4lNi&f)}$MA!XiFTUyci3jCh?Mm3DlL)&NFnkHilp^I5NpNR!M>i-93& z{^Ue3ul2Pu5qF?0WD?_VnMwG3hroUhgedosc*>5)myd9F34^I20cUo4O9w#}QaO2@ zON?=sPAA4krjfqTDX{iT%_AQy5i&Np#rN2}b24F+vKx2wqdkLrLPLJySdIkRM5xB? z2_9|W2=ZY7bewQd?*l1x>%bG_aDEz0A9_q5B4q>X59Bt0VyP#^(?v5SjuLpJQG|pn zK8UZ0t|z)H{*p!z>gv0z2_oA6<>wg5sI|d22su4Km0%0$u)(>Iskk3nG$r(ue2?f? z%>9l2Mq5D6qe&N{XiR3+vYh64*l6Pz4#gsVD%}p-A!-1eXkod;aU0NOa&e}B_Q8-; zkU+)V&{8&^gk3&K0J-gdB1vkYc{f_C=Jv|yM$&~F5MJ)XUb58Xe1Vfr#u_*sIN~=g z$4@X)jFc7iocLakf)&ZMmz*Z~#*Bu{(;0kok>;=qCCJX3Gto$jNa+3_+ZcDPXtogn zO#_cg2slGXBL*0abnxC`3mKD4e9$v#u&{tQ+0L_*xY9prThx1CE{aYj5P!5RobO%aG-{}3Wd>KTo6MJLZ}Ep}*=y@N)acT6P$rhg zqO)IppO;wOaK}w|96oyDkFMzMYpH)K7WZFQ8>+oEo4R#ZI5gixhwKdYMn*SP!~G8St0YKw0RMeqA*Wz8cy244PG`rJ>jB;4nt{d%QlbKbkqh_A|uzJ^zx-Y!Yec|k`%z~kf&iW&RGcz-#>DwaNmDSaivf92S zO$vzUOaF$xWCl9#bl)n|nd(V_4+;}`y(tAWP>Oj9{Z*XdZP`Mr+G}@vzWP?FZZ4WL zrL`B%Em)@opJ!WIEM-y+@r>i`$Yi1$5_2P|Y%+hRdS;}w_Upp$rshf`Yab82!8XJA zgsGxv#!|-X%+fWbtXoM;Z*n(B5`a{!m;dACm$5_M%(LDI(*GmmSbv*Q%4iY98fB7@ zFjj-&Ex6Yioc?^5*_qKOcpjRsAE#l8rW?%TIsg@w^)0k6ynS;Nwdn?-h;wfn$PS_7 zz)DM;&uW{2<})YCJSPJkBM_n%4+wcC`8{IXpb4Opl<|VmLZT#z9N-0J-@8mp@@t41uprMwYM8z0OR^n5mxryU3uXLO^OO{pW;i(!41 z$<+^QLp6paJ3TYf=*r^>0)j&4V~1r9%+rHil^LERz*IJr_NB3x4#{&J@V93Adn30XTfep zAAg+rG-`yvMujvxYWiq-;s>WUhYHDT9c7k~gdOOq5eEb$IoN28dcM-QzBRJ40o3DR zHEqNafDI`&;=paSFGGytJl{ebuNl$A*IH~~UPbY?CB{v5K$b*~E-q`PWPs3U<&rm> zRnLgczjjt$)#l;N$<3D9yji)6NmgRHNm?u8Pv&CknOF8=-?f(;qr>fs{;JU)-i>S5 zOpq8FhmpZ}MOU!V6AlTN`8i)6wgM6eP!2D2vuQBca0a6Pb*AfWdR=SA2Bg;^P|Vop zgPK zM>1y-P!uoqP9#2DT2w?NT!5)A!#WjCftQkgg8^=b;WLgY99B|APql-P%DX(D5HA*>KYoW4;47>;{TkXYzdTv3ZRtL1<{zEA} zmeew*ekv4ooT#%ak=Q}m3Ow;ztXZ#NDL}Hgi(~Cg8*D4Sc5Uewt_ail4!^IUCkfJ0 zT%+*xLF$5rFaOyYp_AP$FW(~O72Y*HHa5*vK?Ty8S~5|c6?tp(?{d#~5|K%Q{TF=x ztl;21>5if)imNMFwq>EeEqIqCWmzW(iR@#69c+33M7^~uv%Qpmu#~Sgccva2EUfO# z{AjSSYbRQADZg`PYB-&Dc)NG7pmwtHqIBtaKA(^C_HaHvb6ozr^72G1>9Ckf%pB)B zMGyQFVgo;eN4hewJa7eamz06NNbO^ZeewFh?k2e6Ue^?>NX*6luQ-X=T19@!6|+%v zUjeJ~%j4x2$tkK~VEHVok6@LC-9eD=`l22(wv9l;rrFN)97CTZR9|zmvCzjqZqtn| z5UHA3MC`0uwYaGrK~*mrp}dzh>$Ax*WRGD}E9!2ilo7n-zhh8pLG>xFl6Pn zZ7q-ssJZsxeSd2HM6{WAldNiXrx~Bvdn(+RcX5kpk@5)LN9^)hXOK)%3OdlF-?8!` z94(OSQg=+DA(Q2@9ydIftLMQ!P+X5sT*!$$Kprs6?3Cho&Aa)U^>d&9XWP%7z32A# zzw)y7>?@1G#tYZgGiO7$-+s?4FT<}a1>4SFr8_fEsF(kn`Zx6@MxoD4F)$$>p%HW^^%H2<_~(M&@h$FYLN=!3kZoFm>JW-N?WX?hcjbFIpNLOBOm$eP_OA zjDD6|44U+kSm^cE`-&`sDPknb~?{WWLdum>68=9Qn-&&}EcapC4(| zXCWcsJH)U0vi3Ua(2w9%y&jC?n+M*3ELj)Ul&X@{%4L~}0bYv8;5iWW;Zm3g(3ubr zvUQ5|e;ZR1ZJw-L6j8A(L&8ylwC`bk^@YDo<}w#ZacN=O3p6zxRxGkv^nm`BprGc1(i!_baD5Drs^D*TX>r4*HOyKNMh_>6q?9kw~l zmnKZd%mDcxpC>^kK2}K{pBY3ry(?2!v z2KdScdSI`ZMMMe0i%Ig8OhmFqCLMLAWr4zCG%gQ8h@VkH1Sbx*5y5Rfu{b4z^(&wG$3D zJ<@cNZukQH`tPV^Z}G> zBcB-3LcgCZL~-(jJUrZb6tk8^G}pqrRtaitr7(C{r@Zv|+B4t29;L;m>} z5#Mt`WjV3ak%uCr_%gckumua{MOGPHSl34Yr5TrdAI{aaK?}0MQK!s zBvDE7Y~w>8QrUm7-e})$e8T9?>oeBXSGl)gWv#t_Zcc5S(x=dG<8EtDsr2-0fOC04 zeTK1KV5Db>GzCLlY)s3Zl-UQj4dYN9%Wi3$o|hc&`O}RpS+`pnU0xpbTIDAXHCkh6 zoMWxVA-}SGcsWSUp{nA`U(!a&#h!!@|I;d}-m3swd4z$mzAdr9Wm02Wl(8$`VtJLR zE}bEfpd=QY-!iBDR-hB`8Jd<#3uoBuoETBP*&fuvd`JOO?9S{AVPZiOlcd(0o#_Os zL^jYN_#&e9e8@L|TZW8yx)18;iQUg9azS>N`(>V$`4@a>+ySHxbYgbk8UAiO3-KRt7&ggLtoU zD6nJLh>T`6KjwIKBK?rnFqX)`F;pE=nj=0a*jh3c4dU@^$@H6!k*yQDOeAOy*-&26j?nwc5^7Sw)qw%lsha#8oU))KSUebjQm@?*vG=Fk?u7 zELUf7n;3iM3ZQhj9BEC>!n)%^0Bgqp6UYwbqVuVoLNxlDO1~xn!6)FV!E`|`y0*}_ zV$)N)Sxb~tsa!77sEwD9*{EU!$I5Av^vKmB?nd3wYTdSLMBhr8R23%&u|dR@ksT2i zK9SCFBRQZHlBGT%{33`060ma`36c_HkrM1a?dRaDni)S8Gq4qq16E0-mD8R{Ir?%Y zQpgaXOl8onwuvNav1AT4>$IB`?PtbYJCjaOt56XofIy{ZkOVL^vd3^ZGr;f?+Ki-- z3b1l|u)|q;VWnuKUbHeC9@`f&4v>%PbeZQarb?;TEHAsWNiQFG?p$&sQ-Ntt zb<2mBmlJbt!ixt!Yd5HZ0sKx1+rDkEA%q-?$XafllSj4k9UsY$Xr~Z#DJ7QL>1Mq| z!gG@E3YS}cC3VpXG9SE8WfSMeLfnGKdZ&1PEIba6WDZF_C=4%Vk_t#Z%8UU6&AJJY zEQ8sSD4N(*ONQ4-*$<}qIlT``M$v9C2CSxGXbAWoqJ&*hiLiq~$NK$R0B#_jf{TE; zeuWcVZpNN^S^DYH$%73mNfAmRTIs>{@kXbhlE)P!eb-A})fp6=*KgSQ@r@4sH%8r9 zYE)8%jUt*$1%KL9AFkD&`^Ye!^r9e4U|DdzYF{A%+V;r0DWwaO;|Hs`8nOBiU!ev3 zCRV*oG^WdWft}0k3%TU|1tv0XvCxD-%?Z#|mA-)5#>$mnzv-st!Gk}(>n}DQx_)qa?Z#nsHkK|QTU>k5X2H)~x%DSENs|)4 z_*r7XQoG1UiS5QviGu4zgOc2v3zF6Cbf+6!BqpjagZIqoSXiXF;&~(qpWp`rAOcp% z&<#agV+P>ZM!^rm#=?9cmrP=JP3+v|Zhh0Q)qHiruU$q-a3@F;GSRbj z%bK}kn)Gq4)i&ZtK1>uGwAbmorqR4|I_V}rAxgj>f0R#?aRVXPNRe!r|JYW4X-BV? zQzvt^+Sd2RsbT?^>xPFPzTsPMIN3jR=tYN;!SRB6>e2u7`sa-6U$^xXOAhrL zudYo*3VSC%^3c62rNB}jFZ)RYyRdC$ zr?=v)e{wUv`CnIma@Ve(TwT3%jh|bY8s^lQJ2x9AyRrPv9J1Eqy5X&cKWwqxzMiAc zz85c1upwgcZM)wPlVM%syGf6&>NqiClZQ)5Eueji=>lKZAC7Oc1qmBr8vu59F*H!E zd+y1tr?0zIx5!S>jb6>pGVjFgM!wX90MfX$G&zwc-w6&}x_S8e=KR*5B{CF1>^^X^ zlOmP1)nlkx7%U#&xbZl&jq-dZ2;zDQrTb)-0y|TMLa>}g{e&oA%VzJBWHMrY&Z-5aL~az$v*|CjocP)D?YhQ^NR z#K7EfH3A&rq?NPgw48Lq(V%nzNieN0kQ+gf9D@z11{j;@1JZ5=O9L8+*wI+R;Hn*p z={1oAq0Tg{uM0dis*PA+uVItJAhrbG)0W7Zma$8s;M+$FZC!C1fnhlq_Gs1i+M^hf z;9k;BOi-2Hj;GR}p#Udi zqWK>Zj+2P0BeA~sA}!)JHYm2BMbHCup+>?G5eq4*&CXt`pb{jKs%+&j%_=DDQTirX zPu`N=5wr452jdC6T+;&V3j{b*HQyhfrI<3Rq5zUuAG$f1YEDoN0}w6;4=x$-=yZUBmdPk^GIp@)m2tZ^2@YUP@MtdeR|RCj2zKJv|PI z!a?@d(C&`9a5qV+=Q--Wt5m)NqZ>U50w~l=D_Z>$osKlXyrRLvl!%B~1(Bn;Ksf8A` zsQPTbCza(&s6_G#@K(nxmKQWn(0#rWSViP&k@?8_$vNA>R|TyfGnfnio^kd~SX&A7 zY~T)(Ek%Yz+Qh9SsM%gvl5|=c9@ArExj(pe&yicz{?@Ged3{MaR~@StPw%<*l6~r> zx_aXkFL~XS>h00F_V|2s>#pW}?@py&bX_WP6MZPhoJ*ZBnPEh8urDKcsM?W3M;6}| zxi1wQy7kzx>ToT#HbR$=wn7C8;=9iH-V?O^*ed6&uu6pI{h@XN3h4D-|4w7Vq2X)}?rIWkc&qNZ| zs!p^e{UCIIeJy;seZ8Lr8xRd59~>4G6G=k39t5`f5Cty0Mlwfcs)jsK!TsFExo1Cg z?qsnjPsNSm*4Gu;6mTHUohzO@xA86>H;Nl4)rVNf$AmGpZ}K^BVO(Alo(m)dIJ&+i z7aJr8XiWyN5iIE2!c;)&07Y%=zU}q%gfnCh?vEbWU7LW{aEU7OOTqm&CJ$4%`{R{p zq)JuCsrmiz5X7EW$+whaP9u6R*nF-Ucc!MDc-8Fq3BO}LxAbnH)yIEEU#cw5 z)utj@B3N!+NS#~X$FYsR9g^e3m*`M<6l%w;lgl}?ZKu<5!)teezY`k^)G;L$$G0KD z5mGpU2YJ0T6tac<_Phm~|1iBp-k^glOCV{K6|!DEi?kR1s66WNHUuU-yC+hkC`4L5 zV`>?vo17EIL9$M~1>W=^09p&eb!Vv$u+f{+tSN1QV79(M{MZU9qsVxK&+tSMQRz&X z3tVHu-8``zgaRaiLA2Gwj#vFTMTQ1TddT=7aTorgMoCkiS3MG2u-@@kmix_RdClUE zya?O6%&Ohxg>Fxl@PGvSazA{vJbKG+vMe0;N27oEC=*$LN^=NepdkaU2P@@YKeze= zAf_cLlft>t#b88BvTsu|g?{ud;i1Cg!o`uuUig7uGK`#Iyg7V)*Bq_o-~1u;81_T@ z;_6xYqx{k$ERZ>OHE#bflwWxHub=0HH6|#CP55MLDPJrU zmZlBL&?Mo==8VdPe|&LdW^*{w6fhB5ZZYCKzmknyuQuW5W@d8!M9up{V_DaijnU() z_goQv0lu1%%T_>v`m*oU;7mb;~QR%IN(ylH|!x8kuyS_}_jq zkQx~+;CcH4mM#PjN+607sLN5F608WhZskNour?m?lZme0y-V9w#?FN zKK`1WXI7Wz$w7*`>BGs0I-TrS?@318R=ZtYxZ3yL=|mTHT=&}7UblK?X90+;oNp{A zBaD#|wB0XdEWR5g{Sm&0e5~Eakrr1_P|uJsAJ8xH%0fVaMI$2zDH=AJ)9Dr9n@eH& zAXg9dSZzO4RPAyq!dMCq$uhQ=Mc`Q5T(RYCX+ptmwL#{+55(gSyf;G?CL{gmEwOn2 zs)hYKrWRGOr7%P^MJdSl%>USQC$2RWV1@0Yt2F+kd z04^C07VVOf-v<}^5B{9-R;Au*{M>{6g&0=L?82?@NW4lj?nvxAv$F60x)pQG%I)j> zUtG9BM<2m+O6Vy>lGWF1+Uu)H7@_e>&hg?I&8&}R=^Jw-CLwi-^ z;Qf1hvlvGofy#<0?KR<`nvCt9yX{{-iTy0ROO!r=TV)&xC!fIXjBx8=pST2AGSiaU zmo2-N+IRbn=U#Wi^?P=A?mcp3xZF|grTp?k=TgNWas1I6ZhT~OclXGBN5-2k>G!Hr z1iXP2wqu=A@d%_uYMXGo7+*0+h4u5pu72e11!D~3Qf)S zQRAD@85B}eiDCeYq7pQ+Kh+4fo(>v~KphPl4?(GjOq4szK&flXbD&&yyiqE)2x}`l zeMMuhQeL|OnbuD9>r=B{^NJVtZG5l!pC(kMJViRs&NUcC8iA%lw$4{@>M9+tWF6oz zu45U$`V5#!4^9d*I-z_?Y?pz(FI6U(jRXwBG9Qtr1dJZ`m$K5gu#vKIl5CItF4tsQ zD<*WO-GBfeB}nx~+ZL{&eig>3xRYobdMK5ze>QX7wJh zX>6g~wWk=8bX9L@TKCv$yFT0qs%c&A+WOVU3pUe9Rz1Fd&%&{6Oiu?_&#i21-y<-+ zr?&n2v9?aaZ^Le61HG%R{J{I(zx7o$IJWh>jVpiV*y~kk>(7EG)XzS#^*2w5tt$GB ze;MKmQ7}OgAlqHD9fb^*UN$98ML-o++x~B;{MIiiwRJwHKI1BPZO@*q-}}beSHJn* zUphZ_evHaLzn=dZfwtzx#?}|VxyE&^6GPn~t};bNt#H#qoh^Em2hV&I*=pTaEN?OB^}$gk5W5c<9fY@_R;}6xdI;jtz&=7(4IzU zq8HYz{3R3|o>gB|UsHdE-5*9EXzRO$h(qK8d^gqu7fekF21X3B`p)A*E!nG{np0-8RQWnj{DfXaEKc9}*6z%Y%hMUm`D| zwZa(8*b5-m9Wi+WDrV9{ArA%;n4(joe2f)C2axXV2l%6O0HRW!FV>CpfBC-f3b|?W zhKMv~%K%Q3EDrbM5tAkm?^%|tGYGWNmm94XuNHd;pn_)^2xPJB8*Up0qX1Z0J38Fx zYmXX2k1Hg*4Jpkz3Yl>rF4a)3v(Te#t`z4j$LE@GV89WED}fc+OkzaxF-v&yvPXCx z@NNR4UJ~Yobixf7S}jYub9g?~mtDkWB+ib1BU7dvcl+A!5_oB@ZD&jipPN>yk!QU4z0pKA-JWCf(1O6b(Q(>Agk_K*BWZU%o<;oaaY+q|nh7dnYL@+V z9S)T};mzkKCW3iCn@3y#izbB zB?HEssNSh9($Z3KU{7#>v=2c#ZZ4pFhr7aBHbH$90slO4jHrc9(Sx>`CL*jEWNyR0 zv(d+){vn@A$bvBupB%n`n=N**4r^w*epNkf)=@9$6ww4m$KOh>tQAiO{bau3NS;%*WNHxoYDqVPtoyqSnYgorrVX$B!pH0U%G3KEDK zV8ZDZ^S@@Nmou3-0t3%k26?40_buzJ?zH`h_OHFPspJMv9o#gzLSuj;XMPnfxQnYkan@-v^M^2No|A><> zELpVlo;!_CF*lu_C4y)z74nW;vjp*b+ATwBrGWS$9;y^PwIWr+YPb}mNTPb(ung)> za$YgwSXlmr1RxRRrI^BF@ac`WRy=?nQ=ihNcVr^bWN#ydwrgr5AIWIRHFsJgIA^N3 z_YYDfCX)GcwgnV2seys=8`;>;j{O6%^~BhJ8T-?*?=Zg*8@EDWkB+*iGaXAeMZbWK z%}B^=YUJW-@r)}fYv|?@%o1Mwh0(&cM&!H~-fwR>==NG2Ibawcw}^=2;jwRzk%f^@ zUM^EDji>OJQkG#bnlIsML_kJkhm31%8wS{AFbj18k+*%^1(Pqnjcj&!Sy6}+oUcAXBNMSI=vvHM~R&q zKHncm(G%!O+%HNNJ33kF6^qP|D5+sqJ^cpZuQDtwY%t|%YHiY>jdP870Q$SwW=>*J z)v=j>C?;wLk~?DqsD-t&FBSy(`mt6%Ae}yH2if+~+7Bl7{Py5K&d!%DGnei)-+6oJ z13Zh}_bi_xo)#`Zn%2|62uRbS)FRL~EedZ++E)jAJOmmG&}2t;)k zK2MaI^*ZI!GbyB*aC^D#Oaa`5d!^MdCD}51>a1lOnQ+h?h%lyGne4dFyydZyl(hSh zB%me0TuLJes-Df%Jbmj4eS#vlhI&AsEN|V#;2m8!aMp3Tr*H^R0--HN;`UBz8uO!K zJ8cqhWY%M#WbAa4XAdj@Fv`Vds55KjX@q?kU#817&}DcLaE@R{eiyBj-{u;R%M}j0 z=eh)sLPtiFJuo)JzzHLjhI&un#^P7(EG6o#dackY`*f+qi<^b1_3?&gPkx#OA6>4TBsY|AogvC5u8>hRj_Q-z%iQ%D(D`G(lgVw?X3pFJQ7gk3K8Z(9c- zwASR#arL>ExLNqbj3r@?z1SxqWl|*Up-PUFX<)F#-k)#@lTO#P%EOMAE0?%g^Sdt} z%(NEC1#HHsNMhTI#j`smv$bqx;@c0{)oG%tww=2POJP^MCZaX9__}>rZ*X~W5e5lq zRIz5DEjDLXUOiD^ugM)D{{7r`UT~kBVC?@Fa)Qb7Cc+{1WN5{Prlbs;BPeB`_J`^w&vw2g_)d5k|c)7Xk?a`I!V0+8D)6zOiY!~snV=9p8yc%pFMV-L6Xav zz4GoiMifzlfcEu2)aUT)&!Fe`%-9!+p8d(#{~G(JvG0Rf)zu=S$WgM-Z|CejtbSAd zuKEM@EzVJHT|=N#i3!Ny!u<0P*p;S|d}&6TtHyg;&!k0#hZhSS6D@2ZU1& zc|cN{#G4R+x5GB@#@L8&>S|rDIdbs3d?dPcfKK=U_EJxd(Pcd3xVQ}qLqdDa;TqqD zh|LhNH#GWjjhMvwK70#OFIpX|%SfIJmX;U&RmBl8CpdS$o-CKio1RJtdZ4od*Pvr} z0uI-KqbFoTK61zgUR57)PFP+Ix8#)N+Titx4>!Q~;wrKbG=e1@9}n3@{t#3R-8DXm z@5HFZB?m9Vo3=W9sx&oCP75e)z(9g(_14L7)TP7Np6<+*NH2sMR&a^7U?0jXRwv&e z6U&*gO8fSzold$&Ruh5)veNOim<9IMUzC@lWH>7Fn2@`cs3OLLewS-_Q_R*3)G@nB z$?4>Pa%K4Nwc^Jjk*MeV7iV(^^Y75RT7STM@L zz9n5Eg%2yP7QRl5Y8@o`FcmS!Fk>5LIv$L>zPb{r6e?}|2yjQV9J2EaEJ~H_zcI^k z`hF`L{WO3y!ZB$>%Vke{royrbr~HVXsG*T85@u#a<{TSBnmA@ULToW+qu4mI*MuzH zOoOzG&v9ZH?3mg-@T+t*+|-ocz)VJ_?(twnE6-npKhdTtC*MKi5Ooxe8b#DCF)&;Q z&m{(FuY~*O#5Gb_{q$@O?~_{@(RU{)^^F;5NExWWOr|sT#H)IKOhauOaZgQriAN$$ zA7-3fktFUZ#uLA%Qp<5KXOKXqB@ZO@=f(@3fk1z;;^n=vo$MOL-KQ48UT_}8VZz2@ zXkqwow4HpWNX2x%EOu5dMf#p{h(vRKk7?LTj0Sw^9Zj?Y0L8MhC>hIA}b zi-f#2Ow9ButY1i736+{pqXMUNADSIkik697cbq74f&{**Sf@rdhb|)O*Mj^LrnJxo ztLF$jK(IrhkG#29r%n);8{w;yM45>kM<%s-j#P4pFF6Ln8wzHnVC-o4LFj||DL)!| z4A>?VaUfrY_MlR3%{9o_&v!926-A7q=&w*6PjMTtb=l4=p+3R)$VGf>d_sw^goWHT zKCp7DQEs!v`Ez8l<`tOR`M)~ZO<3_Ax`%Vh3aOWh6l$y<7Eytl z5vsz#8sH*vfuIJ2og82C$%{Bs->_lJW_=TR@JwzEUU5uC7AB;+Zzn!eFMI0r1vyDI zM;f$M%>Kt{Iu2)P>hc&|;HtBGr&FQsRAwXOT>Y_n7&{dOzpT$^^2wsH%>4x53>^r8 z{bdl!z3s}}fgDr7q3e@+Hou;^Z=yclO*e!3q&jlRLv%*L+#NBkDii@t$MbT30U>fy0BjJ=7GPE2}u0Q^%dS;F~*;+sfD^TEhF z^p@~w;8H*+p&+u~TLNnFP#Gos-W!0{FZFxtY9U-NVRmoHTj;gzU`P&#zgzkJ?m}mQ z1NL}c(-!*kD!p6lCY9M|JsC{E*`b*9koW3)%DB;ZRz`gOf0G$WshgROPRom<@^Bgv zfSY;Vdik+qMAx4ZVM-sl8aK z7qjz0*_E=|L}(8?R8%(d0SsF_BQAG3k%m5 z58d$1>r2_|OV`ZJ&HdEe^;uMzt><$r3$SemTBmnWSw;H@%iEdTk!pVT5?#$q z8AkY|>zByi8b?zaFL$hQ@X;^FzeK537$&3~W1o0DJ;yOpIwQzWnG*VlkN`QQ;(3 z`Dyx9RN{2xkEFYHmO2&L^r&7%I#8e9c=vnM#(%HxzUijjb+vIG*y8*RH=G}9!)n^P zVeI_)`LW?pjq#KT{q$#v(LEb7YB$Fo1V_b`U@j2GHnXZwvI+MH9ovQj-{mqePE5&w z4i#RSj%RN_lX)W(f`s(K<{`cc0}EG+-!RxGgUTpgWLpnmbzv1rsDKAxALd$dBZRRhN~Lnr;Pfxn>l^j@ z6J#wqGj3|3G~q2>dg+okQCdhPXNUqiT_>F{mFM$QmrPy1k)JP@ib;nt6&4lhw&w&N z$}Z2t{|caZF+rwZpoQrz{dtmD_fmWI&G+2&hORIyJD=_vcPC$~B1=zF2TUzS?Lp+P z{wmTo?5*$EMmrMe81^@|zOB4x;?ea;WIZZW@bJEU9c8BK-Bj$MA(J{n}%${gb!f{*$)5^~~fO zR#Vx{_nazkX8rl7s!qliX78WwT-}5f~Z@u<9y;+dr3m#6k_QILlg1HZP>5Xx4Y`}-Tt2AGn+4I+y_+TvvQOYeCPGxPcLUr>JokKTYQSqt;?#TFbBjc>|aHhC1ex^<1< zruZFFHHD?yuY4&J>*@dyajg z>W=AJXME>@13SmNf9*Ikx6U|D@6k6F3hSR(&lhKA?DcETT)o?xnfY3@wG*ao2;XA% ze9o|oxiUEwZs1utGxX5L`vb#u0NycpU~xR(a)2RQ7LBgy=?Xw{yguQ zhkG-(SOIQqf#lanqL3*yy_tz?EM3oos}#z;+~izm&1}OtV@51%+KV*fD>{$->0dDv zW!l^?Th^CLwRkxed?gpVE5={$D?#k8FIF4-5En~Vz+brRl!@}nwGCkSY_dpr)gljf z%;bMV+fa45CsH{;tdTI2r0qkq?USYw%FFl^1oz?MjvnQezohE*x~gwIckZdD&N1@x zu<_ipyx`@=#b-nc4i4_6*p;swd&k(%j(u?K zmzcXa=n$@DN02deZKRI`zGOg+AmsiM90zXCpv%{il_4{et;31G$_ln%plFi}&v+UB zR&ZbFci84(-y zgoYVlv{lYz5xNOfG$3D-7>48c=n$tT$#IPQ9)c#KNz4Re#HjXFtb=lZZp8MPP0MOb zT5Zc}|7EeTyIA>nksm62G0UnHHN^QA#f5$Q7WfkVPO%6Nna2|Oca+`Bx&o&C_*)6B6uRaH`X z4LCBc*(Gu{YzhF1$SlR^Ji^r&aEw9{Pv8#a3>l0inem67b3gR{!utQy<=pR(cQRN! zp;_q6XFXD6iMpn}YMMx-i&{Nt0kK4u*l9LXgcXv^wtPKS^wJpSYDazZ_crSjo2O1~ zPHg>UiW2QV@OR<|-?H}KvxJ#+{R8WE^osXU5(cptz6*JyNpz6FB*}0^3K5=3oJ0|D zE|D}&cH zRwi?g?Wbr}!rezn!2N39KG!wIT^M6Yf_3qTmdzB>E6k{ot;gzL`TO0~zeq*qVooHn zJX}zR-T9rD9_%%$)yDsz3PB-xdo^B7TSe;{Xf{Eal4#Y!3~gIDvCnBM%()IKviC4P zhG+@avV`>+ib7rylM1mSDL2}&!ytsjjAWt!c43gBrE9C&x=FTx?7=w32!q3hHOC8F z6jCUKG}a(Rb(iXjv7lZzsGx+b=O*i)?RY@=$s_^Txl>oHXjzbunH^5r$y-($Q~c8r zCRm8ssa$~(#VQkIx+VfKrF@HDOOqCp+sBxcoCXQwrPSwzpCB1wG4 z{Zv1h#Menoti`V1x!g{}RN{VIT1#Z(K3dbqV+7QbAaew@vOvYqI4&(id$ z>tz~W&&UuT+CIOFzxHcfFRbhEYK2WAN19_=8@v1R%kP%|t+A8e=haW&bI;c6)VH@t zimg>-(xOfhX*fyX#8x#FPJ}ixfYKpx((Zt4_50V3 z+kSV#%^#>=`O0gqywcsZK7Y@lqxa75-gxci?D&qN>6hBYQhT$b&h5VT%6p@Q>GJNW zd#*b1nyt)^W4BEleel7f6Sp1Pp=vXG#`}9pnNlfJiAPJTd_M#G>pb??>&6IYWooY< zsYbmVLIa{j7WKooKH6)%b^KYcm{wV8#n@j+r%$PscdtyYq|>|Wyx98Ib+0*j@-^4} zy6;i&EuW7x0N6beOuT3%;``A`R8dAFo>5s25q0NMz0^%=g~|ylyxQI1)fcW)>@WIQ zQTq0uF-QL_qxfMs;IC(P{>0cH5K}zQ42?f1rX!PPGgP$+7_w>NJ&H0gTZZdK#WF(1 z@OJo0(8em|NrctIjG7Id%0BZm{U;2r2`i7;I#jhF{w5Q*-}DJia!k4HLor8lfmj9j z@!&_|sEU8u<2tez{w)CnH0A`%Fz9Z*F2JSE2kaDkekm-C((Rbr-=_bx2Bwnyr<|?s64zLrp70D}i33nu}g8RE|@VEVH|mo9MXi zII;+k%S0K)e793jObowW+n0CErr&NwQp6&t&ybEB$l7`-;V!*zs*oc+4+2nW*Is&# zUTk)sjAc{Jd@<`#{)W;gjchg@Eqd@aU25pL_5?9FB+N5WeB#N!(i;fTM3ZLHM-vac ziQKvIc3ItE-ln0W`q+q`9Wp9IL1m(lg+ z{Ct}Op-q7_M!-&$87c-kDu)hYrw8Dki6@JV;1OB}1i;}T@m--m0V~*2 zzJi$16#3FnQPgLtMj|IK3Go^?vF;_a5EbeYja0YnU%UxmkkEg z_KL<^D+wbKAOmsrn`#uHN^E_wqTb^a{Iwm!sk@`Cm<0igNKd$JdV%Q`4Z-i9|L@ev zdp}BL0SLhaOl65MF+O*?I&78pfTZ~@sOg|%1}HOw7Z}5CmZ5Ke_@eqLDnkCRR-|R# zse?ABC^zFepZb-wW^Db>ci;SvhWVh_l~L`rS8`#qR`f+DK}&0izc`jKQtAfR*Jj}% zH5O{A3BwqE_s;`mZ9N4eHtQR|z4gC=Uv^=!eub~eSolxp|C{=}`XKXv8y$vgxXMD- zCHWVdU3w%AR4Bm&;`J6E=-LNcCz+g)g7WZk6|a{hDovzEXS(N4?$ z-tM__(Vgr7E~PrRYoQX^^Z=UA^9y8*rp3!%!UY*Uj{p$$ek1xSJZ;@IqH8Hae~|>*UOG1h zB@>lLf4GUV?45AE>Ys>aAV4_KmR(T3cA>%cK!)H!^Y3X>#G| z;-TTAii;=OzG6vssVFY?feiO-BLH~FeG7?1~ zP#EQLja;7S%i*fUGbwc?;cwVQj^or@wPwmqMkWZfD%ZUMC9edj-0=&~_0fUkX#WMc zG?snSNk}~hpgv`wY*BV67L!ZdZa2GJh1*idvzu|`g<>y9i3j*t+TQ1}J3he--In~Y zHo2z*EXSOs3(H^3AnJh(B?=W*V31*MUFl$Dh2JTEa-xWwTWWLP{hM#SZU4?d)q2i1 zZX7SP;*Q&E&i;4r4X^C{{Ek}&F%W6sS#$G&y|=x!b+nymmP$_0m~8i`#kO(fU0amE z6wE-K|7A)7`~mizXoVamhhl7egbs75mr2bRpjciG$ZOhuEdfP{EujU3IV_lb=;U4e z$ed2o3v&9%-4kxEWCw6YyYT~hib8o&s^WSlc}8x=`yRC;32XDpjQ(P=7)&0&e|$Vw zzWj=)u@YTcimn*ZBZtemR{Q?rlixZ0_~Xw$-giaLs8sM%{`Bl0doDYBW$(hXN&Pul zf)Gq}*W}#X6%$;Oh#JM{+#=&OY+0n>GD!;SN~{w@8)$7RJ$`~xmm5`%E4+Y)7s4BGYjQpxt?g! zIXXxP&c~98N%v>04d>Dw?%=D&>BukSW^;?#Yhxd*Yy#hg`0ba}mzc{Sevf7C zzPObmVjd`wkO~H47M9IRt3{omt>&%buJbZB(qkMoW#)_NQyZiJ+2nJIJXfkR|m}YW>TP6h8C7tBihp*zB$X^k2WW zc5>@P)ts@&DzFlI$4wS>dm*~BJ+*EuYo)0j_1=^-krv8w!dc6v1Q@1mFqeM^j5|W# z8I!<$0|6AQ)fRB#;Kb}}UgmDSeDScAn7r?SQ|{?#fB*ib_LtUc8=#LzmxqxvIUr zbLP!w&Kwxd)Gil4OumwaTk}ozS$y2X!uLe+^@YGPS5M4)xvXT;z!;$Kceh`X7$pnB zp$JQao?6vJejEi34j|9=uxqPNqw6pWOyQ=AM(Pw%#Y8k&G*inAgv=r2Bg|I&yat<$ zJF}^9NwQ?5ZbTr>wcUiHrDokyG~v$GW+`j-&!=iPevI|Wc@APG6Z7>sC+niDnCN8` z`Vq;vqa{yLP&+0y(311v0**9alN}_f!Jbc=iAu>#o`gY_*ik=8M4jttod1UU6!whN z4ICRnjR*y3XgtF1>rfy9TT5n2O~}{XrVv|lgv=S^h9&fO4ajORY}YjGOkrz+5Gs+qK|%TjZp^_FKbd;ZIYCa z>CSkTgbEjnUgf76FyWKUphKNc1Tqj?7LEH)t53rHtc9#qD$fF8&TEnw#iYO^0}bBj z=>3qj@`guN$_Chyqm2XgT2w%Phh!P;4=hUYSU+vsH%9EMtfalqveAeB`DI%czt@V~ zU|Tm?DQgFs8jBJ8qtjO8_oI=YnX;@85ZYCr!&$Sew_Dah%Q|kwtvyILnbyx;V_D;t z^&T4$Y3l|S4=u~;TGj{I?R~Zx_U-dw%*P(96USWVJ_v|QD+W|=aoKV2HNtYiAi!3X zj5bT=Y2?H?U-39E%+~_9@LIije5uu1IsSANykyzM zY%1BwQf4pHF8$pMCE2~%T3t=ZZsY6od#`BBIGKVQ+yw*l?EGf6|F_F+1Zq2-6l`Rz z`A55Fyp~_XB$qz(8EQ5>%Xj{-^cet5p#j6XXKq7pBV=zPO9B@R&y@$CZp7CViB|=Q zpD&COjjR)X&VZ^~Bl84HMN&#gN$JxB#aO0&Nz0Q>WxtR~DpMnK2nS@ZWod#klX4&$ zWT)Ae(p{t+h9DImC(jb;7i4=$u47J;VR|frZ;O0`43N6ENPRn~kEBk}cW}tyjZqhw zcrMJnOx7+yg(Kq&N+7-#*8+cw3=gpBiuh(4*(10Iv{YF(`ZK266|a&6t?qk` zLP3;&9kLvZIL>1n+8j!#E&vna*L_tdFQO^9E-U*tPjf=fD+ zt^mr)rJ&U36xDMHz2;Js8%V(JPEZF#6&k48@&sVVcO$!k;^QP-!9|qdsS5G0zY1ge zV=C~I)_{O?lFCB?MUsl8$Wex*hJT zlfQWULl4~c{o1R3BC{~}+3CCEzR{_W8-%{0Q7+FM+1JU(jSbZ;jhD59W@2t>UyvC% zugu*2+RniU-7w8!;#H zUL`L?isMHvVmYhv0m3jiyAl+Ke;6*qy$pR)$RQW6WhHzO;?WZECluR42TeP-=f1tI z@p$~~6H9ab??27M6KC7agmdqkg?UsF?@*)2-Bk zHPcKjlzaPuHxAxNaELfW%yH2kKuig!3$1w9)(;QeOvW7!Db8}KOPryK9NwkRzuLV^ zb0g~X$V<*J zrcrAbQvF5x)w@(Hr``?N>25tLk8i*463aYt#}V_Cz0c9ju1Es{F*Mxae)A`U2I(S$!~rA#OohBdu{W?HP;EX=G?ij z&c5`}p`Y5>_xtlq_^2>#YZOZ?RIryH)Pxt6y*=c^Tn1y~%CT$FNIWxk*Vv0Cs@z@b zN+BcKECVT7Tf@;Kt!lXak9HAXX7pa35%eH5BH=^{K+3b|JnEfp!?N}5rDpi9`}~&M zAL0M=L%pwl?)KX~H~U7*xJ9?_)wJ7gzxYQbEd5TU-*REue@4}`?PdzR-}*TtuC9zY z4`ve&+S)ZNsn_32;X^ZVAQg=#TJcyczCWG*Mbm6)+Wtu7j%0GbgfE6VdoPVyOzQwcl?t0Z25J>@-GkU46_p=$lM*P~B71zV%6E zW&mfKM<@_iZF@fZ%A`W@4Iv1a`J!+}9vqd-sh{vfd$mRuw%N!ezXYt-DP_}NN=6aK zN#}=65}ir3r1A(;6y#}g7959V5lMJJ(?rW7BC6S2Po%S%YDU-CGm~;rri`bW9v>Oy zllWYyQ}oag9{(({6yc1$8Z`bbWA7wd{wn~daAa^IiLG8y_shqpK@XYi*~ct*oe} zgSWr+jyv9Z#dWW}?z-2$iaSXTsx!I$Ol_g?{TCUGqb6l|H8Nh&Z?;Xbn8=TioDMkt zRFEa##C70gQlX57O9DI=g>tBWpquMPEN_qnL zwv9^;=<3o-jRTh$_U=6qXL%(S@4~AqRMVuqXYtgaIl68`PWSe|mhjWbS8x*a4$MWv zNnP|>%%kn)v6Fh@zN~L=*e0@>=v5opgwRY;7u2X&!V)@R3bjKc9Wlsl()==|1I0qb za7thzzFwf zJ5c0lQ0TpkQWLR?!!6jps%41PVx4r@O*~mzm>BKPk;R-#o~Z*kIaZ^2t7HZ#ms+f3 zBb;qw)3Ks{Cgn%)KFvEy7knqcR4y-KWvdo2hdmM@{% zdYk3^p+-v~rr$`ZtFOia^&Wc2tGX0o=G-hSuTQIgVk}+4;yO#V-?_10WJJZkc5RZ8 z={HnUVqn$j)~z`^H2ha3rC3;lT6Zce$xC(sOQctUr{NGRuA8LO^*gxrgC#oe=mp30 ztPbuMmk3vjp;@lLcI1yI24BW!8JS03XGMXnNTmc>pg!3s$Ee5cXLD4Tw3`RpToRIX z$UO%XmV4!o2U#I5D6Ln$b-cBFbv^F{WxIOWjFFz5>?O%R(wy`}1$cR1Z3CK2I+06f z;*U{28b+-#ol_HS*i6RMJa){yW$$0Mteuy~oU)tVoy%u&nI$X9PvbgUwrE>m-0KNM zw$NU3Qf0>TCn~SLA?TEH335aT4^V^*hI5pjWZ76`%a&iP)tmKd{GMK^sQm0d9JwcN zQ$0zyv&o6;Gn4a^t;iKNxb_tw*Em5=I%wTyTXp6oZKc70LyAC$p3f0=V|8!h(EHN9 zX*Sc@ykAI@{_U1YsYxP6m3GJjqjy9L5*I_HBbAl_`U|*Dn16uB_5)D{6XT40L3?{v zlw2Y~O~czEn6`Rbwph$=y-Oa|<@(~@e6pb{4^Bfmisq}ItnxrOIBn}*d2W*!+4Ec9 zmMy+x1F1(Ud!*}AZt{*59KUp;XnD!`^@6*6&2i~x)CU?ntvyV$oFVq`TIM0BQ`(#+ zp&V$(pbMD(yD6&6TYv_%mRqDy05|-|)viIjCs)&Q^u;-Yw$*APd(KYMH{~cxcP0bF z45{|epTrx*4FjGa@p~L80Y=qE6en**rdUVa!N$f)%>RK6Rhzk;dmU~##K&XH-wro) zJT?p+xVD+H8E4xlmzr9`kt4EUG#x#ijM(>~ssV*g&vt73- zVGrQ)UKOwoCqMf`Z6+J~V$9cUV-Is5xu-jEWH??k7ZbYoWe_-<_D6%&EiZsI!gPce zj%NZWN^?z}hk8e2%fW;tAD3H9CtIDIJDK#l<8Er%>srfmB%5bRLMLOB33g{^dVRiSBZZ`s zj>>&_p;oXRs>E+ld*J!#hS+bql|^Bk8Ji8r-9}d%V}olh$ap z{qX(1rL__gUY`iVDYx&ry9`dV^*2C8zwuj9b;(~J9Av8XRyvhetA*Jb1{2`T-@NrE z0==|J-fVrfdfToYi?Mi{OhM_3*7?tp|MW@XD${s;As$XM2)z)&E$CoCYD~FUprbAc z=q3vpgUu1g$F@j=LGlSn2e1F6SEM*49(e?Cw`AB3)jgzDA)o`S7*%*f>ZS z0zS$3{7r?PQpewZ&(*V8)QzHxmt-eX%{mk&rkVv~PkId#v4kd_ooOC_`9#94Zk$t2 zIa<>aSe+1AxCVkSKRdRC-w_wR`k~aIj?Cp+*1AHYle zm$5Z4rF}%R=CR%Ol5=)DRd-Nb7Vl;#N&pl?CCgsqW-TxxzCcTyNLFIFG27q)gh5cz z9UuBEz;NMm_u+4cvO!c!5X@6Zi0rrs(OZT~kW`9#Fe&O7Iq2AxX5DADUEE2I2R;|sEnJdOMD~Xh!^|8lR@yYSF+O7_jNrCdK&$48ii!-^JJfcE z|ILspdgs!!eH1W2-bPoHjf5-?nAQs9UbTGLd8pg?I1IT_DkCInN+Ey0qW|)X|mp2@Rs~a!jGSXi$rzUEag{=b!HYB)Se-=`Xc_1`Ya#C)ToI0u>n*GBzxjBIWL1)EHEA_-qI6W#Rk zkIly@jN^)IwVQ@vRHBGgI(6pQu``yN!qjJ6D3HH(H#T^R>pC|E=0w{p1K~@on`=XB z%!;YZ1dUTWr%US%!`W$3~5!R3t?-0q8J3SioIq8tI->0WCc`{fI33YIhBseKC z*dbVsV6uYGGV-%|CxmFpe-vzI^!dceB{73XS-{uAe&pM*4U0xwv5+Og0O83-@VVKt zB`*pXu0QPchjzH@#pm+F`?9f(n1>LQd!*mDq{3bgfJ0!ai$4Q+F6jCS(Q>D9Q{@e-mJlgT+SnxiHSA5>Xc+w2n-RUC zZH7RZR1ZjInRiqSZy$(k5@<~PSL(yzLy?Umr-M+L{^U&zYQAP590J)8v4t4}F$Yb% z$-r_~;4kFiS-<-nLYy zRGBr5AYehsh@F^5SA&6`i=xcEt0<8K%IN88cBA5ooZbZWU~`%=Z1iK!ThAQ7|JTku z9#1@U`nsQPScwDs<7T>RTIESiZ9!zIZtd9NT`t>FT1eiXbD3f z*H!iu!7bTFNb|CeF@x9P{-Z<;q5 zoDw>4H12sDP38=%u?jp4S{!+;g-z0E^2$ymdOv|;h?UFRT^nkf9m$h^7E1&{o@zK! zqMFxp0WUuqwex|E=i^v@-i}x|rQB-OeH2hjQ_Tk6S!KD6M6~1Bttl;)@7h0Rn)z%K z1lzKyS5{k0L83?|lW$}8(i*L75HS%hh*F@d>(8_}tebT7S9cIrgK&_X41yU38QhTG zxE=FKoEs8VvDiB2L?+8jE;r?(?Gl~Z9gpQ|oSj*LbGCODuJ3WvDwF}ft?nRVdw(5I z=6zFh9?Rw8Ov?JfT-GD6z|VSKE=#3I&CB`+K<-RJmV0tJQwQ6+Im|pbVlRzTs}9z* zUG%rU)2!7RL|W@^HkL_fw;I&r(C`Gu7m)Ca_c9qM$#c!RMG&N1jOZ!qSH@o(q2fWJ z0od87)@y0btkjVnA@HP9g|Fh46QYb-GQyT)NMhB34|o4)<1B#@bbcuS6l_K zwCCO4hquu0{!Z92ha=gpPO*@L8`SW9+9{a4sGXts~ z2oOyS5&?seGl>@<5TXnjVdPO(i+Gz%bKOyhla|I7l8YVK;Y3(9&BZ0j^Cj99QV`YJ)z7=?&!aLOwbdK(~^!P#}1)Oe~F|T?QE%}X9=Bx zRZ*M}nhg$cR)5hn&|;HxnXF&Y)KoMXB+4Zb_!D(WBf9k;arYf}8Xk@8L_3w8!Xq8} z&UBPOV*?e`?R`_ZM5X9w2nJFvz>L1L-qLQeTIqDESS4{#&F&}_{w$}E8E_i$f`@)( zG#YJ?-Km*%2ikr#?-k;WDYxkcZmyPgqYUz?DhU?>+0Uvu zO=8!1uNZ4Y0}dQ*a^R08R^4VS<3|3?gY27b*zuNA%49o*_T1*^e#5i=U2v>txbOeZ z*mq%0r&WRbjpll2#D$9C+(T~b_H?j4PBG3fq=d_4k_ZQ!=SLtL3xi+;*cEVMc;~{A zQugr{m~28MHQa?r1ty{lX`^Xq8)F>~LI{VEHIxZr=2`Rt$rcgr24u)3G9V-_)^l|Z zmRpeV)9>|r;W2Th#pLYCP>s@AcyLUtMMg>)Z>b~D?O9xTj*Usm>Ttf}y*NXQ>$(JR z7Qo+fq5sa8R&)P2iJd8BwauhiZMR59%u}V-@+kKp42mRXDK@u@Ysq|Vk;l@&jv2av$wpBOupt0lB=F4Kv>U{fB z2N4K2T6(rx1UdEM`81rZqBt}ki{E4u&MnG)0$ zj0)YUjiZl|aB>-V$*^7mx^5y-r*vg1UPuyw!Kpx3xXIvUQk^L=QLj?x4==4qy|5Go zp3F!)RZKGo!>?J-mkJT1T^;Z6z3qBo(n}AkeX>BNCa;k~8)jN`*(~3Po@^EgsJ4n_ z+IM$aM6S5h49Da*a|IZ^U8Ja~#e-SNx=7+0hlCXnJHkvUJGm2-dHW4fqn~U_?M+jq zY8_;uU$n$+iKGfh5W<ibz}vr`tSS>yP*a}O#NwMGFV??br4zX2D;r9 z*bk38`1MYw^QHRJPuJD)hac{h?k)c64L5xI;MTWqxkY(f-&NyV-`L#bIOHXbonUO9 z;5$f#j4ZMF9=`1}W1nHr4#)hUYh$7dnL~1hCGIW+4|ug`_-dhz0;h~_OW;z#Q#yer zjh_78brBepD5ebRjL2Ryd=^rOzUKT21;=zcd?UXpYY znUVtWh$Uxfh=egdhuwt)ywtrbyPQq0udipjH?F5=XVcl_Z)GNLeS?$9m-87?5Yg!_ z$EBz?HJ77~PtmFf0=QA%iMrQP(86|(It7O)Hxqk@PKEK#Z!FSbiDgxseDo;nRNJ}k z@08lJhu(;iYCeW zzK5L;E10Z87>{Tv>ZF5nD@6lF-V&W+)Zzv)GS30n0$@l+3d1yP1KCh4)~-z;kda+} z#jz9z6&3>idmzMD#Ppf8g`FVTK&ukiVk!JXEm*_|<|V5n0S!S=EJ-$Ga5m-f|6}gW z!z8)NGv7L~XGY|n5s~{|nYC|Om04X~OE2nG-K|!)w$?5owUB5b)Dn`|1&BrL0&HX$ zKwR(Ou`$LNV|z)*fake?-m31bTp~}L zIC0MTw)cBKjzn1%Rwiz{S_a2Jj%f646i^ZucbcrL{w9zvDO87<$v(_?alc4%Qc{gu z_NIZD$H{(_poe4bCGi7Ir`AQ7uU_NE;anV-lN_aFu2y%f9Or)8v%G@Q8j2=^|)9 zVPfX1Vz#94C`vOLQeEPD*tOIF!`x#-6q*5Uc?M_nLNbxX$R#1nvTKGPg1JvXH$nO~87cTHy;30#wU$%%5`}_K zhhsVm2O>vFk%Y|dtLL*4Z9IkZ3tFM<1f!6TW$5|5s?kYC_5U6LZm6T$DQgM<2A z{H}AdPIf$|%o*@+qL{2?M7fN#Mt@1T2T>hS8UkN^Ix!p%4p*1C2Y0AY8u84NSG@XNBG^-oc~3f|3ZGk*sz`H zhZ!E^KU?a)rKQ{ZkN4lR^h&kw*!D5?arytx|2*P|IL1Cd$#;b%NibMjWc$2t>}T;> z!4VOJDA!hR*olnEVvY3YLgKQmnF}(56p$sGM2DSaV~s4OVLpk=tCu` zxVLi*=B6(rAZ6P}>FDeXk!eZGb4IiighSq7J>$k6K(xYe5=`1@^c@&O-R|Tdr+%L5 zv&Hn<+9PXc(7M6O0!pV&bR#P|xJcSq!w-TN$SbBUXxe9e9&7JSlyZKp3^cUqgCB^m zWlBkjloLFe4EA){-AAo`zd8qWC>wk`2ySLVSP3_)9wH?!LCLvCU--gbD*yh27FAXV zz@Z#?me4d&wqf*+>t@q2?b->~ok(0UItu718w9n#VPWS;Ef>9AOO_e~VlOv(*~L_@ zs+SA(blSG6N7GdjR4|EC6vFoF5H63tRZC`4dZJg@6*bK~)FK|amoN`Z@N{G73q8Bt z>?8QX54`8h=H?kSxBs4dFPVk)@z3wS|Ih#YnjJYmiUnjM^xY=Di8Juq+y_?(oOj%5 zY$g23zD#7O_XeTgwM9mg%(7xeAkxSJ6R$o14-9_pE6223pc5k-Nxm65Ex6xypEv=i z37JN`-9vNd?v9u$iKw!fGq--e)rxr_1oHXPBVN%@%ye&>*?!tD`RPio7?#2ePn+dJ zo>Xt`w7Obv@U$8zX+{+sS*2opvdmQZqdbj2+NW5?Gz{Gituu-HHJLX<3E* z+opopq@BLwXLfhuog48EhS^lWJ)&50-0?GE*_oosgGhqRd;2Z*+vs(^)NAAn zNK8n?Mq?{Tb8CoaH+n;E!f#Y2`+3jqo+@|F?2aYY4tA0+dsAgRksYsM^PexCxq6Sb ze%ULZSPqk^N)9&C<=!=`GaCnrL6WFYa!hIG)vLf8oB?n7v9T|WJ*{@J8z62+zvL^5 z_!iNNoi+Mx0U&4t8jQsJaxX`TSm9$GeJbml(uQr0SXmJNF}`K&rMwtdG=yNMCZgn@ z^@GR~q7|DflD#rIrN6*tB2$T3Lq4mI?ZzQd7tjb6rOIIBYm&2FtTfn10bLiaI_55( zYC`r9@XH0r_e>vn+vt~ILc|V0%h7o;C^&i%FFOr$=qRdyXKW!{K+7Ospue;zc*&h> zYvFfTSK%5KUF2PpOOlpWx{}uksvy90tmqs28jXnw%PCZ^xJ;s42)^lE7M)@tP+uk~6v})g5eG`n zB$9L{&2D9p;F1SL6Q>f2nX@hOu~7)xe9W0+RB)v=QY-U#fJBL)B#apUXsnoRWSk`P z2!39Q9+ECl=Y~j;^IGM!(IH5%SE}8C_Nf%(l)QmXLc${+J<g$6NeTZ$}2;#aeJ1uK={@*Pe;TV8w&o8&eyl zz`$~}jvSVINxJ(e9{4S759>5b*68Zkd3?LyMnVo*Ju>e{OGv!gq%(B^>PJ&pG=i$C z=o0-Ke|Cm*lRXn>DpnKnPi7nJpY0Z6ceGIC%fsb1WjmpohY;AAJ*`wXlcEaVs*jTfJ$u z5Yar)#)3G{q(!qUE%H4%hqMt%bXmSj{RP(hqVzWUjpCiM!ucJYgK-h^TX|V3>L-G$ehT0mrXIjZ&S$mUnM`5p05pu}N;qaR}+1t{D39-pKE zGgg89!Z3jLP1%=MvL41M*dpu*XzEEDgNiyANmuhsD`{qvpp6vuoV<)}y;TZbXhF5$ z#gyaX-$#H$`?zPaL>(IS`Hq}-4qHDC zq7@f06Dya+C}WmGlg|9ZKa#?)^G_X?C{CNan@Pn>M2!-9n#^TpF5wwyAJMPh{H!4B z40Vsr6mW2OhOAZ+7U&Y?jFxT}ZHKG70%8f3TBmxVaTn=27K%9^XlG0d$S3{RSsbk3 z2=3)H>h*I3LnvrgpOETny?%f)`6!?H%8jrhN*i_PKm%t{tPi!%0V zq3DWxA2TIY#G~j`QRq1lD^M01Epzj{R48i>SQp_{%M@<~I_&C>4lCK#xeO+|T75kF z`JEeXQ0Dflum8q3kcH^n_&7eJK7d~$fUjZfM-h8r6cJy^;gu#WUA?B*ZWp$Ho5y1L z)0f|~x$l8%p1fIopk3VllzgHN728)o^2q)7Z-4K#uRTxuz`%F%JfF$*{jqZhf3?sm z3Fo%_S09FwC$@b~9^W?cg@@!vJ#pb33Q{MwKmCO-OiY}N{_R}DlaZe$E3C)E(EhQN zFXAY|%(5(^%E&CGh?0$!f#dOaZn}vOcK(^!Fy&Y!?@+CJzEZL%B>n6c|1=nU=a~a5 zpW9vCIV3TYPOXoQw~OA)PR{Jk^-Eqx#4JwP?F=9Uh#YRA`^TCB`_5Z3*>ioO8f|oR|3SlA- z*NGM@*Ng6*Ti0#n&OlgLoep9jp-xpLGu|Kn0gY!0=wd*5u+Q$~nJ|%W z!SePpvJ%F|M!5jXR5F!{*^!F9Y1jkuAPq<;>@~QrY+yP#L!j#+Ob^-yP)Uu-A`na1 z5uFguoGAle+4x|2&fNKuaq&w=%i?S5fB)BC|Mh?U_3b~t`dwFD^{!ui*Hz)# z+$2nRR!UE5Qhq}G2M;w5HIgvbBYmBmRnlWWHBQwFYSBwNhDdzk9i~1GuOhok1oQzh zV&ulrE&1d^Yk9ohxV1-(#d1d6PFPth#3ORebuYc{x|hCS_W1S3XJ?Pkg)^Oo@4eT= z%PafXA)2&o_x4{(rw3V6xO3FZ|1rx+#i>mc(Tn9$Wi0DfiVaMuo3}20QGC$eZPE9L zsjw-{FuFSU?=Pr-g8!i$F~W?Q_%TJOc6TiKZjZ_<(Okn6ii~^Fy}Qe5Ev~oPO5OhU zw}0{NP)QlV)K+WX4L9sl*n2madi8Z|ST$&T8kK`iFG=3FFz14Du6(@x*f;)jL%s|Bv}f zdqUI7^-LxIPr2$`yFIu4PgJ+S6Z*`f@c2H5lA zHhj(4JMpksk>W3oLMqbF!Gn$Q42eww#|48%lB{8G++ND>Cwwg#y@uJ$=Zik4E%y$+ zacOC~RBXD2?bbAN^2>9?Nxp4r{_-H1I&iR~sV~-nx@(W0Ud~TEO3KxlOFQgbh~ij$ z-y8fGSP&ylS{co{RxuTnf-s(*s4P{}!#%lHEv)@QwwezUpd0-L^w9x{l9Cjv);vw}X(i*E=r>>!9k%?8yIEmP`;y$c~uxvW&Ju#z% zQ;Y%y0Jo_P!!*Vw9((%#WbgVV{7K}Z85nK&gV8&?Ny~;g4Cg#bB@S7I_(evz_^nT#^`CE_IE4B2Z^R>5u<8M6>e0s=!%yxC!)y5j!? zYIF7)?q4ah*laBawFv-S2G=p-GfsldYzRBlxF3-zVra9{Fbt_?ly4Eo+;R9V55g$k zET}!SW3{_-yc)O8GBRfm9BAM9_IKZQ_MLCL>#7$&c*XJ!YY%LnedwXH#Olml?RM+^ z?|A+T-ul=bx4&!lrI(+6Xz9k?S5kChr1OmW;1Vq-LX&&e$pi_AtlTt*J%$+X4AE;m z?5GbzoGMtOcvWzoqi;(+2Bc)K`~96xT;)D=x;Wpe=cvwzoJZC-BM-L+Q5Ed)&v50!&*VbdqpXF|EQ?G3-!hHGtg$(>76*Bj_Yty*uN ze&{o~^F|lJ}HxB z)aB=OI&fWOz20i2ar&V*6|8K3wo-4XR-+ceG#@|Jks4$bC)6eHj*$e5j z7rS#|vc^9C@sE$r``k(Tj_K)>Q&W*%dx87AEvz0F*m$_PRNm?l0c4FwxCz`;!yfrj z)H)yCRPN*Go?7;Zr|0|Q2UfD`&)j0xPj#Ae`EIXZT$aoAulYx1KX`iiO!;W@lDWo2 zav^bnz2`rb=j-a`Oe4(9RK4;t81(kS&Bqpgx>P#-;L=ocxiXnHgoau4)txmhV^PCa zUk0)HobiwzN0UvaUTz6p6@oGGae|}liLXtbkYv0x!1$HTrWkDu*=TPSzgwid33*@pZt-2&ai5R zKibdd+&6M41OtH+fLv$lgACzZX5#gB>Ua=sz1YzUcl5ZaH)@)`c1di{*6#g}`|93% zor&?@nb~JL`pjPRpY($m#f6GduIwqOgVoK=voqSIAWi;PwDnH+^kiPu@x_^p4etG{nRn~-d;l)du$R50B$H}&P9151EoE?L>d z#h=vUU#d=J?eg?=(A+(dn(NF>OrrxjYG!fq$NPHU|EjNSxZzMX`cSqWp0oGEus@1@ zMs7*mGvb}JN%3Qi%M0pn_vBrIq=H%+3WL~Ce8JLGlm#j6{MdC~j`3#tc(~xyMbTdC z=X5}-(4oXJ&^7iWi{_&zyrxW@hQ6>oD~yX00RjDmN{lXxJ0aR3p1V?4OzYe_lo%)X z#ACN4>|h4r*SH>S;MieWzWOH5yZQ<$PAhe0S1fkS@hi6G>!R~%mM`y95RIaH4(+u!U@PY@Q;Hur9PU;!_cf2yJ(J{Cq3ACC%qo^Hp9H`3V z;U^8NWyJyXH4`1%OM-IB~iD@@}gdm-*#Q@C5cbx>$cZKWTI2%{)fxa8R zf$Y;!o6_*ezwpfZSZ0On`CpCRvx|DNvSBM;j?yp40D#c}dSf`9{b%IHRXbWm+HxH0 z4W=^yqM&(?5^#FMq&GbG(R1g1(v>~pSf7wD46vfK-*R!38H4+7_q2)q{~_{+Jk#Ha zu|;f>fB$YjY5q&UxE9}CkqpunA5~Z z5lolzcc*F#wc0`!*IEJM#FAewc$swIOg1}H-LB)80v}#H?qd?Zt&ibzvcX&4iWlMW zh(|Eu6A;`Zu3K?PqaU_>i!2MlstG9pZW+uUBD$#LgCWNd1Q~f`LPE8n6%q#$gf>T# zfF)EWGEyLNmPw8ljSU};=xIL54e}_KnIr)*Dderua~>n2ff2ib!bd_Wy4Q5z4P)0y zVVor9O6!lz6fl}?czfd}weh6>NDLRYo=OB7^r=qT3KM!VmntN!cx?DB-KgS9#p@6f zK=?T@w)p7@`sc`f$E*R~kV&>+^2bAU_y#4ci^ z`H%EQzZnybKLH>D=?P4R8T?J86zE#nHSVWsht2u%z2O&4!V~u~@{5+oZe}L$ASLs7 zaexmRV6Sim2x>kGyn}ZkqSWvx=Sy>sXJ-r5WY)zBR%K$n zR1pP;+6b5P=cy-MbQ4=!9X1We6PIixZ@#4+VD9GdmL3?pG(uW{@v_9;*@-XLl!;ls z(x>DB@mDGD$VA(*7%ZSf*ca$;xW}xv?UOm#)(%{=|3wqc@#md=^urHb_WBdsvjzeBEpQ(kUi#u{gQVrW;FnK51iN!u`gnUFR>28JnBlxkHzq zU%qyKZ*TgmGB>K(!Z?ZVBAxa2;eGp0;NbzoLJe2Inwokz(8(PWd+1wHo~@1yxJf)b zQpIr`^Q}wm-I4Cu^XWG`s_b4?p5$$xP)>iPHD?l(k>DtX9@n+577+q@fjUQfl1Ry|>Not;>WNX5D z3n(YVZ@e6qqe}Ob1&!z2Mlw6A4ybmT#77yEPm?F{En?7ZvLx8Ohcd&v*s_Qdxt~(V zf^CGiNDPI=7<)qK0tvTD@nIaq;$~o>kg|w#j14RL<@@{%#X}^(Tz+lV1{=Pt3hN*A zoZGJ^1KTL2E1mWqLF1fCPn=y=OEU+?Gq?y?S%6An`fU@}pV%G6MU@-E!3zp0R%1`G zXV%_vcSMw3r@U$DgUiWOwyBKEHPyU5L;Ok$S`*oXlWaD}odOkfJ-8K!JL$EVTGDvQ zoRtj#>Bm}C@4jI$erPUHpYBnPI`qL#>E`0JNomc+?982@dzCS@Y-ouOIYt`t-^NsF zT-JxgEJiZgCMpt=iTJ!{Y_IH&6uV%HU3d-ht;hbc^B<>y-F^1|a z&-~BZy^*E%Q%}A1txvu6r#|uOSAXKwk9_pyFaPMv)!VG((T%h}?1aS%f#QTwE`^;z zkls9+w2q(Bw9_Y^IiPHCfLSSqouQxJIGV6eoF<|6f>HO&H2v16)D~^O`V-rKOye*A zXz#+YN$bSvoyImZ|Nhxd9p`MD>0r+tQ$U zTd5OoUK!rpX}7PKoXq$8x3xQ+EBt=npH!8Zndz7O$?WW(Jhisgnx3A~<;hcjGAl8Y zXWa`Q5Ayzq!|F=nBDaufJ7(;p!e~1_{GK>xfVgriAhh;_kYG?CTC*iN_t6fA_yq(d z-h+YU+aq=(BA;IBon)X-7)>tDLuxMMDj=8@KT>_IYqm&{n>2AE;{lw+fuJBI<0JF`YNn%cT#Y^PCec^Y!tpbm&FWqgCnLF*#Q&o0U_` zoR-|$Z?hMC5We#zvZn4M^6^?~V*VQUsV^B~;`^4JL0mu<;BXuLM4qzry97AEE#ald z6BhlE^5KyOmp@BP;TF4Mmn}e|O6VRm$M~~l%HATrb$t6QhZRXDK}8I9Zq+Ill;`6?<%NK?q^quzsF2zdbA6eq~9j>*g(NKluQb6g=xUq>Qm66rmd-ZB1w9Y`d~Tr(8*GeAzwiB zArK^)ptN$`M*JnsUTzW#DUVdPvk4F01C{26nnPc>-&`Q&*TqQxT(m_97B_3o{<5W;K6m-Tw+UoGI#&eq7ckvtl zh59{m!0$@wM4M%ZY^D^z3gHy)Tf!UT&kGTc1uR?|b)owan z&L;hMoLbO+ImFAYT7|8xeBE*C`K_%&P0%hgMXg{Y%JEED_iBZ}P6vitByByG(Zi!! zY=Uj4+n%lga`BtJUNasq_bjWpGBedET6SS&vK@;pT(`O4y7|Gvbi!+{&-O|QFAM@G~u_#flC!?frj#itT{4uYF(yFvC8V30b zGBCoT0G6D%$B?m>@s|Iz#mS=1GrH^(Tjb#L(gNloJB_?A4;UWkVge(F@hl3Lj=m-sC!8M9_oW@l zaN*mcyOW5P1T-#3@CI!`y#!{OXFyO$y{0v61zv-vMlS?UEhiBw8!#@UMe;Q|MEP_y zVC7P8lpF)VS|C`WG&8mmAaHS@_h*r!^|M*oAi0-&*^1ppuB6?9ZGns7Z^P?vDA0R6q_{=>II#|Sxk2}17# zzUVyT2MwLX$MFuLvU4~1N7jK(H5OWgW=%#b`jOF+u0xv3U&dCZP6A|obTc@Fdl!v1 zs0Z$*{9^E6<#0H%#P$M=0k}B$M~bdgtdRr(@*J(C1Kf~?Fvj@-IqfqBZU){}A=XR# zT}!teSnr@lo>fT<%mnEzRH&e@xJx`I--sFG-~_l}Jx#dLD9}mEBF#4eoF6|Q1I-n> zyOQM@1b|-j*N(l*T;2+B!crB(1J_au4!G_`JnS=@m}HuEWoKJv zXB>bVWxE6!hrKu2YvhsifWgw@C@LMbNUO5l@jLRKM4cFQB>;B{Xcmn2Px$REcLmM2 z^V@3oy7mCi*QhDBsnNzYx+H-D@-GlbzaRngev8Z4`EDC)ahdTe3l95h@}C#LW~n1U(u+#S4Ahxu~5lp*G9!=wjK6Wp|a|=M z!s9Kd$k7RSL!bcsUKoDi5f=eF>ZW!?auNR8!v*}O2&E-aeJS%E3?y9A2e4_k_|Mh(%vSm*&4T7>we!@T zMJlxxaTP4v13`Ss?Yj7TabAn0mpOZ3qR3zF_X2;o5^?$s#z$XU5K;fkZySj|FV4Vc z|Bgmn?t@(VcL`zONy5ve;t(iL)a&>uF@7UKCA){^6{bsdsgUGK{UF1UQbR};#0Db6 zO~EotYU@hK9>23Q;WdEmEL)pS#L;hYw@GqolA>9Z&dVgJA7tBj`J+vr3?kpl7Qj=x zCLjQdX|3XbiQ@W1vyf#MWlIr>DDuFKCGw@-ybGbO;l4Om1SyFYF1sRoS`sLx_zvkq zniP;2ztSH>6kZ;(s4}tNkva!{9S@>x>4aaXiI_tYNYm6`fQg5vNCnGD<&CrQJ!v^2 ze@AfhnQU3|w*2s%{c!}Fk`iCY7Z8@Dj8GmUW@Utuoqd(@!g5F$IB}3ECY!2Ys~}%& zv~1fo(wR&dR5o&k)EL4+RL=2$oFWb2GLXGprIJaPJZy)|CJ6ROToHjKpV0-``w_U& zOU-6?wMEurCRp8Q)8|?uPoH#_TrvJ|Tj?<+#56&nqAo-~6b_ftXY`9dw8ocA8O+hA zpOX8eku&4QC{Yg71TPZqPu_K7rjtzD2tc56h|>#0!}kz7_lpom4x(;QER>>YR0Tpf z(naC@1BV)S<0)!6SRlygn|%2baz^BTEL*Sl$cT*P@Tem+(gKEOFg&ADTxti98q2*H zeJ2uiq+2q1y_vmZzUnhuX&90Lu zl!ECv;c0E47GYXahed!#JyHa?Lqleim1X{BLoHS-h54#qccmLk35Tmf8xxDrhCw$W zr2x2}j5?57ZY3Qd!HRujFH?6(!OO>>5}A(gBOqPq)xWH4Kt3ZiZY9Z z`35|)=3v(HiRjImB}*gDoF%W9{X{0Lv?CAC`oaIp`=rlCpY9wqI+6uT7mO|iYT}7_ zqEU)N6)T;mn*vQFuqK)`x7~6mOqVBNQTT{0C+1Obj|pZ&m}kU|YR&YR_JwR77`5yk za`{XTDn-yuT#X*f6gm&?ziTJ#1TliKr$5hepTf5U4_s~#!r#Ik9c{{DJjkzz!qFzZ zBA-D>7}aj%t?1*?Az>hgpfoJ6u-)TDl{VPKk#QqyX(S+4HWhU0eDmfb*H6t%H22LJ zUbPaAckDrv%v0Y>5ls#AvQ#p;cG-tz%mcMQHNV)L)iT6lT3JYyvYFCCvyL_^%g9o7 zM@!c%vp8{l_v?r24g8^fY!*tNX4R{AabKB_eM%NG%C?@FZMGU7lNCS(WfX~HxXfKt zMv(FiNHoa%s%lO+-mDknuI0{74FKmFonp3#w$`3YB_}%b>$&{$?2&fGX^n5rEY_EA zTwty^!Uv09xZ{^^jZFzQJ3|URaTQz(5)K2aBfnNJdMRezkdJ@FKlGq?9WKr5yax~N zK4_Xe@J6XLdadgRcYpbg!$-~@dE)T$^5JFm1fR>B&pznFmlFJ3=j9IHapcI^aSmQS z3>W0s(|&x77w?2u=yhXn|8d{%IN^a23aJN>+ZHSmm?WHx zyu#@lay3Hhx$`%~19|c3#b+0sU*>bajiZc4x?03}$~i8a2VHfGVi}{BM}Fe>eD+Om z`s|z3>)(0B6$=lHzwfh0PCxc5@5sNreENS2QmMex!cfal6AW(>`RV^5w)50}D3$VE z1&g@%-A}*nb)SBn+IPh}pL+kqiEMg}_kUsQH$M7`McUkR-%RYWFq85VMu9E( zx1y77|0<_^(`P@^p8wqE=T2R}S~yvF>ZuzbjE?0CCWT30c1j_jJ?s5aeGqE+q<1Ql ziQxn?!~8FDw%2{SS?`}(`uyjTmxFxpTiojgHTbePQe?IO**kzdoh6i9+=T0@e#HhMM2#6V@I6 ztM1U|PgJx4{yOnV;>xURJrb3N#80ClBq1&oN^XgBb9BJSe?b(sM_dC}gyqYrdQszp z9^Rv#6-o}SVXw&jVC}N*MZ4o)Fcgxg0jr$+A>Ita=&8h4cAj#$&k>lFE|rdjcK~Uw zyQvz&s93jaS+fGCU#=8`a|i{eWVk^u%=9!Z%;sSk#MkDWG1v4L*qNDh#qb+VU$3NR zvi3P+%{W5=QJt+npDie@mq}GKfoD)=N-NJT3laD`Q!`3<{b@XgirWT1%;TZ>xdt zGQzSMR2BJ*dK#X@HeT|3Wc3flIF%>^2Ev@8ZUYNZ+@xYyt*J$y3Z{_*6)m6CL`d2f zsC5Ba^kS;67=C)BHV+7{Po41G>q;_5^wChoB)R{#w-EJ zesD|$jUa%W-Xrvt&JYlH3Qn<_O&unS|HYm91`JxU>)`tI2sW2`AgTv=U^DR`UBEHC zfIg@ds63TO#&TXPEF{y1rj_%e!+--Qv1+|BP20rB8k@5nn(_P;3i3ohr=0+<90c_s z+o{z;KMmpi^~qAkH75B?y}~yNRg!elNi$i7 zNAE2`OS*^`C4i*KE^PmOSPy*L#`9TAkmumV3Wa3q@QgC=X8pTQe^Y&&Im z+&K1*vG}KC0GC4oU&K6KCbreW?EyWkx)c{3lUueF&0M8O zDe9w;yII&ZS{m;W+L3OHXUo}uWt2=gAn53K`q$AO*#bnB#?cg6Dx#{PZy5zNanz+H zU?7S9#(~Y{WC7YlGGI#+OG`6J&rQs1weYE_Ml6>$w*SD-80Jh@CvBjyNdY`hNEfqK zdUZVnRh~?spH!w*Dm)5W<=zZzK)Ysobj!|xo#Tv@mLiM9N#%?bd7x!^4k4-rgo4Dv z!(<0!l8_#uI%=k03ny}(1}AFLc(<~16AYZf+WCAoO<^vm$k$qhTBcUbmhZh{5ra(3aDmR12hD>u!_D0SVKJmq zDPPso#iUf_%jUUB7zDcOX37{zw)h>xjOTl#XwsMTY~D2M)Y3L%$)F0nP$gi+7qu4s zT@m9!-Hzj;C92K+OJQO{StR<`D3)!a>+~WHBj4_6vemGs5dn~23U2WmO6B(pkN>&V zY_<+WF;DgA?)6e>eRrwUY?Vr_X6f%*t$od=@Xn}tdrqf~i zu5_5PJ;&YZ?3=IN`L5^B`X?KmjrQ>uo;dMSd<4Y@hq=HjK3kdJ*FJj39Y@t=-)^?I zztrC742~ba8*scfmO~HyRWL8Mk2Aubn@OXP_5pe+Z}xD zYo}j)&&j**UOzo`74)l(Qr?)F|{$>|!YE-imxib0!4F(NXH%`z}{^JoeZf zHyx5{XX>_>2G!wsYj2=#h3gFyrMf4dYoxQb>Sl|Fk0^VQ+W{q#VO)N+vD|E?6UB_u zzY$N&PowcehXY+%Hr`6u8^i>u7Wwqk|3D*efdgTb69l`J+!<0x051$+oR??xc;_vi ziT9R+2e)e)ydTRaiIM}%Kkv* zR28R<19|)V?f>y(N7#QmI)t40(II!fzq)pcR#NXxO;nTb=c^B;^7aR+RVR<&;*Fc0 z^SONQMbABeJ3jU_j56x8Tx)}j$^ki02gig3!^u^{T<*p7td|Sq zRkjvRxfEin?#GK1Z~SGUqAJB^xjdN4WTs$%kH^nZA;$VMKYn*SemCiUe-_Ic*PpF* zI=8otMpd0{wXR5KnlKi0bIpn7%1XA~=|pplI4}3|Rpd0D=4q78f&h!AluWBRTO8%g zsvwjQJc4Eu_K{J7Cshcd+r=YM`il@kNQkj<)h~A!OOXoHL7>q%eCS|MdFHDC3?QL)VH}b#6C(o@*B;7VTcZ(3{wOc7a~HGe{Q-6RX`x? zI>4t$&%z?GL^|8@NgE3enJrR#D8Om*=aLDD5!rE~PPTU5Xyo?!)D^Sz6s|Ke(md!3 zJP+0=b6>7uv@2FH8CaE{wp>t`;<&)&Ky?+|g+G6~lXa&odphQn6aO)_(nXwDV3UD_Hrv7+lt4x12VGe6ts5i`P`u{E_gwUVC^#dmb>c!?NF0jgo6Z1jE{vmnKTyza6EP%WgFCU zccl-VsfCl?QhyQme>X_paSKJUKF!}-KVXduH5c{ZAk{c2&+w|52zDY^WTTl75?b0x z6>Xn;a{r}!_sW(x`m_C?JE%g1@>Tmxb9|oibDGw{ea7U}^!snItnw_%!$MEn!Bix% z5tg_fMh!iWy&UX)lsr93!1gne&me@CY5^zJe#?Ae-RV30djv}hxA0pAxbNOtI|ruk zdycdHmDgJ_?G2Hv{uk}l@SUf?IkiSB`PmE>WN+C~8h$uLOh*KN+NoT*ocp&wmq*pv z*xZ1QZ{zdVZ*FX;*OhbIUyI(K%aymk_O;{3zxL4a;}7ZQ?gSiZUbL?hjP(HBmt`v}8D>U&DACb*dt4Or2+U#uQ^DfzZK7q9ViZk57CZ93FC6g*=Xv0~ z%qrfL3P6$AV+ZxgsQSoD7pI)?mLr~7xmJhQ+)6nWbVq&$-gs(|vue zJLx3!+Wj-r#G3x9Ab5zt(ruUkMj9}H zLH8vJal4B4h;K!>+7+p9%%rX&D3Oa05{lbP9AA->ipZY`5HX4gx#8qwjWX}-tINz?$&vse^j-RZmIfCO>r^o75hkGUi=73@Kn)a}TVgDllCKPv`7Qy)W3!iAWfZTYmz1FIi2TX*zD zplyS;4Fac)zzS_zB(qE;tPM>a44$;jZ?8*SDU8k(aweOCNX*)h>DlcC;XFyc_!Xz1 zR20gAC?LpWWz>5(lxdw?LNzPsg+N5H8)(pZ!dx42^e!UJolEH7N`j%woM}}MIa2vtZLru3MH96yJ8gr zz1=i2a80IS1oH?^NRArre>;rblXu9$AZEdeW)ln>*%FeDC<;rQRSPx}Ti3Qj^06nR z*sm;l)7btF%r}%^Bq`e_MoDOjm>y=MXHEw5rKG|ehLsE!$I(KVbVXniA|z6ngsK%M zp_PDikLv;5B=H_8M}`4Sfya8*pJ?z5>PO^kg2*R0E6svoIGu!Tf&c@-ojiRtYDCv? z8YL1gb~J>_6q{Sq>Sd(ETHm;q69=Lv{0RHEBV_!GGKK3&Cs|azn^K5g2(17ejrmlXD`ZOw1#KWwBI-lAT0L zgEuAcRd{hDo^XNKdTu=Jz@7x}kxf7q`c7iXgn=^+FYeQ4(kAUjbIL4dTmtgQ8;Pz; zoRZk2ULvduK$DUnf}*19**Yn?8t#^$kW5x9*l#j!3Nv>S$i!QxhixU88=uZP?e8(tX82kQj{DwD{? zfqmHl1WHZ;fbAp{y+-^Si6*pDp+rR!_-tfKmy?~DG~9266!y3>gOpK7s~N~ws69oT zm4K%Z9s+kDA}$xik7JiBL3(=Lq7z~SkO&EGOE3g1_evQjZCbazN@F2*nBk#IU=o0wh16Grqcg_zcjH8gWA=V_bt=;**fk7015nK3KI7+OIAzMAmLuD<$jZBs zmG_Q4iuT9G-&kzPHV6i4AgC&~HuhuGZ{!VVO3cO#oe}-#g2{qUi&@2aA@R{gB{Ha@spI^;w;y>Kr2@ATE)l?Kxvb zQj(B0+yxO&R&QYr=LEEmi`*NDDo0#3Jv0IaJ+h+^&v_g09CRRSf{v4W+9Em;5yU|g zS)(8fcZ+5tVY}p0FNTC*bYM9|TU^1lyn^&c5F@&QnsLjcn=O-pET~Afg1c(*#l<`~ zonP#2gd(1A$f-sK9X&%r5BP9Nx*!FVc)`0>1Tu336$O}R{NW{>L`wMTy#RJr`NXgLfd73ZMK!(Qgg({JV8P;5d_h@!jn zKrsp#=a3BWnno+qImQUqLm?5h0I;uE3@LYffJ)cmG=r`shb^z5sxh=Z%l@mcBWz-K z+^Olo#wwFYcfV-GZn>rI=w3oK8l;5J!R!c%3-3R0FG)E?86hVQIVB1No29vcE<<5j zY9^rpAUHv>D(zDflY#@&d+qeKA`*<}Ex+UHxYi{hb*jgPHhmL;4cUF;W%fr<&m59Y zP_}_`#JrCj0Y~;fiqg&6r3kEV*b^llnRxp}(XJ5qs!1Jc>&mV}rvqL=ERA zn!uZSK(9EVpft2Q2@|{8ZdHlfaSX>6=S?4 z$^qx7Tq;d<`O9{Qcvaa7&Y>jHzUUJkpjYRtI;If#u1`1<(%JvN{BYrfF)%>s=5MJp zw_k-Q2c_idu67sI904B#ClJc?n1^Cy=vU%iV#$A9(0ot6j6r(EE0L0G>nhQ1RKzR( zS7qW|_v`u9AwVG0{Lbo-Q(VUIP^XWS7*!?=!>BV?w8VY_EQG)9GVgOsi_8-#EXKW4 z>fj+pbN|M7%(mR>UhVXIl)m?nWgXpjlp4H@Xr%Tk^-`Vz93mKoOv-cP4lifm4RljwLD=}P2?4dtN+^wEa z?HS{8e+iX!@k$9JK4)SIOIEb>T3}x2xX}y1n3M8ko^YTxLEG}Z9&^n&5FLPS7tMX# zVjP7iWcJb{nZo?#I}#&fUiDwddX;DyUPVey%NgWjbVJLjTgiK+Wg_*g8`h#lEAW)@ z-WtuAX-p02mwaLSDf14@21lS{tUs-;X?1c3;$4jxI@e63(mnR zTTfAc_;!}C&CR4C(0*~e_+w+&!b{M_N7e(UbAIfVOYXDT3u;}2)c`x$4#?se1Y&&JfK7-T^=(LvF)nR>`2vw1f+;IKWXsAj&M53l z(2t5?LNQE$_G`wj*mU;*?KObd7Zwdtl(CC)E zMvXoEIlSO7SU;h8;6S0npvIuM+{9%o{U3B&Rsac3^tp{oqECkzLkjn3kUv=dkPDke z^y9Z!4*dn#6E#|GA?Nxen4>`Ke3wgJ0SF%X;s!k=ZFFj%i|fk;0-%wG)f(mz_+{q4 zY=BHwuz@g#U_8L-(&0Vq2#jBXqml9`n}eY)^z$fip$IL=tf5$p~r4h|>{R9i=q%j3z%qL4ulMVY6FMj05Wr(rFoFwiO;YUcM7uxm+I0 zT?QwK>kb|%W5*po<*&P0-_N>!wd$X!@Dl?yo!e)3yY`i2Q^8g$vj*c6 z1CFouOrwRBK{gX_UlzO4oq zXwXjO<0ZUwdfe)kVtUulJGDz+PJ1**dm-&X*}T&p?luYmjmOFZAXVyB(wrKjy=V-^ zV%lrq?=^_zEP^JzUZP$&4cW%UuV~plazJ3RM~UZETVfAl)`=gHkzwZ?;*ewulp;C; z9N-(Fph$;3yElv;RQ(=rqGZB0gi@XU^1S zsoLdMXRXK5`5EJt)=aGjOeQIDT&f_A>DsH+D~S12;Q70nZ2squJvR2sV}HgKwRW|3y>_ei673P~E!w-mA0CfmswfM*}-XJ98w)7>a8QA^;6P@<~0>Y0{=QbkG$hd7GvLzuH!Oj7A z-2s&iSqvy6gtC|s;)oxF1R`h*Lm3hS&dO6lDy#`k3iH_tD}rDZivu%GtVs;BwjIi# z5F8LM47M?-!IduK5DclWXUUoy;@6G>6kI@b83;0%TR2(_K=E7yM;t5?_pQQNB4nJ4 zEAll&JMbU^wLNsD0B?gGghLE`qUK%1NJ=5vhZu*fW2QG~JIv1-XW-(&hHz+4^punq z`PhRk;E&)Z#o)Jq*Y$w4MWlr*xFB!<4Ev}fU3MGz+g19NBf?_!1 zwF~$%8cr^YZAEc4@fYiqHA}eIIu@+|NclOMLZ2t#8JPiMVTcWa-(GY%jsy72#zGz{ z28KhqWJx4J@J1#!z2ZZ8f$2=r2Ets@KF~2ty~@ylwGf?z=FzRNNeqA~xbC_tb@`N(47Slg&=Wt8~n%n%>f= zTyE-FpTG&!3fe{@EQ_WS)W(hCbyx1+H+$)HxP7-&9euMK=oz=X_k~CLzz%1Q-?wjl zNjb@(N`a)5TM@V7d$@Jjga(BoxjkoN>685+z#9#B0{J*H4T8GuH!f7ZZY0+7eotY z2qW_llq3ovS`u0pmm|uID7n$Oz)+&>$;9CnLiD7J*+{RG{BX)ZLEcRX6xhM21VJoI z^wJCkQz^a5P92jw37ZpPhm%Slk~hZ*QdLl!a(|)BcnK`St_GPox$sInD`NEWNN3RX zBYpHtYMl8ZZX3g^*@RngpaY(dtLt$eqZP_BVv=w?%ApKFTC_=GT3jT^4@a9~46qFd zwh?v1y^g`dprnwD%pyz;dwyS8jc@GrnWxna6n560H_aSQCpxhyv&uCW67~3QFIy%h z+|CskU>0MoS#)lkPLSGgiMd-Qsz6FCV@Ng4Y0D^6Qv75ro%3Tos)NqAZ>0wl-3)2! zFRw3c>@HJ0ZQ|sf3DPiC^23BCQt^Ufx#Pgs5{UwV7`iWheDF2eBs!NZ`7GnE>XqTY zH7Q!fRQltue5vu>uM8X82Y>pz%`ZOCQ@3nCq11b}KXB7sO51*cy5Wxy#mHmr>Cb3; z)fb}5WlLix#%?G7={4lP{LI)V$hr8VvA-Pq?_)pY{(9OSHe31V;E1(n}PQ|50O9g2|BBdl3>&XnsttJ~LI}`D1F_YLJ*k!$#c_rT_jtVZ@{yxbv z(Z3whDt#29_*BaE{W&%dWC}h$WKSxM5WkuC$!JsYdJ8 zrP+z3OGGj(PKEFf16A~6g+wY@S*-6J77FP`>z4lX6wXCLjKxV3ohFX--DGzAWAqR^ zP}8QS!!p#V`Etq6&s|e3sIDK3FN76RqH^U@K0kX6i4|7_?73d2mZ9DPu3|WA8xvW` z&bV+&*A(iFYzEJznaWNyWH%=t)?8jQcCFzUW3OWK>~u0|DMFLU7YmJgmZV2rPh~nC zE5^ob+joNq7v@JTuX%ErY(lnHx%iCxz=#p8#akT(Ytw|%b`JZlO)*Rv+MT}xgBtG> z$s~CuRtJe7hH_TK!MeD`b*X%u&lM<$jLo&11Tg%c#Kv}GFF~lkTc4^f>H0uKzhB`}QMr>;jGDF46aMfl@N&Fbe6Pvmlbn>;O6o(u-WW+WBF6xdP(W_N1-)%gMEu70p z-AmVKQQr~*cD1=@d(gWgZa(w+1BISpaleRj=ZFo%K^LGmRPo@racbx3rMg5bD`g|* zGm0jqaHnTy)A>A@f8Q}mRb*wY%wbh-QMJfXK3l1ky-6)6lgs2KyY7;@a_5Su_8g72 zve@nU*^&nlds_Lnog0C5tv&rsl(-LJaVI3AIBbT^R&QJ|hwK&sgJW_UP2% z{-O0F$QC8?DZ+n(1|3fVre$Nq2Z;GaN${aWnWQug`;aiP1_aFBoV6?=+sqv|n?{1- z3|jKuJK}7HVDAj`21s1?<0OkW)`1;3uVDdtCl3R~2_K3htT)TVm=f!D!nCD0kHl_A z{urqbnu=3GTF@3jvP(TjDnnwS0929}I8jze(C86Z4{2Am>c<`cJ3U;Tr7ouX z@apQr*B)!^TYWele|Y=1Pd2V2f>vo?|z54-NeQ;o|wwdfSu(?5Lr_lcSR?pPbVJvKWzQX+1o zaIlZ1i{zvFm~Fvmi++`a$xq&5y5j?hq$YIsLm>JAYEv>Z(OKWRdSTdSnJodINQ8tz zbIoKSLpt1DNj4!fk&TX7T-=3b*Oy}o{mC`IUz9UL80%!h>%Eu80UaBAeUMy6g>iP&Cv^hC!Rd#CpB*x#`V?VUQW z)8rK_lj$M+(}%_91y`0mE>845i%6oFM5l$Dh8%Tp-#I$SmZ%wi=bYk zzw%wXk5YvqG5ot=cd-4ZR~e`N<0V1+w#hyzT4ePd+??3lK5kt173#kGFZR=Ra+WkF z!}#(E^M`!lXU%Jm9625{PW^DL_l}9RptSnB;KoeCepjuQwX(ILsYqj8SqI*1m5X?W zutSHIRjct|7?4h^tki0?q%HSSjTOkp`)l?a>hgjm#7RJS0bd2Vai}eeRK$aMhd4o> zD9B=sigq?gf(6oEy8lWj=Blgr9@11pk*A`mJCKV?9XO!sZ&9bOQfF>>a9zC;)kJ{- zA=UV&sLy+%5UR5aMAx=nF{+0p@t#IB!dv(hPmv2aHV$JggV~N0t#%$qCl~>|Xi^?R z(x&^q)UU=FvlNofA#bp1Oj0-lLKwJx!X3Y;ByTg|Lkde!+qyUMlG=Uk=wMG6d>tC% zLQA`eynsP?*lC1C4sUUz@44 z>c2QKw`%w(S+mXqnccsdsc^PS=TV&S~1RwWtsE z)zq}EcJDE)!`i=ruuip{>5wAyE*u~ow=;oZEPv}bnTT$;!qgnODBftIHM(~mAORl?0jnAfG4Q5|2%o^xJ zW!PcRMmwOl4Vo~h>(Ys85KO>_XgN5HK@qJI>}kyA4Do6+SV%<+pn5N8%A!^ywJX5u6W5Q2h_!0OZ=?bSRUE? z0&K(oS=*U_IdYbFUf(CFs&wB{OD(C@Evb*`QD4)CJ!6lru^As@j}MHEA-0a{ZcVEt zSw|nX0fUVVP9R_)1Okb}l>_HaxDv8X3<(6BW!XR+5)zV-C7bM%gk&Lidw*X^Js!vA z+2`4P(uY)4D%J7T`@Q%3e@ARNrg5HVfvV~{cK$^@Ft!bg@f4Yn;sTV93DY5LnED# z&lmFGS^4_1o+VFpB{>;J!o@+WEcsqT|v7HH$| zppB4JvB8Q3op(dU5tp}Od*}N zdy?s~pgX*>lAMWV0{(ae@lTf1dXiS>1Zgp5RU}I#4^O# z6_^$|QHq4Zv3VL>pK#ibmQ-58(n9HWksM3Hr9J)?*=%{D8<25yA`vc^p1xPP)18|1(T8ofkLkBh$p~u9+Nub4PPE6G}N%UZPk)!3OmqtY8 z3&7jysE#qsZ+wKgR!n$j=Z_b)%v?cB+c7MHGnbx9*+X%p2?jSdN|f(M9WJ2HXiUp2 zre+-~mU=(~&{ii8jck9gwA>CNkCGhr0{!JiMlz!C7AL@%nkSLACr@2E6R-zx@q@;O z|KEXC4eubUm;SpUisQ-N$M=tCgt~8H%^uvexFq=gT7FTAx!E?pW6fd2{O%3I!0HTm)Rtx{FIOBb_PO zV=jW;F?%7CHeyRf`VQnmE^s=%ZkNjOA=Qo)dJXU~JT&-R0jC-pqXfb7*TOiQ1h)+k z-btb53^eB9t7LG=!~`*c;?(yg=4X8)^GC#(JDJtTqj{Q5V(6g-@Tc6isJ_TtTpG%Y zK$e0aL0!3(RsI1BI>`qlA#fIjmD&&qwsL7)Vb<$MtNI1iF93Lo&1?3gHd*jb7eD5R7IS{#nJF}kBf(HWcTPnT zzVA=?X6HtHvwuau1AMc77w+NLiuhQL{)S_@SfpeGj|Ata1PI>gF3fnPZ)_@R@!^yRY*Rj3f~=%kD>rH!l@%T}NPAK|JCUDrCIh+S2lb z_+A^To!4N2GiA4&Cf+N8ZTy=A<;$(PrHRe7t=?X+f z+*BQ7_Yvy=9mWWxMBG=1#)F!cD#VYCdO?gxT~|1D>{#fsYcH8Agp(o=pCpl#_AJT+ zssrdyH}P%kzVZw&Ah9tC8G0yIYuDLH^x99AtK zqYNVH*Aw6Mhv8yGTmwbl?8wyA$gD5;dF+B@LiZJmjycCIvx)g78A%y)j$*WEUz$(M z9=1-nES^$F@jVmq(TCT1u`gw&N55}$I0nl z{E3;^g0f>B%%=y$2bf7y*lpKfvu$BbW1LcF2LS&ul*(0vGkP+*;GD5CzCxWKgijIR zNv9PbP^snkh7>Z8%9qo0RDnbcA_P80`BYXo0NXdljch(S?)Tq)-IwpujHquMK%^90 zAuxj+WI=|s$z2emy2DFzB6 z7zw@o{-BK|=J`9reUekg}m?HAi4}{B^16G@wC&NHU(8 zcs<2NQxnJX#?^PDO1efO;RHcd;m<@v8LD_G>>3G;MMGIXfMpbCDc#f#FU-lJxX0p& zr{Mq^*)bvc{^TIBp*=Fx`|6L1M?$r1+xpGQ;(G z+BZs{n-cgS{t>@Cr35zD(q3@VjE<)uFt~lf`T0`oO_cKPqX019&O5 zDDgCiECc&uK=(J>?!;opCyEzL{o+hf62B3SLRJKzt10kPEA0XaR&a4s(@Om5xYIGMSNp?5OHFfTY~f`IMngpq=Y3 z$A%*m#oI-onL;M=_pF$|*G>5$N!7X@OnX+wrE3I`AgTdeBB9Eo0LQjFQ&XO(hZ~Oi zy`w?2kx=y4EjXKlPg7M1Olvh{1AP*tE4pg$TZ6!ttz$?HBGp|^x8aq@z1B>rHec!E;& zi;m8m2u{phRlN4cA`!WC_T`RZt^rCY%b(-QaM|wWy;NfNrM<6&hd1C1(^?NQkiHmFGc!~^w_~=PGh~;#D zVKH>X>pLgGdd_5K>nQ?%;i&h6A{dTD!p5g_D>GA5VITz@o@gLJ@hVNHMv2kgbhp&5 zyD2j!{W)ml`0?5B)ETT$HbAbqs>L^xL`W+y2xB&)JqzTW93bO zh$e1!1>L7kd-3rFbjQQb?|<~~FQ&G2n(AU-z(CJL@DQC)J?XyzzT6XdK4w)9#v*Pf z0uc(sh=_xQYQ*~#KKd7JPZSS#Qy)%=CqGN((`R*kp0M4cEI!Knyw1-{Y(IGS`OWIn ztIATAY1J;oRZ?CB+?V5x4tqt)id`iUvw_Wb+3j};F?c1T6pw@WYw@7v1y;VcLob^e za&k9GVFPdh?UL$CUPy3E@V~-C5Ko1Z$?&`0b@1S9GCVt4y!_-HvzHxxs(rTnn0PQ5 zKKN=lIV+A_et9@~@Kka1U9UKK^s=q9?OE~W@=#{|iFiGDd@0)=c_CCL=8tHoEkr3| z^imUPXN1YG1hVDyMPpl3(Se0IZHg&6sWC;>L|9l_zI~AZtdPoOr3VWtRmqNUnzqcoNy zr_G)41757k0sz6$ld+uh3K7r&n*(vhO=g_*_{ld2ctFmbK5cinC`OU?X+asM5G_Ou zx#P4y@J0`wPA^gzM3Rx=^^Hah;@SvAlCu1|H%U;}9*G8K=Yl>G$`O`Ai%cg-Rl=4} zA%>^|@&w$gyH`ZA@sL8!j{F(267dvt@*H(!$v;DXGw|Ad+oOyq!h&HS=R(Pd6(z`5 z7+A~T8?3191GhU>exz%tvK9VR4sp&>6i@=0i4Q4quFfKr%viqOVR9DH0HkOH5q<_K}Y0ecb)P0{r>ycvyMP0 zlQbg1iSUdOjDylAL^0{}B}x6F&cPS<8Z%*3{42|nVU3uz&l%cZID&8TWw7NvLsH$^i=&?f~Xa2AO zwK<8XI!VOKa?%mr$Vw+AD=Vw2%$3?3h53(lh@VrH0Zr1$6C|T05>RP!vq*03f-)MJ zq?5{(g4Q&5GhRzE0s*nIIb!9=-BykpXI?}5W#}ZS--_!}Q zEzh5Fd2u2JZW2{Wvx6q1l*}r9MHRB@oIpv_3C^%U%DpQ2=9gn9tdkCtf+p!ydj5L2 zK14euykrz7=9#b*qS9J}01@uMJO@@awzOjyUN%rCYW2d)rmY}d!V>v^PKlAn6cz=p zwQp+ydbx=2n3uaJSI6A>nbP!xkv~4>N+TMx7foDRoR~L)eiBRFE=T_Aizfd4pF)6E z=qiZl%7qpDI3P{F`ro{ug56`Wq09Yu07wH~9_o@edXr`n^28+z`2^ujP zs{NGOgf}eYccVYDd{&T;sPafez)ib|ha2dXf3MSapVD4w)TXfga)t3L_%*I|_6VNFFy?`}PoeHsRaU zmACoHGzlce{UQh?OLFnzce2=+}tCA$Kh8Yl* z31gj>!Nf!7XI>JAz}B;2>*bUrUW3amTgIK`@KF|A%w-n)Iw)v37tY2Y*P7>cub0$^RZ6&nTWMAxD@EjN*r^Zt#~&$#7QU22hVvl z{+rS#S_H%i@~DNXU?uiND-1_CnO$_)$xowIfjb!H zQM$t+FO_B>M|gs+ph$$L#zP535x{Y{krI^21~a57>#FAm$Pz;=H;CWx0o?(NdoY?| zZg`<>-;pGzq)7lVN4iYl?ehky_@;<8H4;w~|0ZMH6LO3%E-$0ilBtIq2}vucb6J}z zs5EU%N538>Z5He}wHmXy&;e9ZMA)$jIG>arQO^QtL5dr6XzS z*rCe*;3gEVfPS+$16%ToW^i&!0Bk})Qzs+RL#S+Ab6#tC!#&@iWfkS#p3|ChoYG>A zx<*y|&s+EhV1fbvGhYbcG`Ao8?U6}^MdlNuIS{#@LswV153`CMEQnI36;(b7CK+BY z9=CFGtgx!))|C2J32fpMhVis3;rfhWJi6or1o6G3~!InP*J;IFJSw-imvfrX zG~~f80bQn0U1M3FE1Db=6JR3wUYkxWk4FH#jV+EXylHG9`)usUFCAPio_fyaVfHET z8GksGjNoxnp)EgghlDG1Dw=$3-V?p?F@99M-b>Ge{|!%DB~p7MG*q@VZM%#u88pl^ zi$Ij0n-#baCOJWdLEJ$(F3@h&%|K%ch7U#F}cchOZfg;)FID z8Xr0JD#vJ%xL0%}6L@Rd$mfkT$$EuRGQL>^x(4sGc0uZ!Vd zI$p~nv7AfD%sKDPW;_&GD4mZ*l|y4M>Qg*-a--Lv0Z70yl^OLZeTsy!SyJK9^Hm&y z9GCFt&%g3xw>@)o{Og+E_{_xdb0i^{38@~}w7DpEuRzM8~}TT!TR zP>lkym&zX?txn<=!ueF}7>G41P?x?MSMe)79}CSNnJM|^9H~;;c~s;bzFaaYBI&f- zy)ZB7Qs*A=c>e~}Y^#y@+_Kce;E0P$R8vLJ&Sf|bP?^Z>>^ybm%-OR~Nl$nxH9C!W zd+Hs;N@KL5l9Ij!naNSF_7uIJFad*MRoUTmY-7@ZsU*UxZu3yqyRok0wt~uaL-|nd z3vTJKV+VO-)Bz~_l}Vx0HztG?pP&#xOwG*dq5R1FJ(lGDi7XLb+7Y65c;2~qX?(eG zvv3?8_l%^1@BL-VG5YM6zVt12F}&8xw@w~O&E>wtc%u^ydEO1VsGMxWkUfV`-{dnyg4#ui54EsH#OoxW z?cyoS$5CH4plhEar#9;w^#hKkEIva8sN)_WGcNe#8vNTyOltp$<0}U*~w)m z+9D{4^X7)v6u^CJX0Q+N+nOH39voQHl@J-Bu93;WB!JXbzX1wn_1|;j(5+$+h9K+jdkwIb8PG z5_Z>cIcSU7&kUDCHr?JGE{AOy`^SgNF&o`Dhs$xB?wG>kMok%)y3GGzS%Bhv^Ke(;JzRF!j*F$?veR}0c;$odYPMxS%m&MD+a2@;n*t6J^-PJLsumz%E6gKjv-CnNU zYAd?P)vK*$u50#kP)n}YYBjd%J@!_l+~ZVTrrkWh>(*&{P}+s0JZGIAk+a$BwY$gX z=hwNj@_?4-sx3Y^9G@Jj?}gud@#B7J`u)$K+m}Am^E2f?@0#Ie%74MnbAO0W@g;u5 z7uiU384XqCKVgaE0KrFz$H+r9r4Rcp01#S;YFLCBIz$`{qY>PeDSGIp@dvB!>^U(m zCPW?(uOihFK%2wWDsBUL;dXKs?;s`QmEtb(D)DOZ zed2D=7|NnTCS#2({dKV+Hu067BeS@HU%rXcye;mf&qtSLl6|owcEuj<`}^pY{(yLm zcrEp!4~o}|H;9MC!{UwN5%DO>LM67L4L z={=x7{D^p;c)$2j@nhl%@#EqH;)CKt;=|%2;wQvUik}ic4Yt#h;%DgV@pJTK{{``j z;+Kf&{0iMEKQ2BYJ}EvWepUP$5!+u^Xp2~ozbT#;pAnx0QR277=fvm5?}#smFN$Zx z?~4B_z9jye__Fx#;`hW?#8=71c~<;^_?q}b@kiq8;*Z6jh;N8LrRMd|#W%%Yi2otJ zMJ>et1X=p8#s30b`ftSFl1KY(@%Q2%u&cf!zAOF_pV2>ye-ZyG{!RS5H~@cI5r7J- zDLgG=5|k0+ouk5?BrvHE@`5rX!!kmFUQEWR#v74IYQ9EgT4t!s9+NpaE+=GO7GzOQ z$|*T5XFzJ21;eL=H+o(!$VJetkI7}ZB3I>_yhvV5ugMeg5_u^AOqa>aL?R(YFzIVjn$kax&C~{BPHusxy)B!vCEM~|*^yn@lYO}(cjX><9rwxm-ht?~!u+vMBj1rkiRH@ zN&d3@75Opwarp`PN%<*22!Bm}TK>BHFY+n*8}c{h)ABR&v+}p(Z_CdG*6ST}y|q`W zbXvPzv*WDS%yPrEU9Wapl}2kL)UKPgQoG(ZJEiWu{c^{2_M7$IzNc2MH}_a(B~RZM6EebvU`HZ}jVpnptyf)^|*!-fXtIt@R!YoU+lX`CHW< zJilA2ne9evU*|e2`#sauZ&o+Uot{~X?3R1g&FyltwB6#uTb+7y!?D|{_5Howdarl> zwgT(rs#$5Zwubj$H0sSQvsQ2VHtN02er32>AAZX?++7=d>}uDW9L((Yg6EfpUkM-H zY=g@jjG^zsO&gxWQDc2& zJnH4}%4(ffyVBb8GceVyQVXfR-e~Q*&OaP&y-}}jb?oI@(^aYWD*ft~$;kJ&D~*nC z@OF5p-FmYIIp|2wPODyXa)JFlqt>ZcDwT%m>~8J1P4{}M-x=JF*6Wy!M$3Q%dUc+u z+}U#On)OOc>zGacTi5tJQnH!Q1eQ;jVS{X20EPma6qmwPAWL*yO5l?rOc&?>cJrjSb%g z6y0w7FIZD!UhDMR<%V{y)!J^9^@_=5R!#r#{rrXY%<{Ikt6mRBtlMTPtna&P=1#qg zw$SOhyRCk+W)ZSuhkMtnEojti8t1y}^;(T#?3fj^p_$ulrl5N6!(-W5^lUN|&}P%z z?fQBq*U;>htRa>6-m9^|gLiiuOx7-BZfc4utDBB}v(eUg0NlbMiS3pf4YQ|LtEHWK zx9sD6yUdk$s^w12!&Wn3KKrZQtPS@RsYXy-jp3 zmwJ$mM!nl}SNi*17R$A+AN{LoR(lMG*=V(m8k4#T)f(%q4g_bKdc!O?+x?2BzR=zG zb~o#tUbo(?^c!2AZhgDm*sn10dj_;t?r~zz^V6zr>~5BO-EzCFGuYKuy{T<8Q~TTA z{SxX~rQR$v&wZ_SuWrqHb-RWlChocCHTT-=3}@(e8ydHGu3GW)#!N>IE>#=-O0e27 zA>mAOLa-(iG9g6)L&|uw!Cm?n7Bo~TDQu?uW^RHi7MUO^qgNRRTTSclq>GtcE#L)J3~mj zZH~L$)y(Ejy;F8>C@R&h*V2Z@1FM-W-{5UHL`Jt+Zo?3I{=nPVZkzQkbN>S7$}KW+hPSA}f|!HOd;6_U*}vW~)dQ~aQr>PG zJrmJ{2s0`$J+;Nb+K$8Qb@v_h?OH`=&1`h`4Mnh3PUz|Od06e%E@Z>)pMO-_rrGPa zgBPB-1ZN49t5uj<9sXHTPsd=rZ;3K!i9?hd{_^^Iy-_dsOzT$ka$}>#Dvw)j^)byl z`-hb2g7}%7(1!2)QmNkRI$1M2?s9j3d)tIixAbzqrp~FC6<;#VvyQ$YojCiRAn^qFM*4ohFYFm(^4|ZKg z%9mPIn1ya}st)@pj)mwkwOXr+WL9tRN?)y0UhgdpzY{nVRzn)oYWt`Q8*a1QfwR;* zHR!X`U`*YIg1odIKEJrllQLmz9k)ei){!kzvgTE3z0Tu(e(I9nvUQxpM)*miLjN^|s;$&W#R}(1Dwy9lk&q3~$E= zyEIGX(k2Wa_ORLNohx^A21Cgqt={V+YdwRvQnS@F^>b!(3r)azt_44m=en+Qhq{Qi zW$vS9c(zauP#t)*9p44Zr7aybOwqnWNpMGFf4!$~BhQ*Y87R)L^7$r=>I16+hP1Oe~%2+MDfdd$W6yr`d;Gl{Q)5b1HRV89CNi zH*0#kjCRpNhcG+p!M9CMd$U~W)T@fghuWJhl!U#~I#bs~b=dNtK<;xN>QEYr;ig&B z+WWmtjsQC>sqt1UN+}o}vAu}> zn5-~ETbx~q19(ciVfqi5QHh&j%n_U&XCL9w^DvSf7%ivV*P#zazh?Bi-F~xK-qd!= zWyF|sr>^$51cQC2xf3{)mP6Wc?rv^ZyTS8%R>=~#D3mCV+CFp9+=~w0&_{VxNK?iV zqkxkQbapTD^8AW@y|M35Pt)G&*3oIo)toTRLkf+YTj;}j&oeV zg^D8N5jo_1J&8W0Bbs$CNllL&H83viI%!pDS)Se|{H&z-Ti0XFbrZb+V-UG9WV$X( zUGFmJk!raKLsF)9S#b_j{&h{M4Xv&l4QL&G62rz`+iV!@h2%n8RKvfg@oKHqH@3@| z`Y;1DaTZXzxmCwG^h$;uPSr5?y&b-4X)U-Zn6Wixr`AQ?u5Kz5tW!k~GEGOfkHXNe zz%%>ye!J`FcX`<_cbZzc-l;SzZuN}0NYri@ZUFA4Q*LXO{`xvvz(7k^TAzVI)3GF~ zGPqE=+-PoQ7fD}*m8)@quh&c^7xuT|Z2OMg@_i<36@9Fu!`Ku#yDZ6pVB7RnTfH7u zE83M=?t3txO3f1TcEhxzb2>RH25@(`j?Beu>R{|B?<(0Kcw7ZbUj9|FkXo~gFYxZL b)_CDZ?P2@cUmg6udjF%sU(l=3dY|||3h!_* literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.svg b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.svg new file mode 100644 index 00000000..54da424a --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.svg @@ -0,0 +1,3717 @@ + + + + +Created by FontForge 20200314 at Wed Jan 13 11:57:55 2021 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.ttf b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8ecb67b04090d546a75fff5b110a75887a5dfd79 GIT binary patch literal 136516 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

P=Dl^Rj^C)5i_MLUN1jaQkTwY#yUE~OY%Uf% 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.woff b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.woff new file mode 100644 index 0000000000000000000000000000000000000000..9bd812abc35c6ce879a42e0a38ad38412ea27bf2 GIT binary patch literal 92136 zcmZUZV{|1=*RbPEG)X45Z9AFRII(Tpm~dj7ckC0}#))m)Hr{!@zhAF)t?GUC-c?;c zx>r@N_E40N00RdD0|U1>0Ym!NLSTr2%ZBFvJNy3*2?gA{Gn`mf1-Z=Frx`*(O(3I?w22?mDr?>;eXv?Z;zJhM#<4Gm4f zf^=%W^k8Q_RCC8gtSG?rwP1_>P48cCi2uO+2gJV!5*+le{oni`{sH#CS|i^9?!ds5 zz`)tREHQzBeFQQAX7Q$$MuvvQhGyoy@DOvlD%iM$wcnn7o;%;*FapDDh$O#_B;xT4 zG4_>-i+g*2fcY`~l=aNMoY%2cRYQl_VH3@FnaXH_u^qy57m2>jT=_NRNi%57tRzMw z5)8j9UzeW`*iTtYCHb?asf}KOBrc8zEz+b;QMV*zKe~RT< zZ>N$nv(k57`0LU98Kt+E{K3b!tiT-^{h>wO5vF^}SQotOBZaL2xUY-=BSpfLQnRLo zQEe@znlW>$RJ*%a*U{rSvaY+B2hbn{J))P6)S*%nBet{LEjiWPI@# zM^S9qynpxhNz2>%=kv$UZG*feP8CD&(%ZzThfTKTCv*O<6 z{=zkjc&=SrW&3ZUp9xoUaGzaUHA!zu&D=VPc9YF!@Abi}rcW!c_o;3PE2P&r4tnkG zs`R;p_-GxVZ~+O7#>m{Fp z`c{Mb2e`3LXgz(`ckds8sON_yg50!Et^9OMW4L5bk+#XLwka(|^1LxC`qEN)sCewg z(mb?OG3gG2L9`n3${N^pHs9p#nlUd^+vxA^a#b_o0z#Ba|8bqWlRd4buhgP;aPZw5 z*PX0Vi^oaEiFXv{iSZTINM?~TBn(UWnd+Geo4Ow;qw|Lbr}x&>Vm}tMci?@&WSxFu?oWE6ZH03gg6qeqFcaM~hoCv~!w8GQ zOYBgq_Bw0A$nK(QLLAm&WA=$q2SeWwPyF>#f_K>!Oh73|F@!-MAYdl254KW* z3Ux#{7!dmrjA#F2In-uA4d|?Lh01mMb#Ud;~aqc!EG5a^QP(#E!$VVc(z(2(M{LD-DECi;ZzKA~@7;Gl?w41f z@G1079tgKYWE=ROR$q_cOB(VU@*SV*5>ed0M-%+ty9dHEJERjXom|q5F_VgvjqJJD zxzZ1`=3N71DDALl_wn|YU`v#kv&FS4nq`b3N68|O2PYvxi3<4*i5-k8ft__&H%8BC zh)145MGxXFD^ZEJ)iHB!m@Z5=}wb;PgcwFX^iw~nF|X5TVMx-wGHc`KJ8IrLBWA9K{Fsp}P`-Ip$hZUPXvIOW0&pBrdF4F#(z(rmSPKv4sq zU{Hz$2{0~?_hL$%^xA|Zc?ZvE|N9L(9_&WMpNqgci$sc)qTphCBTyoWqc#&-tt|Id z&}v{F0?n0#Ob$-eD9!OVH@z;yj|}}2(Bl#@?o;q!UZ7DA*5jdTn@m{nlBXhn^eQvq z)5x|V^cu@K)u(%n9Hc?44da8v=@{cf;R~=_*{Y&U->bKQ{u(*;#Dz;cvsyOaV)KQk zi*QqgDXntMrhdqpg)YTGuggetk?=LNnke|TAnmJPKqwIOhewI}R>c2i5G^1(XZxcU z)^uPo_#(mMs*91GjG_Ii{d~hg?PytY$mc59q9rz`{qt$P|$R-TH1b?_?Ia2}pvaFZ$HrlzP?6vT?-8EvjoEGg!5oAyD z1ODzOq)idZu2wat%S$%naLsiVaq~GO$lAOzf9{Gk;(kN;FrMA^&iw9AS#j%N`+EG6 zCCj&@^{W{T=bKJM)OoKo9~hm4 zI{6XaobY~lwKzvcNCrk2ZvsEsIK{_^s)X0DY+Ij=MD*>%?E_Di4Qdj6DTA=ii*_WI zD&f3VB3Zo(^pKzZR8>z#SXaXycj&4l+|LnSl3uyhP9$HuHE!C|lt#WeeSe;JlT5(L z_S^Mu27wW}c=5GJMs;F)>D%&`bTBjveG9+9Vv4vVZcs%TPRT+; zhBq~@7sZ?^4@qjVcj5`kDi@|VI{(E@MV?tCOxf|hdYg3bPl$6E*?9<V|BMqnr7SpdGuoPnJrDAs9m*hjCmrE5?Tnz^(+T2C z^2wkw7PwK}fl0oSSCWJ!G2|w2he0<_o+oPe<~+<0_;F{vcRK5HccE}dU7455yywFa z>kn@K-DjeMyl?NPzKvk75Btw)*p@F;kB`|vNTTgHp%$WaU;Dg|XfrC0Bf1-p75|_a zksNa9CRQ8@OTY6K@UUtz^Uqm+tC1Bk-Nf4Gqg@*vgRsT@Z?w8Z&{C zbMqdE9Ocyr;xbklEsh_y8oEJgq++!Vfo3Vr;E@rhIDtCINCOQ5;qO*0lk zEy~Owt(Z;{)fCI}PZ+Fi>q{VlB>7SzUl42kYoNma4r|=8j&Mc6==%F^h)uHn_KCND zRI(tQ~s3K_mM~TH9#ZhyX+P;=W!JgB4qe@UG0%RU(J7tH78Y=*`Xu1`7Kw zFa{$`s4pux#9vg(iij6&?EAy?8~j%wH3>gCxD+kv?>$m$3ivulq*>UqUr?TcQpsYc zujH^lSYAZLCd+2Cqs=TR_JpOZJg>~57(4N19_&NDh^{FU^8#A<=L54l7Aq?&oQwCA z`ZX6qd1SVWsnv*i0h#kENTJwDO6gS<^`nD5gG@W^<@%7e>1h$XQRfvCTkXmdQZ{)A z<*+Dp@wZ%j(166Di?az0-=2*n^q8Qk&w6XxNW{DAQETm^w1BPqNED|c##{rTi=Z{Q z!KlojoNW|R*f%WIpQPR2CMww;Z2z53PSyMuwJu_T#r6Kw72dju;$W1S3K+t^W5Gd{ zH}lSRGU>`)${7^XkLx@VEVT;VfaEN$&}3I#RN@1c2>x!MHLEY-RV{9uKcVFTOyD4t z7%-Y)40)7^eId}zsR~7F?1+F3YE6?)d8ZaeQ@Y;~4{3B3LYatz9`7tqo<4_IrVwr} z1jb@&dTxj134~I#dI*y(YDm^>+g=qf745ge|L#ELFu=M6G(%7cFT;d;Oc@_qQ1MGx zmZ$@JqUaocV&=W{!hT%{eeL(b_I&IFpSD>_>LYQ%A@rjHuM6TUtF$YLn$kV0H{rt-1V!*FpTBi7KS_#$T(aV8Mz&|H)^UR33`u7N>(IvruWkaz%Evh(6 zJWZ9b6#r?0#b?!mVc}se+%ozn-yzV2H`RTi&J0}l4v3(pz1&o#vg)XsRlCQCmcQ{2 zd4z4JHVcA7JH+E*0PR4;-UwrhDDsm}tZX;T6BCFMlijIV)iJSEmo;SoKa2e{t{>TS zKP2NYnz#x`WF@D<5)!Zn0%+PClN^9}sR zkz;VLM|ZH$cNFpL{&pjyGc^%WhyfO+6WI-wJ1rdco~v!W9&vGa!003_YZu8Hw*8>Y z%)twh;K^5eLB%-8|1K6c<<#VEX*r#Otjr~VVLy8lF4)!LF)G)+ko?LI6uV#M2`sp{ zRW#<~HF#*kQ?tAO=u+K%!Uo_At}6oEM?4k66DegiJD9{9KY@Z18_#p|2Jao!d0S3r z-Dm5m-A@C1Lha8EpQpo2uL_zTD@Ll{F{#RrgrAXG69+~0s65T(;qAavcrw){yOCew z=qxE`uI>7#HM(d@A-IMI`X175nnor0nk_-s)T_UK8N2C0t)YS+H~jd4yh0SIHX5lO>RzguggZWPSmAy0K%+o+?h8mWFNYb%eU^oLy0?v;x_NG zrg5^zZV=6G>09YffOOfDIaE0qwGXuc(#CO%7{UH!tl z>5j^+Xmw|z{rmlVC^ZEe#Y)x*WTcIsXn%rOd4@IRVwFV4(NGU99OD!E@fAWPe;6mB z?q;In*l-(F@0#iyIi&MW!mM=N(srZG@-#ot3iHRJr{?{Bfdf>GDd&6u{=8FT(7;ig za*_gcb=`%)gA-dSEj#V0q?GK_*ku?~z?>oqP;Qko@8##Y=r)o}woWoiEH)3ckaUEc(e>{(yW}rZdTbna28)S+qR(eG+ zLeiu0)FfmqJ7u7aotuN1d({bYyvj4}LVFby?+M5|7dBE(GcdM(LHxdUj2ep(flPf$Pp{7k2Lf7s==Er; zJ-V&%6f_bS(d^{H{}xXtx**AL`Vl$G;zzWC;OtsGZ7J8zaewzEa&vF7m}WoWjv`*WjiV6*mg&-Yi{ zhR3$70WV%!SN*)^>iQLwewLR$jmmG{?*u+xg@vn)1h~64&~wWE=1A7@x@}eqr0#-8 zF>0dp*P$kfbun>!C^l*I0Vf2k!k%)G0Df=Mv6m7iKjJ&8~x}wQb}Ksm#SFP{G%$SL2-OD zPkO=*`#1)ZxCOEHSBskBo05a>(z845kcbs+NAuJ0Lu`^ykIT1+O&a=CYSQO5zR+Lh zy7G0my~0hxFWWB94N&`Kcz;VCm99daK*DZmuBB6USrEhAr( zt*S|F_ecaHEXU{kIu-bry}-w%!?&zzM8Wt{&t_hAn(a2N-}{xW*1g^S)PjcZ)hZAZ zh-Qy*^-G_;Q_eHq=RDwu#%mxNK#@aL za4~m=DApXB*faHr#9Np4U}8FDjDTUR$LuN^V8S!o8)_K#ILfWbuSi^2Bev&lwtgYf zemB)18vFg9p9tiZ=SI(-^A&>f$9ZuK_i-E(Ew zkIp|4Vk96DGsi z{Ru0I5H1B$3S<>VJaMs{QOHY*jXK;dbj8uD-F*8)P9~QB%c1gTa~4#Z?N-b2fm!5P z*lL&s&P(Z{d|`bDy;)|3otSz_E`nSIw3_^rlCz&V0PxU2V)7qt+V;&LJu>pH#t;*H zoF)~%MFgob!-td~YB8i3w0vE7O&{FWz&X{)`JxE;Nm z49BIdro_&PMuym9tp$}P?sdJ*eyY&2@JVy8IR?-#DqhYoRDl&7K9E(%+>5N3XFa5~ znoz0lypy?^M#L0GkEA_20sQ)Kp83(KL>@-Jo|$&+uiaR>;>XD2|Asg7HEh+Dq{EVJ z<8jUFJ85ktUC0`N(kJ$qu_@coBwQXpiwj*;X)VB1AdYz(qxjnP+FuFec6;OZ^T&Qy zs+gd_Si3b_AMd14Mf_@QIyr!wIjVeYlM2nC;a5ef z&hC1gZD|+o%Z%NQ<@;1-UaWTViGBVM>@K8yKyA9^PU=A#_x^PTPLmtv#qwx*=fD(A zxdl4~Ei!Dzf+P{cha%qJDWi=x`sT%C(mD}kL{o@aQX$=}*(kZ%W(&A2#h}xlkY|!> zagK7+v8wSn8@8Q6GN14sp;Kt7-*omM3DCLls{7Wg+_iA4Apx>?1{EqV2(>4<@Qz*C zb7H078>skopdS{zrVZ(3D7WDqYX{P>1{|G9RL)u!b4th0JamcNwAN7JG@1Vy){owH zj~TJwIp;zy+o!+k^g0}!%JP`%^Q(+0q4|v3xBG+)`S6+F*Z{&&`eGldp+g8e+9WrT zL=<+%jPnA22O#Zn^5gd$3+%`Uu?kWnOYQ~v(rwrZkoC{&JR`xBEp4@1YgK~~LJf4Y zAMUS9@0h?aQy;V%VVXj|`<|D3p0fiq+pgWVmP+xt%N+dXhD35Z&noar%`F@R`T3(0 zMW*=?YQ!@#u-xyLY{D%0u*Z!B6ao?n71^c2?t9N}ndMN-;yjCr=}G0_ym!k+CTBXS z8}wUgOKn)9f3m(N#tdb*mFX7(jxu3p%E)I6DYuW+WV_++xO(RyKy2~trW-*q@XW07 z1Ui)SkTplDyXP4L16ocl)4B4dGLd(sKZC)0Q#5+}=-}8`p)Fod)ao0RiEr*rT^u*HpOttzK7-{>5SJC}D*Ozv{0WZO!<6XN!jBDQFb zXA%msJ1BCxVn0)MxHUWofB&0F5C57Atx2(QzKyWmqd4mh`nAd@Yv$Dw%lR;NUPkV4 za^YQek!QRXM*lfahot8HdYEXf`)NQlxQ(1NEBcP~NSdQ5|0yg~h=xXJ(yKF$@!Mw8 z!P)7kZj*X&os68<08hV0N>4c@*^3-8MLf49e|H)p>53RHvHlN?&pv6+i{B%*e0+Lr zY}8##0%ky@;2#|(zRH>iwp$Zp0|?CgnPxPuh*lN&05X_y8>X+`!;x6Rq3=Q+2O;;1 zlQhRrhud_VJ`cY|t?gfN7?_@NJzX%-X<@P-w@Rsn(zYnZkIyN22iqw=ZTDGMg-n&* zwl|AJ?#)|^UM4;j0tQ}guc9%9lPv-{e%|Le;zYZ9q&4PQ-I342mxBN-Z8eDtpEE=zs7RRw}dq&^2vW8e~ zpG`)G%O(9?2eS8jw{wu?K@{z3kM?$h52YF+l+xaNW0b-`x;~^x4_R&Hg9-G27Qx0D zSbMNu)tz}b{R!=p=dL;*JItY$EJdv@U&AegCs1yOThKJ?+UV0XuvQq_+pBJVzF+(5 z_4w^FgJQUC?_@hdKqlaeeee?Ov@EH*Qv){Q`?&@E6E^C z$O;dwpkNQkw#l4UO*N9LOV-rNrOtE4lU-x!x~HjiK2w$-vct-CJ%wxNvJ!NnLQU${ zde9k&XEl!PUCqd9{LLu~G(G=`^QnRUPKAE`weurs9pg^>a}FDMp7(iS@kz7~Yd;on zS9t9i=6e^nt8unX2+FQiSlV?f|Cx>%GCW8{qmarU66H#`ijCabvd3Nyzg@?PeB*RA z)6n9-v)XL&DVb);s;9fv<>Qqwj(ZB!BS~_5jcn2GZugs}tG9_K+nk7joR` zh1__q$bHp&LFE5CohwT4K)WlwE83s-JD6rAm=(VTRyWmmFr#WJcod*${x}4@2nAne zqj!sKG2@S{%5-ov@IGTyG@06$>r-zJstW5+1wmOIa-YY?G{B0|?mO5lFqypXcB3jH zR)A*9qA(eD=`olT32@3L-;63g<{n6@Qh5oQhFR0C1*cNuoh5W1W5PZboZ!i?F5|9_#o{?mNZf_7)(sr_gHn%(@6h+8XBStRq-N>nvH3tb`NB8?5O+W1NJsD!}t6yv+ z1pHYf!M1n%WD|~CLz7FKXo&-M|Imm7@iE~?X=5l&n$5!}Kx)avbnA(Op1e_}+N381 zWvgt0;%nB+&VWT#lrZc}0GnRYyLx<<02M0qx0%*(l&ZCjOu5Y%3_SJd4|b(|Y?A3P zF?%{2uS8S|oknpGv#ssg&sz>rm2ep|6)YN$)NuA?=K8L2W$>Crd|WIFY5T}TWt5E5 z@_KSJXUYaRK{HNBT8|5<=SnJD5_k-6Nh8>pa`D`xn1kWgQzbE^4Ea3D{aOEWhfA0q*M4Nc>IS=1G9?))`JQhB18qsDzKm8>| zGD@rO;KfHFZX|})ClP5iDn?q-^hn}I&8cKkK3J3(!fI@0s+b@y-JFt3=M$*R4$*dk zo$An`pKUg5oT_SlFCgEa6=Zfl!@B6=)kCaKyXgNTrs~)fk=fU z`GM3<-2AsxQ3uQ*=~kj8F2J*r6)@i#3z$*(^f}vinjK$2wTKJJIj$8=>VPE69gh0J z7p)Gb_ywPYdG913oZ)c)K&V^iY1lB-?@>&Nn48#jsHujm3zOF9a6Zj`7V(~TXfNNr z`!rlbab+2hWHlYoxBL43X70A!6yP(Xy{;29U9wagbTD=&I@$K%n9Y{@gw0T6GRe63 zU+ufwUyoFe37ZVLl$q~JD{PW)lH?{_P`=!2=?*CaH!F~Pt4%c%mu(7jdZ3h&PyA^tleweY zO;t5kYlTWFppki(-0TB8sQcjZaOp#WT+op|dB+(|Lf+#*cTp+^oBBVk^8ueP@;P8F2&&=WPz^$rj;M(8Q3+Hn80#0IFw6xcnHbd_Ym{t`Ss`I|oG zxE~)|)`e*&5PZB?5XZj~VXZ^7K1U$A-CsCGx0S7bXWlKCkW!=In-%IZ$4JuR(9-IY z7}Wv&!&@Ql@YPEdLNv}gY?d|J+cY2E`&P^lSy};ww%t0zP^$u{M)m|;xcqaiO99y` z%^i-n!TthByI1z*B78ZXywK6Tbc=|Z-QO=C^Ok*BbJC7|;cN=WLxYy#Id{vdFRG?xPJxiNmgT3EkYHX9 zP#=rPM73t9JhBYyHen9X({SN%S(dNx+PG7bM>k{XoSuZ@^P46Z>HAZ5L(+$?Eux`` z!6+`_FK~4*jLvW#?sAV=tw_(o<>i}~jVnYMH%BXO#&RcN$#$sD+8tZclr!8Hs3C}Z zuVzV6U1t1C(HOMX!O-Vx3Pf>u>rWNdiR*nmL^cIzSE0tUMp!a^AzZ-E@5S zNouFl&4?irWjXw@>uCN3B=e(mxFhn+;0!1@$Jx56RoFB?O`P)CNctdSRbrxxy1^M%AT0l>-9U{7VNC!Z#VL?wj0^V z1lCMaATLT>-ejhUxW3GuZJ~8styS8+9`5D8zKRarakvLu?kxCRi~xlK<^OzMAnzKz z$X_Xn=fq%#1;2rNY-{ls+F_vd-#or`E)Y76oLX`#O2QRT;l*zvsSoL!0&*XkWkfw! zt{A4Y)DMp+22KcRy(UAoIuhCG7#naB1el1#ae~=loQP#q8)cdgh8R@A6D`+PeJ_N) zyvOU)r6<+ty!tpu)$2Ruo1sffcGdlUM&*8cVjb)r7b^&{1n)AX*kMCc;`nAa_j?6D zb|lKhN+s&-0hq;3J<`CB69{i-j7vMyOI+xlc(=jPq?}$x7Cw}^>xvcOuDy+`M+C2N zzNJ6<`4#ypIgHzY3DhBu`+5sJr@GXJH_5ut`IU(m9E_^KMCM?{b`o7m{NuWeWOLx} zL1CdYAP_={ApL(y#9gD`~4J&3}ehU;938MWVw z>ymhm9ccQwYQL-h@+s9*Y?d+LPgICSh-%Sn#^bN1Q07@|HR2K5Cxe8>m^?iA_*4pS z+DCdGUiJ-wEYFGVO4X0gu67c8NOqiwD=H4!xjyyUS@>2^R~5QCKWK=<;JZRiUsLz4 zU2($%pCEnzq}{%7HouZIKPS=1pk>m#8Qym~5K=jzaaobU;DrGorjBmkuXz$L1X?>^ z@oKD6`F!5%RMdW6V-wDqFA&5mu?815RsYSSe#PM|ROP>lk<@x~I=h#V%=YxlEYZkI ztJr(g`uI#z+?eTpFCmC?JFh^)UVWpx=J%p{Xc2VZD|Ik>tU~3s?n0P-4v~(2sJwx+ zEj7kX;>XiS|0}HtK5N1+_VE@hndfo#aH_&}y{XdmWa#{Fi%ZMsw?{NIz5NMO6|~tw z=Y47D@cf8+w^S)=`*``JQF~oucus^C0^kjT4s~50__e52nIpEI(LL(+?-MUe2tNc) z>@MM%*v04u=ORzv0W+t(BJOjH&`)}VN-jB_`Nl?x>CHes`c3l=^1Vmgic8OWc_20h zCZ6Db5d4&pi3j>uq(H1mfxxMnv>2}SO!M_G6RW5%4+cpfvn%My4g~RPoj6~Q5lWLY zIK{!=xSVp~rx|(Do_&|@Xy;uw?CQ=58};mk*5-ybyC7dK85Z8$T zrG@XwGae@P0g!EB19usnJxn1RH0mQLNFFnEN;H#>N>a|gG#2sz*6zJGLf|)`Xs_p+ z?C<~kV?n?`1>Md2c*-hE)p00yhTKH2F_A1EpL%-~(;EMU@FrStW zJqj}=qfq@rnP3NRhc7Urv1WT$o2(KzCPZlfB&YCq#dj?T_KBSHD;nxSEzv5QhG);`H@a`gV&(%WSLE zb)Jq+p3REM=51Fp7DuRmW*u`X%$3G&uM0gI0A8@r4jCR<;O_4^tft8gbia;Ps#^*Q zt;&{Qee@3^tBz5~Ww1kwJR{ogemaWbb(AuZAA7PHToipOo|*`+u~IEtPZJHa1J^6D zBode?WU}G$x+K4K)CZ2UMHmLrO2SY%Rg-ES{yGJn+j4JN!oFOV_RYRHe$NhItbCso z{zWDN`VwHJj58tMKz<#5zeX(Q@V~YbDPoi=oEyNFKbVu4v zECeM}QDDbL*_T4)cez5R5e!hi!sFCzpXW4o#xN0nlv+iV=2a;V`bf`=aF`*@A(}!l zS@F8j8TG}Jh6(4gDw^Q5`D-x~1E#`{#y2@6)k6(5mNv_jfvsjt^ob8%-$ zuN87iqOr@+D+d8G>KE`O>HDMl#kUJ?;{Y;<0Pi4HHS-z8biwgC$b`gM*2w97Q}_;Y zb-7@x0tqCU-gE(R4Amrb#MIXwBXJN}TC_!z+OF5->yi>n>`GKE$@vwg7-nFUG zFxX@r!HZ}JM8JQ%VF6ch5Kt2$2Qz3DkPSJBGi(vYvA{PzfzcOBB?AP@U{u2+xefbaDNt&zB+6@J^`mO*(GfDR&x#QpXVxWi0A&?%0|d z4b>Y_z}CHP-^wy~xj1z@zv1Ls@y@Wx;MiYCKx>*@sRYJK+|OyT=+S}-59HSsY z!2j#m&&GXe?jh2>`e)1Gp0c6bw6^E1T|-y+kz~!YR+fgrB`pk`sIjXv8)j z^QauizwHJSL`i!zYH_=gOZn-d8S>cH_+j|`wJRy~vM1E(Y*fZ@%?*3>WCo0|6Q`=wu=SLsjJ&?EFmr{>ha$+YAi8R1jMA3Z=;xx#H|sixcYc)YJN zQd$f9_(;LEHM(q6R?_e(^fMc}xNv_x$>_f82VC#;f5eS6w!M-Wr33JiV}p?4ybKX- z^>|OPc{LN0X3ZR820omi4!?Np+zayux((e6)7YPMj9tf%rNneZMB=x&r2yy@n}Z5+y=x`6N!9}SQRqjJq-U_ z1n0KZSe?4t^P5|lJdqpSDO3ItD=(mO{g+>sm4Pgqcb+>3QDZBP#(@xo>l{X{XE-Y*>E3Z;ur*QLsx*#SKTHRv4IfCO?+0xNCeficgqQ#ma9@`^vG_yCvALMA;UFS)lU2kudM zfj&NWZO%nw|Dj!NOAWtudu?^CA8)eow|s}z(?@=Qf&m{YsciwWiCc_!(JDnuUJ%jX zdqzA|Y!a`DyOOEj7yw|wT?iy;B7UZU40Rkc2~5de7jI8?8dOci+3AIeNF_F^BF?svslOQ7}(WKl7!>A2x6?O?fIFEmB0ylDHyc z_XCCoqkgC%*oPKHOgc+E+%d^=#oVTsYmFX<^@U6R9d_X5?}J9i?M|NW!%mEWlzzZ| z-*(4dB%Qr1*MGElia2*Fk#`GE|05$}z{oS^QgpAvRq6L5eQF zJ;UP=Aj726K$LL^rKeS8c^CHesIo|T(@p{@nHDobzGL}B|D%w*kCe@8YJaX9#5 zLy6%3x@YjjbHGSw0spDRVOXc~SJuAT^ju6-g9SNA^6hb@w z^kfAu3VXa9j54dJmNNTlvffCOt4y7>sNP@QwtdJ>qY=KV4KEG)qqoACpprsfqY&#h z>htx2qW1#T;!GfEQ(2iz&)=TRB3i^gCRK3*Kz2rVWjQfxM&id+u{ek{o`&9jYU7^L zh}GQGwg&NnOvN(p`9~U@WQb14NL{@)OTETmx7`pSeaZmZ*BV3RB*lB@8Pk#YDQgwSLh4h;Y2xUcLCaeHIeN&yV ziX^S>whK#bbL-`8)+2QISW?N%CyB9!GzS`<$b<~-S@u%jd*|TDZ?=jh00w8m)Ni+A{ilxapOGEUYl^6f z!+Pa5Wz*REU4i7Q1l9&&M)rD%bOdv@x#=rjWRP`u%XvS0^MdrQaBS;Hl}UEq1mLmE zizWF{g;?L>mcPi><0GeNo@_&EJf2f}0eBsh-rz&1m!dVJxTbz4U~s^QDM%qU@h)1k zO@|t*Xm4RYRk3KCd%lZJsp};O_I3V4Xt!XqEF{6c`Y%T5ni^oq27`mwTn4hy!xFpt zvxN<0G-Dl4U#ACH>KqM#v*@l5v(@)E3(p&w3LaZF&d-9nTMZ(#470>h+iW2VHa;f* z;fB;2Cgt&(%`*>*hknzRieQYYr8`d7-bsk>l{m4R=6E0@?bV6LLJZ02H>v_GjO#NK zo+d~7Y02Phl1maxw>d)BE}d2L5v#zbYUcyEGLRX z)aFO?N}>F8gbw09ah70_`6{w{AMzGv!{|tNSOYflcaphYGBe6gt}3h~V5rQ&4){;q z*RS@zW59uf5$*hvmW(*4!HHe7ef#cGw^0>?Ebq2pog+21!W#8vgnUf*Hqxvk7iz-FP<_lw}GBK!r`jMC1HVZlQoQQo<*%)K(qY0&)dC$xCkdH{XeX8;ig3FJ~cT z^mmyWYCEUZkKg!RKKA+4via-PJ?E;p%Ri=k!4*h;x}gZcmsz&O*v2%lA2eUYq*VjZ zV`1AhslhgOyJVgU!78PVRq2fEieEapF1ije{@R*XZ}}}MyEIL)799PjZclWvHrRga zCmZU|P@&f8V|1U|rLl1pDSn2()!?dTa+;`Fw=lJsHUXE^Im*<3eBb;J9!YA?+ zOmYbp4%2Sufv#J;(B8^=-?TSXgmHxh7lAQ;W|t5Pf~;3Ef!V?c1%khpPjoTycEr2N7xO zu=c`=SqA=GM7V9kHgzZBZ}`k(&@r=%qJ4Ml527;mRRB`K5yzP zpF>P!g*W&qV{YoV`c<%BssF_TTisGX11)0v^`&)SDI_%lV!j~K5_A#aCAC}uwnb0B z9m@=4t|KQ3c6K+d`lIN-+y--P!xC-174B!j?yh0&953MPF4uJYWb|7nvi+QY^FF)( zBIOS;y90da8OgUMvNbyLuXS-K)Qg?-=bliBUG|xjYGxI>GUiH)7_;UkS@JJSpmR$4 z66UfmWGm#exnzmw9HUi`eu&yKF<9RfdrLRQ|C-z=e0kFQd3#3vZ~^6%XW?^3E9zBa z=V#Lzbe!e(sPHx^u8whUNZk%#;QNjqSv4AP)Gx~%Kd;JGP1BXO#-g~aq0pt1^*ZO( zWAtOD%2?xKtN6r`Zf>*ZaXFgs*kSP$TAKs4N`@bs-pzRIIX#bsOI~;p!dJG?C*FKa zSXoB|^7Fv)aZkIXy^bTimZ|3Q_+}LK!k@@E1ptjK8m)v>+9bf(Xa1|u$Z@7TZsl*g%Q23pJ0#19!|T)lygH)Hb~!(3AFvjDz4Z@A#VbYD zd+Ih~lz&jBgv+%A2W2_60#g9j{+vUwfl5*)BUM-9u9c)&Uxc9@8@8_F4^CFr01zO;c;#l4DAAV7vO5WH(TmKY%5eVn6ppkg# zHrQx4_bXv2$gUPW;Mht(KM>T5Bd%uvIQ!P@iIDX|=8|^|$-GBcFQ&RHuwhFDtQoT< zicCr3=?Hm0Z|+jS6rg@SUi*76U7tn5AzDvNXtza|7z@QI^E%mlKZl@g+W8vu;9e?03=n8~T?+g;2jFUh;49$~fiHgDF=2J`L6&TMGyQ?@`>c zi);W)C*x6H#(sCp+8c0D!C!`T+e1B$bs$F`%?oGbL*_Fdti{Uo_W0JZ=<`|2nN&YP z!>kb}9HRK{q>>~BC_!MN8t?xBJwU?0Sxw?#d!noaw+7f{`ItivbpjvFNI2@Z%ues$tJ5xwKyL($w5v)P|ay?$!y^)Iy<62K-^C7Dv9 z8Tfl{wTZ0J)n!RnMJiGRk(weAiF>jbLp`PI%r&SR>58qWsE|scA~pksQV&%sW5{w; zMV6|f!q-%(DXDmvi8S&QwSYSw;-ju#dBJIdVjevpMQ^~rOe z_7UNE!u`T82(RYsvpIInUp$qk#Dyg4a{@U}r}^0RvyEqnZLy5FBWfJ3O?yxrNJBp2p*L!V=^Rq{1VphV$yQQN@>p^{?U2yVdsLB4 z$yuH&6^o^pxUtg6ge%Q_zL~$lDSCPa8BeWh-)zX5IjdQQt0-0@&}HTMVPyDbbe#jA z>Ho{i;k2x7O{*%iMbZ9WX6~Km^QXrTBeSBute|B$Y=u_FI(jr&&hwk#(`9YL*NDtV zW@Kz@LDM`n)HF$w8C7&sa~&ocikWi^Pdj}0@TX5#?~2r)u)HFV5LKVS`rnQ9?+JNf zUP!S1cMAto@9Zhz6~e1v5e~r3a1T5HzW`6cd(lb?;4?l!<4!V9CetpmabO3Ply9Yt z!Dl?d=1Ex6PDAfOG-S#6q{)snJTI|vQR8}N=M~kChb(SmIWdb-x%0C6tlyT>5oN)4 zNPsK;FzOHSyUGLB!(N}y;D>~Y9|(HrbUvM%z zhJg4yb$-q?L7u|TB=y!b!HZ|WqA79VfpK2yV1zuch~lyn_>ECzqLi*dod+PI0EH$= zrw-)7Eo6B7#ai-soe!xA5jJtr-mV~CAMH`U+v}r%avw-PK%7AXe+9-BkWLIUt`Q`m z5!MFofW3z95Gsoqr(G!NdVqulJFsk$njdWJK`riOrW%dAb8DIw=An2CBOgQxYRO%p;-f5JwuTTTzZxHB<~dbR`ibCYzeCX!bIo zf&ft_gd906Yl!l@5b14&yiEq$P;Fn7-6~WS)3LI(Pw$*^V7ch^&B* zmkk|GU zPfnuebX1SB%0Q%{!RYm#ss)OP3NlrRMuui-pfOQw8R_)GpWtefq|=KKkY%or0q;l2 zNv0z?R20S(2dhR!)?rezlksVu@~SOMMALn%!}ISoJ+K)X5ls*64!#6fdv5?2`MhD< z_)JXnlZ}nV#l3@pZP#O?*x4)a*~}(-nCG|@g;~@B*9b2WUN8KL@DbrNX|^brI>hm9 zK8Xj)_JAh?`RU5fB);&mcnJJg_^h6T(K1PA2T0+@B$y?0vE~OOJ|$mzb~=zZ=<-D8 z^k6dHJw9(0mdWD9h4|Zrq^AaKd|A6Uanp=GZ)lFGI(PGIBwxXrsb(NlMEWNenEv&8 zM*;^#Pr^2mLcMZqXTtCqBYm4M@e2MVn)<-2yp9t>2)-qAaZank1vy5 zFX!5hmR>cBr#ZL=mpc4WzMz`6YStvpDiA$WAdj49x!+xs?hxfXp;=SW3Z9iQDB}Bd z@s{fm5YTo@6iXFSqVxs)JX$*MJbY|CuO`wv5t%OH4Q$Qea}Q72lcmw_b>S-E1R~E{ zgcoC*rZcj|gH>R?Nty!BUb@J@MuV}(DjH7ac;Kh<*&)-p9?;OTaVre@AWS@oW3m2l z#1pX+JQhu69O1i@VaS^~b<2!rlfR;n@vP7& z6f8H$_)%eRAr2f@q1oHf+*KOdu12Hrf}mLPZG%)B=En+I)3+2S??!lGp8U0ryig>n zt=b+NvM-)*P=AU{TV^V^5BDSDY4RH zwQ9Mps~=E0YG08`4b9D3LCI1}N-&9&3X4R5E3wxIi6w4lG?b=^U`F3l5>-0 zL}is%X{$ZYCi86eMr-g_AZPqIv%0al9yRlk-8#b*PD^-m-n8GUZk~Emb`PlBTeId-fe>(nPf6U zbFZwVLNl+Pn@DsG+GjI9%5qc|FUW%zFQ=%K4bh=qkS~yixLj(^P))|?6-7c?^A4zZ zf~HtjM(@mcaXwR#W!*1&*}TWNW<@ngsAdNjPjT{D4jla`729%&RZ|ZTi@oJ zkj>w)BW?8;5qEUqss-G5|z<$2?wxrn&u z&pZong=Z0WF9uTX$SMR&AuT(OMu^{WN z(M-^$XPhW+`q5Rj`hxC!ab7OfBS#^k%68e3-2L@@AZyOGHDpvT5s6I{&r`gdPCA5W zV&s(<1KD93lc+kc+K%q-ncF==WTKY-Ug@^3x%c{|B`Z`ivGiz3_blZD5|Dm#AzutC z-VO328AmKVAky3SNaTMoO>_?_qJ916i&rfx7Scbd^Z!xy9&nOe)wy`xTRG>d&N)m^ z?CGBFp4my8cW1O&o3+Yel_ex3Bq51K0a*eh5YZ&dWP?q#L5L(hg7N#=ARCNraKJX^ zJwN*yo97_gF#FEA)w2ow|Nq|ZbahpA<+}Hzd(QWf5Hz!7HUp)s%5>h!ZHm-T)j*wS z%e8WA>f?cE$kKV37L?^mVZHx_V>CLc^4&rFgR#RzKeqvIy8P7Tm)xErt!MtnxlxG^ zk8_d(+qFwSyZWS!}1Kj1@b=(cytswF5;_l-fhIjiU_h#;wxp#5D%6*vo z1os*4bKIA>ZzL6vHd&vrG32U*pQI5q*C(K98`CgNYC<}3w~wEMgF}v4y(GcxTR8%W z4}BbYIOMn;!x}`jg)gxu#{-*mn}eo|@tx)XmO*_qG2#<9tMLF%EQf<8D1J5=9}d{a zlZ>$lXntMfEa`*Fug3jlS{=;b@H`U3G!glmHVk7xj2R+eJ=;y9CEf_OrAlTDGBAuj zQD=#WzucJof-uUnl0w%$I6gi>#=E>QLuQ5UIGr3PcU-lx`b8r)_FcU1n0vppwQ|?R zSJ4f`5I#7kUEh84MS^h;NIXJXdlwdJwVT`nRdUJIgn#6Q6O9vB3da53oyRG0t5HN; z;V_x3hJ^nXH4Xl9o*MjdO5xmsD2gfwqhq{5VZC8eQ1zN{C67N!5<21n<*!gBURe91 zT}ro2$?}OAdK`<9ub}VR2_}nBUbrYluG{jV7mWD8(Ss-4+>RgIfAm^GAlDFnVe#I6 zUnDz%KG}cq*rDY+cQrcm-r;Xuew+~g^2+W)(motZ}*n{^>$kvjNb7^ECTJ`PPVAiTkub&~Y(iB$T; z>&VHMeW;uY%OAKsTl1X3%*e!+dnM`6L)BuY@{W_n6Pe73hsE0KuPp!C9e&~V50(A3 zzilsBL0W!b^TbWnM-B`6_3y4^Szm-62`}{&XK{7JsU>l>!9rp_OI7w6niE?A_wNtW zmt&o*uVq0qmeNcfw)NSmi4C(`isS9Y(bhlKDudoqtF_bvi17Bb7cR&lYA~ms6W~iJIxFi_@V?&n|&sNPw=M>GJyL|R-{-OMD$1%V7bW!=%%al+ljG28*H<4=r97^N$+xvFW8IxQyR`*d zH{wPd&hET=Tkx6NaLe0pn@7$}-Umm3DbD_-q-iiwRct4xzXI*%i@%UdV+{0Hmm7dK zUgoxdMn)`Oj2}G!8tpaQYq_VmH*s&{-pTz6_df1J;Lm)V`!x4i?u*c3H?5=))SMRl{e5#yNR6pmJ()n~D zs}dz|8-aVTPOj9~enlT8&;Qk*llQIN_rllK?n~*qeyT!v`1)e`+c15yyuWf+T$!pg zG)ogSQ_F%S8N&Q#%~I2*W-73}WN9Wjsa^1I?ZryvkKqt;MgL)MSFg8g1DNrmV%wf! zxsFA7*)|n$ z*cvhEE3saw=z4;&gZSz{g?^r4*%B98uF%MF*pH#I(hFgI{*qOOFX8k?*^r;J^`8xz zpuT>}rsR~Zul*)g){tGg4Zn|!==R#5HrbEtZ|EBcU@zX!9UIoTO-k4Zm>)C@wzHav zVb3i{ILOM3#l%cbJf~!XB)uMXK(RwlZSCayBdv0)*~^d4nbyMCmU$v$+(7b57msW_ z-r7D|UKk&*H0zV;9JmAZj9M1K-P+Pgjl{5((%4w&){Ij}sstr1qnr^YK$zSYVjYe`D#Z1Q{=RM>b}@8%6vTw2c;{W>{Co&%4Q z^Uu@;Hm!uIi4`=nyFdu-vn6&zpZ-i8+V8I1$zj(JoH|~g-KGK261#YhyTndC|btTu#&R;x}>C?Jh0`F z6LZsdmkJM^IB{avtz@qM_FM9Tzg-@CyGD4KPpg^M^hE5-io&bB3tHcx)Pk-kfGY<^ z?B!dIpLi%+ytBJ-;-R%0ZrQau+rN2NZ$jSc37OZ5R0X7-XdT*h&!(`%=Hk8TFv z?e*N-x%aZz)|a{8;r@{O0rz*@ON5dpnI$Xa5^^iKkGz^ZN!~?1On#GmnN?6m2%>@i zSvqB-kKPJ=W?&}nG1O$1aT#~wPQQyosx!R?%jJw>%1&Vn?Ai^cPR`-hlHlL_Dw z9vBN**ds|`jru(-`;w5|tJ6=MIov2p0FuN>p}D?e*u#EO?f2NgGhFcSG8vo_NQEWB zPZD_vp~NDFmc&dOa2avnrrBr3HVLH|tFKQipd@n^2LS_iMSZ#mc5OEJUk-sgXzKhXvfohG3{8jPh~fk zjfI)DKh_PA8jffN^}k7#M6K?o+r@v@EpTM0q{}w>q*)J4H5LRzmt$f}CWx@CEW|A& z%aKyxNyU;V%e*YRiYVwr;?+QL^@=5E$fHRRWgGsv-VR#;pAD=Og3)nmC`8QJz98zA z9dRAGji^RtS+puO-vvX3@>De_fw$x8y6eM(r4rEvQGll|@$$c^S*@&KqPt>(sA&p{ zAdJvrnRqobtHN=JsFWLu&`iNI9TDA19$A{wIr2VuJ*A0>QgPzr#7nu*Up%=)1zyZg zN)3%@HBlgarv#>~Frtu>BJRzaGou0`2$v;z{iaMo{YoGUos=o-ibg*s2xjC`sR0dM zm58%9n=U$WpCIlQ2y{L^AnS&v3MyhRD^7(F$;+n0fWni+@d84-X}2CVB);Uk0SUdBmkD$KN6=M5ED_$Fypt3RRTHQutMM4|;AK!) zZw+G>e?lK2A7c4cZOl(da;qxC>?*LI1dB(?KkT&9q|_`>@}W#4n{E6XPBLVFbAF_t zNS@J5WxF|}+X&*L`!`&KFk4i{>bjRqi|5n(B;$pSN^;tM>SCgZ$e>|UKXkcUeN zRsbCyZyoRPnNK|Mz$YGfIZ-_|U9V+SSDhQlOk{qn%P--WIZR#>5z|F{y$hRoVPRO& z|I1%`?6EIBM&9xO?yqE3H5-={r4-}b$XsUPM^9o+_>*vqH#{l`kBYreE2?Ty3#~9D zCQDmh`}AXYkn?hC9I#sExjo#~j8AYHEy)VPc1qP==jTRcszHR+w3TL9pq*~qSrTSI znv*294}PCT;H^eQG6RB|CH;|RQt(DT(J)OSS{5A{x&FMtle_0If5FnS1toNBLGZGk zAyM+F^q^a=^m}n?x>A`=Jk+-=#=0)r zIYiW#B*)0QbxEdbIg^EMD&Wb%Ud!-IT0KJW{W%FO*Xw^^d;c`u=6h^*5f} ze8<+c#XFB4y8FKU7vD3qzc_<(ScHD z*3;DofAHXgxRlwmM^6n4-hOn^o^&q*Kc{LB-v8i(XO@zhRTBRhBhl6WkfHUq2>x8m1EQJbejQDJ^VQqM=>)+I!Iy67mnw)ISE*zYky5YdJ*Is=6 z+Q`1SxqWm0v^X_0JJ+3Be8UJVZpeCck|@;q4OGw6FkuPKtG+7l!)7)sNF#yWZy z#W9$E#L6t|>m;e(-Fh%%D+<+*T|X%y{XZkJhAja}h*Uh^&H)a}*j9YN;2&EAB(Q#Ke!fx>Nyx22ki`N`WkuBNO4M+bP|tHEC-Ag)d=cl+sv8mngP=(vl_bES~-;}$B&;Q zr!IzFx3qs<5fo1qMEH^|1q=v-Oquy)SF3FZrf#2$$%ApmF&2F|gXMt%RlL5WDb?QZ<=rI$XOa(^#XY1y8kIhCyM=Sq%ddiH1~rKZTKl>6AF4?leAV{U5g zpW{-~(+$rkXFNY!gc;o(Da9(o{rV?*iaf>b!t7uPUWHt3qOIMSX0`0{0_k-_X7eLp zBSSeovjR)TNENo&K)Yxi!zv$E^ysOkD~&Zeo^?Q8_3Ze{SZjOl^-7X_qbcXhk~pvE z6Hhw6q!!e?FG_*yF0{l(FwbwK_lX6Ayxt%q=GDjVY`tJTStn%hz1gTuz<@JJU|Ii~ zGiMh~?J?W8Okx_rW`8iLnG*g?3$Ik45=h22!5VPSV7nlOa*iQWZs!hg$GMxi2f5dA zZ{|M8eTw@G_YLkvL_`{_qwhAh6ydk(vKLFhN{6 zvlm>>#b-BzFP~k3oSa`F)D~N!1a`Y1!{Hxwoc-tS`s6vcB>yRe%YvgQqK=19>~rqn zyrbOqiI;z32is-%NOn5Tutxi<;LLrF@pV;@>3qNn=Ar8~8y1aOG>)~EI`jMy)B+^` zfPrca9@$;JZm?y;#`5n)t!g$MH{$B_^!8~oUtZX^arO2zpZjL8dvy8uJtIH5d%Rt) zZ`O$(mgiwR*lPOzi$6YD7k;C5wER%Br95E0_QdKEi=WY9TmA^f3WroC%^7fz6EB?M zO(d>8n?z- zA9Qdr03$Gr!U*ieI6$P~801kqY)7E%rs0P+Yy!*h^E5K_h5>nL^PO8xJYf?hrR2?+ zcPHv6{Lw{~R}n|IXn?~bk#y~fESOSu^~yHV$4PmtKq}5evF`hn2qd2sscA@(rkFZC zo2+}@KmObmBK?-AZn<;wUB{?Ix6B1~X?$d^l9heystuvx2ZH%1m! zl3<-+q7%piR_l!Kpy5k6mNkPDu+qtf#Vbb5#^RCQSUeWG35Q5YTc z$BH|Od&#e?-t=JmqQbKH)HNsHxLjDf)8|9yst2!fLf&8f6V`^m1m5s}=gMHkbP$o3 zL~@zg^NcEHShR;BBBW%;I8q>51S`!NgKk3jGl=3LP!aj-hQ9XMspYNyy{T8MZZB1q zdc}-4x3{;=e|-Oyx38^u;KNs2@yfAp6{a$yi=W*xVOwcCOG;Z;YF#H)+PcSfUA|E* z?Ju3&9_>AJlQ@>1YyN$GuIy989Q{&uJk@_wX0=gpQr7x&LvB*6Rq8;kE;leqPp48xXbs{~scESd>j%LV(aAh0%sj)_hvc@~#umc+;TK{d8QOOtugto3t` z2c@T`MmJ%Xy59=?bkMFYW&b{~)*i8f#gm04UGa_XwyF78&&tLi-z_IN4#m?ikoS?# za;xB7zKnZ4j#t9DK?C;IQD0aA5!2zQR&z8Qc0~sERF#me5Isvo$nP#O{7#Eb5`Sii z5hWyGNf^ZPS*bRQVMSqq?>BMOoyns?KSI(;hEkls7n~F+xJjl(=0-*~?CmJ3lCPyk zXMM!}X&x`JG|z@D5y`T&pD4-?Nd4MF^Yyu%TNm11zCJ!N=?juZNmOrdsY>c!OMy83 z>e~*g#J08G%7FuK3OruGtT|6`1kV+9kp_aK@`5N{uc-nr6`afJgSnCEd7IDiY9W(v zkVsN(BO6WmDWlZ5rP*lMs>Tb-=e5G4BYtInZ**JJw5G`@s32Z6(!QW6Zs<~z_tu`1 z0%orC9ttq9rSLg}v&6?erjen^p#Q|4a3?MZEPfbZataDpMklbuWAI+W4i9#n3fj&# zZDDm~sW_QJEi>1U&B@M0K2z`3y@R>DtNoH(J2=(8tn2U~k5bW~v2kv-$xAiW5J1)F zf;4J^*41>ep-_-e1he1a`kG61WBS>CBY5v zxP^4yb=O3E?I77 z!9F%zTNMkTHWC&hb;d|}PKD+u4fA&S(ru)%>5f;d_|=J4+YPfy-Aidi-1Roc?$L=j z^m*xKo}L%O*OD=WdK3Dp9J5h^g^e4Z-MH}t#_nJF?BT=D9=nk5V4PcqH_!HCRC0rv zv;1`(hUt(DJIpL%1<}j^-Q^h8RAvxJx+=#B@WV1`vRrDJ4fwJViqA_j->nuhWiJN` zKYVyxAhY^burMw@>G1pHG_2bn3E%}eSs_y8Qc-3j3|&D}rD9|i(_x*zO(ryx7BEZW zWpzqZnkN4wjgTJX?FETSH%o;7A1N)D(^6%{brp7Rh^zS%@?MbObKDNbUetl}N8vgH z6`12J`+$K|^t%b*T%(6Y$$jyhF*L+h$7WnfkRiZEJclKXJew`3DgKp5=dPUP(`q3b zIdgl9RK3!O-8gog_-Jn5oU`^9DX^q8DRy*E|0BdH32y>-L6)=kW?@arapL%&8`Fkv zEgx%b8#Q&a-E>CyCsZ0maXF5i-~qmA-{8cOZYgf8d)MR6VTgbyxdWP~yD=Uk@mcxP zzs-F9EO@LZhGTC-c$S%Uqa3vs+%exSh;dSS$SUqS%!HZbhtv!8^)b|h1Y)p`nS)!B zzluuPY-u*7N_Kg2*VM&<|JbpWSN>SQ*6b*jwsLPFCyK49#nDW1cfXnX?m@EYHCHsA+EDoJ+J9{L9oW-5{XF>x@)hnFcP;2l zxEEI9!7!T`;be!6wqN+&?P2&akVCvz1{VnZw2H(ka`<2DQD?d1NpyE`&OG^B@w1iD z%4fx_SQ~!oy6S+}tV@w7x>U%5%F%73F64wd+hXlM;S2uWlzcrS{OJ{$d_Hr!hcF1B9Gv>e=VUhM`NH`pz~yS z6G^BUEr2nSa00Uz-HDdO0qCvHI=S7@55O)iBUW{h(1*lhh-4`KgOZ8Nta?m^zihf0 zWUOnYMmj$_nol<*(G?9r1x03sX)llkDeLNirP?Xm%}NC`%BZBTipRdD@jXNXsF@3u zEFMVBj`zpo!sv$4LX4KSV)XYo~S9Br;8yt|!s z+>Z#ut5~wtA=@K+`*!;q%rSJkwR<|-YyVP=R`bk>{kNUnmsVL#_b_L|=LX=-9~v^J zpUHA!LP1UhUz1@74Tb?xd5ChBbdDOsdulL)4Ag*h{v!EsSP5pEYkxkqc`)i8?Qgom z(tS(yZ7K*USCm#~>dST^(v(mS^Y}=qiPQy#Tqr0;q*k($ZWszGc;cTe`GY@_)5OJvX7WW!`_){ z*2!o!rOKh-_hT_IYNKNfkGR&%wn=a_p z0F&V-=}bbwBM+Kkb6w-s#|Rm{Ur!arCkvBX=JNT$)`{`W-OPLTKCqg-^wR7qeH97E z4zKHyYHFxr&qmO-ZC3D${?8-+@vG$jS^EcuAI%gq|77G$1 zAzR#wtIa$eeD$g~^M{K!-&{QW^h~Gog_Cdj`r*>eHv`W=4Y!&B|@buh&JW{j(Dn0sWFx30_o)l2#ZzHk|LTF_tmtJ&E{ z=HQil=;I%k*M4$z?R(Fv*RFluGVzIn<{JP_dWpV8-qoaQ^ zac!${^DQ6z;Df2zsbVIT$`q$&Q;mbG^VRD7>cNQ(Z-^bQl&*L;ZW!YJ{Kc94mjoFL zbLsjlAM%2TEAN7Y#m8E$fJ+8z$S_%LnN-EIvq(}$o=ymog;^J*8 z_|P{>YyY{jvU0G0H}Ssu)vw;Z@$M(CCU>3PG`;o+Y;#ekbCI<6Rk>P2+bB zzt{e?UOzt%B#oHKE{;Hw5Z-hJY<`3piyIR11*4UK`8#Ob3Wp!v*9*a3*q_-hW#e+G z-taTkl$F^UQ%#L(wzp%YK}=Jw_bnrz9wE=<#+MeiO}E7ZJ47D*p}-C&H_hG5Yl0%% zT9^=aY@Rr}DVV6`t^>nR6%<~ibYI4mR8^4N-6LKh zjj1Hd$Z@lF`pe{taQ`B-+3gsIZ!}qS9gB}81a4#AzBDXx!$>?2MsSjt4>#=>m0kmg978iO}DsHN&*z={nu2Q!Oy_j${?1LUX$2z+Qe(pH1nh($x#8JaLpv z0a|$6QUzzyxu72Cec7EEnRkMEmy8{%Rftq(X=x8}EJs-Kx$ zihWy^P2beTVjw8ljB_40(Dmowd-f6Ku$s6jL#R&~-dYpdY`ZdDu^7KOnt}|?0#V~+ zL>vhtHlN^RM*{|=%#yR9aSw4n-^(jz$}%xyj#5`3uBJ!|!ZgZCw&Y2Qn@!7#fP?KI z7x;jHz@=F2WZ1DOk?|ywDN|SW{9G7ieNS%@bb_o+SsI}K^r7C5+7lFo55DhV47^ZgHiyK8-}o{3Cs*U%wW18 zFd#!^0lDl{A*K6)H&Q8#dV#NHcw|bZPAW%K3+`E0krW6dzD4ppjX?l_h*FIDNXAe} zcB*A4ydZ+W(CrKr(*iFM$q#G3C=NW8D7v7Es*$IB!GIawPzaT5m8gW*ZO;Y)Lv&e` zd4U*?stFQJt@xRmEqe8=zmlSe3u;;b54-%4&M7)sx zuq2UuLzbl5Y%N!7bfebP%JmbnHh`88?@tB3o`dAFL6 zuV2~HvCYMUhwp>!vV*lJfBQ1;`jrC-zKsAn?F%5&IaYUYG5C5{V^u*XmJzn_><3zF z6A=v0ek#oY!X2LdAgUrFAD;chE;FK=au^TzI0O&8#$q{mgXXslO^8B2KjE64MNQfW zQhLiqNnh+3-bCJwBSDXJ+@LVwTHQrM#0|D?6ph8M=}i>;FygfzegFI4|L^SI7ryWX zLY}zlswb}c{v+pX<-uW8(^Q8ig5&7YrfuuTG5m=_5JrNj>bejI0Xx%@j%O;K=1!d= z+^Hw-y6f-mzMJg3<@>kZ`n~z9wr{)o>TTN-o$(!L@4pUK_9UW(BXLZUk<|^8p>ae8 zw^VqgJur+0XeKqg@xZP22VHljIfyQKPX2U$Y^-I}`>D~jE&fO_Crs&b)SE)p%5 z@s~P3`mRPlJ1sAgm;0^!H}fsOSO2|KD>d7>VdJ*ONEn)iRHR*TGDY<4j!o0=ethk_ zmPq1B*9%w;_4Aa2cdKzn;jP}qJ;FWBy@&e<_dDDlgS=noqpw!PKw>1^!{WIF11^c( zB?`OIj0P-SJgFFBS;Esy*|Uxr$c#ijS*Rti7bRmnGZ>Z$B-NHuLmpCrFevQaAQ`{G zr^c2Vzj%I_G{k~p>>T~%j}-|ez&Whspg`pQi<$#AjHr-?@49<31hl84swGt^sj8!z za;8|x*mfzX75kQ~dbQYnBLLU6gM5aV2_FuhOC)(X6*}J&R1;BDk;7kOcY8v zArzIFLCbIrUXlgXm=-k=W6H*~?!uSeF)&Tj*zHU$m$x663iXQW;`tR7&+jUwhS6D6pShAXX<8pLy` zVBw(h$X3OQUY?I*TXpo;r_1@x{VGVeh-#T{!F8!6QI?>2mn2n!1?&kWw)*_JuM{S; zH|$KOJ4=&?^RCVQIoUl=jV{+72PGN!tqWr$b@W=!|87!Yq27`w2y(EHBKMSwa zO{ix++1pI-+RnE!PA)ViN`;_YneMKvkW95&gMUL!{?}W3MAODnc{9v8rAfbBTDflJ zMnrS0UZ8Ile}TSXaLm=pa1g84ACg|i!;*iv-hO9Yne@q%L7@<=y&tD!QXwOzBGyy6 z3gyip=bMINBP1GW3Tr=n9jFV0qxDr692v{ezONV-A;JW>4X(w5 zFRp=%{S5TO&0saJa(lP~++prG^vILkZQPwKGe4-Jt2F$I@vGXHMz;^ERoQfkz_ini zaj4rSaR($Sf{G=;&p5m`;4!%@o+3VciUbaW#ientiJM2uM2;CCbc7=ZHX*-7G%}zR zoPaHq<|sJ`x44PggnHSK@Yx2*68@Ex9H$bk)F`PEnj&PLlI`SoueB~Q?hS5yZpGg> zx6#}_wn1CkvsXBDB3mF)ie4^kCP$@>qyxS#})-!qDZTZe`R`K@=oE6M9# z-$w__Aj@*Ombg!0D@>r;p}WS6QXL7|7%5v5bC|K{rXX2J96D$uG&Ji7pgyaWk&z{J zh9zJ0(1UKE`^8YwV^+7*XjX8b3150eo|#5=Guh(tfy8Wt7{d{5(6;?<#Dq179B4#U zOJtSGEc*s4!^ni9Xo{lCVA-mHm{0)}VTyBm9L>&@SqhcF;M>$zSqGMw^-$IWxOw8LTF%UsMTF*|mf^adr&vnQ&~6>g)vM`vIEIqcupMRoV*{)~ z1>D1#Nu}8n26A;$Niz8doh4<^m4diB2`wT?{s&i*oYJI^eob@{Yl`QQQGxP^Or9vDjC14{4blaeD-@uZ846){x6Jpr-)+NMBFF{Rd!uJ0U< zPMh(RR=6&=h1-wF^cU)7Ic8{yRk^{yb{O(u2T4(8ddL`Gt&CxD1EU< z2-X8&2rXuKGgyjzuKSnWRepL*miV!}5gH?+Hfduyk!A2C^$bCj;bMWPMsyc64}ly) zrgrIk$L?#FoH})Cq2-@Cbm+(tYt+>|5aZ^LMKp;5?Y zLQM@dNqCQ!vc;7Z+y5?NUpt|m&O|=6EMA3Us3`8CUpuC2I$oH`2B9EWrsu|CD$smM zu{0grU%VJWaqLjnGbPWXxh=9|mcD$M=bw$MAs?T^4cPcNzQS{xgU3YM^bC%QOL3CW z4J#^b^p+5+mqk${kbo7NG#Fz6=>~0<7mcKBnA|(v!CYf7;;zh$r)QgMYt7l&=I2Kv zP#hpY{LoXiz)VdA@Ki*QKZ2uL9_XRk{jwE-nYX_c)&=|tw)8_I*-#K|oswtLha^%Bg>+2#kTgxW`unU&8_2<-?uP-oIG=6 z>G1YzRngGJBa261PKtjxe^j8Ajm?E40>5V+!#42)W!66v%mI#D*Dvb@76~FB zCN&Df+6cv!&c__>GSZ|#L6^&@YZvOCjOH8iRPK8YxqipvE8FHkIO z9bU?nLLg}GG!(_qRe3q)DJUKCgw1Q74YGqw+nyi_jw^~^*DVDkkR_8_L{O6;vo*}m z9OE?|?D2z!t@5B16+Uo^>7u$l%NMqVVAnK+R9I~W*Nt`$3PtlWIzs3e5elXPk^nlp zCE2RtgMQU?RgqJHqtX`UG1DAqxIiMd3;jt_X`NC~bz%@&g5ra^aC}`D4~3BK19uP< zoQ3& z@ixe$z(DYC*mf%|8y6xcn`27U5q}@#G40)26`v=NY4wHI? zq$UoRJBgi*!%-LdjxKlwWpE2z@C(YFKDihqiCl=x5jWGsq*+TbOh4-zgs-O46%e$I zg>(GJ8x?8o{Wvy7PDly~1^zLCw;Y#@gAA|?Mq$YR2n zDq}Pk$%jo^%oDBUj5Y%$nl3i;&FbW?v94W`&8?3AIz!Yq+-Ug|qlH3f#nz7snPz_b zrhd6R;?UI8^Y8Xe&%ckBYD*K%c%f6xG)v0i^rUGPtwl@Uuat}}5(!>c7%jlg;o2#8 zB(}WfrbchHnVOwMGCThC>C-=^kCHcn7c|Y#w86ERW;9{&nxrI#-YtUvhn=<4Wf>*w zs0EEdA~E5Ps_=(-&(Hbp-J)-Pb+lFCC6eOn5`rYY{2nBq zA)D{z$(R845fRkzuYCdBF>q0+M0T;nYJpTLU`h#nXe!!jq|6ZXT9TSaj@d|vOnE=| zOWb>Y-ad+1u{bMQ8PXjU;C13-XfDu60eO+wkT8lRai%c}Edbgzj>90*f4Kuv-0#iE zqm)I}CJBqHW3Dv(@8ChZon909s@T{Bh|YGSGAZ_0Tpl5_BZ>T#XBghvyr&!PTP*O* z=j|}0{PdQb0%ipftFp*Td_ujUD;pQpNU>x`Qh0Shx&p6~uYaAWJg87XCFHe41smQ1 zpOOSpJep6NLRytdt%(3075I<3$15{xy{g73qvu#;?b{MB^AZRc=s4TJs&0^H;9~Cg zb=@Pcag8r%AdM7RZ$`y3?@6HGK@5TYYgIC~TC~!-tExh#C}y$}7__{cvi~<4_(?_^ z5y^4r9kRc}loi)iJDu{Rk5$0+{(G>WD@En(DBu4AWO-qa)v;XzohsIOzA!V}i!0O`7jo#t3SsT2QC^yZNuex!j zbeU;f^x*2ugtdLT8@+4UPIr}N@VlEBJF)R&6M?z*5 zH;F-s1vv6L5X|$dGc&6*ZwHCo;)QoPS*My>`%J1@O}&cnU_AODfF~5=pd=}j!Xwte z%a9yt^9`%3H>?tM2KR>dU!(jMf&K&Rp6pCkQ`JLuLKJ5!hA|;RQ=q)6C^FK|ifgNQ z0A?#YaF3sad+Z`lV#13kSCWJ>7B%F13v@|9bvtD1U&UfcDa;0{ye^~V?gS-}-HkQ6f2}@T&oJLu_ zOp+}Tr3oiC4_h_CL1cqr@CuhH1~fWLG=_Z#O?e7-fNj~Ij00c=nH>nu!j1(lJy>gS zCJTfpJ66&Rknuce5%MxcqJ(PVmkgTp6knxP_*D3f##AX)G)woGIdkp%zL4X?TBb~C zJ+GJuWGwK_y2x+hYtRJh@V}obsS$q>pVBr6Bg#jzs*BtfgxI!YX6K1v^Rlc7n1uXp z#eNfPQkqK@wQNJm3zAy!U}FVr59nphj4qbUxHu-}MTb^0bv!p(>WXfuElWr@q(8MK z8NCtrcEyw>MXvD6q=+Ocx(-(Q3n}Ffa=gdqX+Sf=%kHFi(|s48x`*E5)fyyUp`?^e zjZj2s7NsKPvsocWJ(}eMKD>+Gc9`bG96iC?)LEh~k-)7neL_6aPz91Byu5kAQ;o*R zZkPI?E3UhqE^nqS!weBnA5&!ozQj|*pktGC&jg(qt65E2Z_*M`LhSC!3`yfW?L?4U~F(bZj=TIFyNMv$%8QJJey?-4na8wiScVQYZw#U zhwz(dgEofDd(oK!!L#AbKH*fswM6mAvTe(s!^r>4=0FrJSJ>{0Sov~LgJb(FW|Ov5$qtSOEv%Kxjv)}`e!SXW`IiifSZu7=OC z{ZA(QzKT1aGd0C^hUlZ`XIl)Q!AeX4f=I*4P4EPplPt6+CrOcI6l!B|!%2B(0X)Ge za&ACiuWzSpxDV$k*|wJs!`(Ros0POpgkVz_1eHQkIGu6E;4am!1wV;GaKUKrGi6^% zDUKp6n%TF=@C^q;L@Bv?M>5)zTUBbYb2O#EN~JvHq2msNeBih;!=T>HUCG_bJ;A-1 z`zXf^7)=jmLdn&Heg?7Qkxwc~9$JSSW;_&fH!0;C8nVr5SRI`6K4F9Z^7kamD&YXl zBm7RXrq^8$GY`Rxk;om+lLW=XYO+$sB#GaZPAa!Yh^@dqGo^6~k4I zH^BI}olu7+ld?etH1{jWAOR-sh6a)07tMrU9Gf5hf<PV2|II)YyTZB6yPFtM)EmQ3N;e-L{C{jv`(jnu@B|M@&sMw%;5Y zx)++p-k)1(o01V#bv;$mDX(Y)p?4`&!50!HLGh(Pv{P_=1a<2$w*1d@6L||a z1-%d>c5$_dlYxYOaRZ;~fXUA&_TwZDE3?A10u8acu_=QYN~JKja@}M)U;d@IR*tT% zY$K!d*X7I8g)yV^rMLOc%7!~`y5r!H<9~KVe|LlYOE$arx^k`j+Q_?ghoKcLOM2Idg^d^F)J z73)25fVJgvHAz5=#dTzc=CCLM^ab=Tk)B$6e(ia(@xlJDZ3S~Ve@U;px#zF_b9G^% zI$4=1zS#;}kM7?6Xlt5GKm8u^rkDEP_(uO5r*?$10v+wdt=#nVbiRF?9xbn|EEmYu zO~FAHr$7ClU@wWRueTGgjJJ@ODj_EF2UBE;pGGoIguk+(drLCHsxtOO^0j zYu{L(kuJylJXxZaC)&PvQuVimp|Qc4X?c;GzLPxD%CG${;=7TVd~59k$}411lSI*T zK+Ji<%f$RO`N%9f?L~8=?%WDC`RSjXJ`H}ztKnTQaMyD0cGCN7gq-a68r6mrW7Hj)p&HXO-8SR=>Bs9|8%TtsGfhl( zhA)v>J~MFwPt}~1FomemPf~=iZUAi{Oqq-e5`)&V5?h~9#C1E8ky@c4=(buA0?`yykq>N7 z@4kKup~v34EK1VTA0ZFkse#^K0Xxy3X^3)^7G(M_nxj*Js?;>{BvZ^)sN@70UZcbp zMAHqjJb$gPE51l<&-5aqe?S1og6OY*Jy`AfQ%~t=nt#|J#CZI1(5Hr==qj&J*$`tH zd2cYoizpd4svz&0pvlZm)m2|15`pI-@#$jq`bKMcgP`ySNn5a-SS7LmmW-(G4tZWU zFE_A?qlv#@q!|rwxynMc-E}-31e~2D2#^3PBJvFS{A;IhN;ZycbT>+5<3?i6xv*fR zCgEv?@np&(&z#u`rfa9Gqa)3W{%5s0vNQH=(XoQSwv!r{^>L|X?f_z$ugCJhR~Rr3 zQkXz9Yj+B?GaZ5b*KJpt7}}ba;{xB686_!9&^+wR77ylk6)n?&C4fUnn=mhtmzeVA z*+m6K4 zj4b5?ACRFLOEQR1F$-d6MJn4OJq)ILR#4J@Bvv}^7|0$$u7~p7YCgn#$)94WJ!79D z)ICah(ZOsH-WA1%t=L5$N0wF1kU#W6+0TfC$OXOh_2-k6*C?MCRNs*tbZ{alyCv|FHhlse5jJ`M0Q2ZxYFrtn?6{XZ10%vRI06BwK_488)A<9 z{zSDhIa#UpTGdJiRt(3sPScl>hd|aH<*w)M;$F?Y0c6QgSkIGWARRSvH5toE$S^Ie zRYHot0%2>X2=uK!W1f%VNrY|y*`Xjt2}t_^`qZkL4&C_W)=yg?R6;G~YI zilJ|-<2`V_?6IPIYr1e1Do(W2A2PT7p=%FNxZJB;2YXtcIxRWuh&)A z)ZPIP!2rvYC`P&@i#cyZ;*GztUEUJ?Im6)v$7l<@9tuKLz|8p#G8P}b1B`1S?bN99 zCvL_NRjT;Bpz{W}wJ-~oYvxTWqM&cKk)TC))G3(Z1;5AhdV~RWu`CmX{!ov7Go@Rq zb-DhKF6nmN_rXTajHH7w)~m5K<5`|>nz|wtC0({EB7e2*KdMx{qEl8xenho5!q-)+ zp&nZ!iX}&u;h8#^!csvx7gJfl7`9vH5@~`cfXrNKapN3 z-!6Pm==b<(>FTS@+rZ0Od-==^S(xIdz`nK3#%ezQbcf}+e1m)(`g(@3qn=X>j2v~t zLhmI)jz*iRm-n#7yLWkYQ)Kq@qf1MpexvZ@fofw6jKQ%+^*~%)I=IA&b0jW0{dqb{ zzQRp%_i`U426-!a7g#in0mB52`w7&8%!u$2zXs3Mf&b{;*rxFNRVhMd5Y!M9BU z#0=}qOtXQbL4^fG+j1LI?x!X6(y+up7<8t)%#;|$)8RA>trycbFf%%CCrKR))d+sU z3zGXW)3ZtK{xn0|#$77aXb`ZtL8IA54Nz$!t`5czuu=pM*+lGN*d83kp+0YS;$i(m zgc&kX2!g93!xA%8oBcXsFyk%^G!8MAnvG;EXRw|>GBlTP&2$3DjAPkgWc9IY%J{VU z_`EeSj5*kvqY1UM7dJMICP8>@&H)%yjl@R7>D7k zCEKb2u3Ao|)Sy(;i@F2uR!KKO*L;V1Sz8BRkJi)KfY6LeDy>Y0rv}Lt!9FKW3rCE= zl9zZ>2GN7`>?UOdrdWv_e~*&!onzI4hb4b1ab+XWO}mBsPuaRg;<$tZJS8MRqtfq} zbXm1iWkOO}k+_*cTPA7(#_M=+5~T6AMTAdMz(paBBKSlS@Tv(_bY53gKLz%iY4hN_ z$OMeF*fGEsGL5y@N>1!*qU=f)363c{yeME|74Iq;U*d`687|xhqOtH^jL@_SC7KGZ zkZefQr=hL|CCLG+NCIPt@VY=s2AKQkgG#nz>uPKmepU=Cn&6iT367Jig5Mzfp`_eT z;EEJ-X~8pmlg*ROfUZjDT z$Y2U9jt_Sgm^fgkl}!!oNhPaG68(^_5zz}B{r|G|CSa0WSD9$sdn4|ReP43Vtjx;H z+AFiNGPAn7x~jT*k=(8BmRfsjYweP?Ses=VZ|xP!*g|+2zyr2qFksALFvD2jMPR|R z84Si?d+@VCn2&8>z%alwi>v3H8(FQE@Vw#8_o^}@B4f+QhrJTD~fL7mo4LM5Tf2A@(!KTM-5hE5O&pV1hCh5^y4^Pr>RjLIQ>i zMNHxheral}%!d17ThN}%u&)aCHr#S1EVw11ZgCRi_?sY1$yxAU5V3Esa#T4Db{A4x z$Q&kFE{jNx&qGpncQ?`(Zj|D&eL=>-Fj(z$Up&t6y46*8(TfXN>@Im*VKs`N-Rf^# zU3HdRC$_T$wr)k0NcRmlB8Q$IMu?nJr&HQFi&L`p%_QKu(J5wKL)ZMhZWKFCYv>Z3FW8`aX8g&>Ij6`|!L-pSom1p_V5+FH9`rfzu?tES{F6%*B|~3J%ai%KgIGrF z$F1>zcN1j&Tw+6+=Y>TAU^R`UA&|r?u)i#>&%iYOt$OBS87`$RW1O8djn$_0oIk6l2S9C^2^DSGVFum1*{%cu|X+SdvWi8mCn9OVB zC+hX*K0LO)*kC3#Td7@Gu7Amg1{eFLSq_S`(?@G*olVA9pauMj^h=tUD~0SO`1oWl z`LMqtT`E}s*#c<@@|X2n!@<=@-?p(qem5y@zjS?YX(g~0YvUW%&y22nbZhPMuikW1 z^XSp<-v4J?k6t%Avwp+4wrB;F%U0H3x?N1d%Xj|hrd^z%yvEp35~YpoIMcf*I#_$N z3t8O`I^FET()QKPGFf6^1Jy_!JP(hI#^49LG^x=6itc4_K>E@f<|11Gu}x+@OV~mc zU|~L-dLCFwGkf>DJ6})g^@LoL)L#;shM5Jfs$p6g5nemQXH?-v3c9-gVIejx}7Kff~^?CI50ayqTocfK`!EQ)kXV=4#lxJV;C zc3D|3oty^y)-qKO#2}-Q2sAS>W30)#AYaZzyxu5}c0mIhMZ5U5Se*8a>)-gs>%Z~V z)5BxOUV6;SP8G?MZ~o73c}~6V4LeW5nq$MM%CXp<_#~euPe`1H82W2#h%xke5`bfb z47o5LlE)wKo%!8QeliTa@TQv{B#n3c)a!ngD(nin^Ru_XIm~naa_$f5*%$b&i%MS^ zDtoXNrHvHM6EuNcwi^xAYgZOmfzqEsCUZo7}j)z5T@YX?T;X9ldyP z_QQ|fzgEsT`B)|KRIm%%S~S07!}ce(?d{*&_kH{Kf8V}+7q7$LZJ-*K$gOv8Po3^s zg}te3mZzB-?~{M9$NBi%bL1)T5^-$kC74w-oRVWCm~MkTw#ITElgY?QjY)E8E(Y+E z#?zB*L4ml8Sd`M0<`;SHiJgyLdokll7BjV17ZK5flLqtydZ(;uyz+PdKs6NSohm}NHeIkCLR%9?Y*md^Gh?`4(4PM<@<$R!w5Uug3(9{|eqH%} z<!Q<`CU`RZEaG+^L*jX2 z6h-1!9OK0}>x%R`#+{r)9gl`4K=zP=O}MF2!*?zIIW6W+2^4|t2cLEf17xE19~{$k z406I6#xJG1JGG^AMs<^^E;9KDX(1VOaq(h8%gpgeg{NSeRec@)h}ZCL3HDgL&@^TC z5v4Q(`+^hd*OO#=Q4p0{Hf07zDYVgCbA}P2QIcwyiR>CSmMZW34RO+{*A;r`h>HwW zr~|H{Z3b2_T)2y%M(^Y^Nh{Sg<6>?nI_LxmHIVh>pdkxo6!KXK1Zn*C& zSMCC%+vJfA){e&E8Y~~Pb)d7E)ONXR=)%%m*AzAqPuO4^6>q3kyizK_U=zL-3$<*c z$7;EP&KP?GFy!OfGp1a}5%vzOE za`-ofe3_S3q<_c690f=4uqv30q4-u5^vF^CeSjH8$Y3pep@z&}zi<;$5| zAXAClO3rSbedfo`o-UPeR@y48tdLK-;N?WJNkHN~_eBH0Z_q-G2 z@;c_Zj0aeHobb9Nqr>tf6kwBTJ+X_92=_83lkLl7JisI1`LJD}q``QQ4YG%B@QxF{ z?_*U%uXTpQx#h#AgYB3Q@0}IPoHFi*8HtgW<$o{k3wX=&7W}~THAyTgBx%My4(s97k3|e0<-kNNdI&Y@k%T88Q!B`Q z0XuNfhi!fM&=a^FbKPNW(&C~wNBJD>^VS^eH=!xZl+j+ZFXwZ#)te)oIjxVd-*W_J zu)fpn4doC=tG9}tjI7XrHN8F#F|5k}VYdlQd71P&NSNGR#fp~ZDlWt74lc;Hj#{<5 z+VA#o4NTTSV+`feYW@)p!*wsNg^}=xy;MRsr)&a@*ZQ~f)-bQ(#o^uNB;Om0eVbS* z^qmip^L%h*C?k9F3%{VMsj9w1PT#jg{$Kti91xZN`)<$Y6T}`mfqP~MtgO-;g8BR& z`984uw)G2unX%gPfBCnBS!39Vg* zNjIw(?BK@rnIv6UNRyd*{JZKZW2Mo^CwcJ77ZdcKwXBfN%g0+*vRS$0KbQm19Cu3M;t`GLoKmUv20a z?Uws=uhLIq@>;HyU-z-s?Y(v1>aqduj2j&HbaKWU*6#BRx7BXf`d23L51K}Q&$X|A z{k8jU-CNW+s}!bIJzdt?KT9tLS$wbZ3gu0^*rG#lq$QxLERR8h2Kr?(8BmZJ@^YQb z_FrNcgcz?3Bz=&}B!H1fB%-RUKb3fda7tK5F;+Mp@$=bZs}pEKw07wzeClD_e)y?S z11Bwb^DUM=yrO@258n6HjT0Nf5+U!G={+)2z-~Her@a20vH$#y?BDiY=QUKl%Qp(Ki&wol zx=W?6(T_fKu(t@t(T5#VfGHg}Rc>geg*7V3c!V4lsjOniDNWD>dNMrI&wp9=WZ zw~}8`ddenhbOeA)b27;xvP^(B!oeW0%vUEr7&Zn}U}XQ!FFaNhpaUZE*x>{H%OZ;f*_BIcTa#xbYcz7dUTL#Iq)myb zC}Ul6`Hz0^M|QqUMwjjU#?<9MblF=-dFM~E$H@;rzVo+_qy9(y#y^+i3I;sm2#)S* zZG+(R)G$uf9g}fJ4u6dlc7BGCopUMqv`gIe0|$0~^K0v0{`yltb51#@SOxM+g|C=1 zW^-$6=ks4*ml#2xC0k%u%qf@2+_W4M3EBYis>-oM39=?JR;h&P;owybWtWy{;VQ_2 z9)4T~H|haOIn}8}nd91lb}}g>wT1Z_QNwU*X6m=-L8dk|H#113LL@RbWluW;L4*i3jB9o=rJhz_3yX7EW24_27Qyq#7LxLw*^%ei2anK2ohPed;JXV|#&yHe zbiLe|^GqScrAnw!xL>b>_R>)nm6OU<%5BQufoKm%i}WOC<B)4+v+lSH_a;v6I2iN33-84rA^SiLXj?CdWEiqR0h_m6j_q znj=$6MuTyU=JmQckT@m+Apy@w3QKvL$E&0MXo!&)X`>*(Gj3>gC+5m%0RC$)mVkJe zbTPDR3`>Iy&C$Tc=i;l(v{f+^FBfKJvgITysHz1PRmw29;W(a85%(d`n3elj%rl9t zhZWl{XJ8#AI$=z0K@$$(%D~Ol)U0gVPG-XHri+H2ty_q(i0Bz;xA>mp2*hzqW|Dv+ z5{B#e8rUngV>lM#DykYnlaZajP&ME7IQYdZNOZ%owZ3ZTHX2wAb}5F0YFEsv@N51j2#5Yw~_yb(5-H-vys&Oxn3r4Cq!buDOI(Fn9gqVi5DauK_f!Oznf z6%(UV_dK42Gr}So+wW>*=!BdbcWh)D=h35)t!3XEI;O#o=tOhZ!9TLZ>^nHvn2zf@ zZXbTHYQjA>R2rJK>btR!vx8U%L)3@`p>-X}C{4-?P7%6TkEwK`%qKF-r|3}OMz8fmxYh^eF1^G;wEOA{9hmt5M! z5JnzW$JD-jNt&oAk0xaed9C(fWipUGj`_rplf|(j!IY@gu86@8$2j-O7hSDg3aSD3 z>UaNG_KTSZa)KZf2)Bjw;&3R9_y~C+Oh$8B9gP;j2^0)joa9&=`Xn01Kp|*WSPdN> zTEB30=0fkZg-#HTLJBo_ysDU=6^=#H`Ng>uI;CdVOp>cgcuM$JHKM7836CCn zkZ)LUerRu@3D5ucA9>^uSUJvqX!mT7dFTiwDN!qXikAu;=exA%5Yr*{+bn2~+!sjW zfdsKC^ikBXTn%X^u(kulfVPFHw7SkLs$oec$WZ9QhUQ6v42t`VINdD9@BJ?={$_46VO{RY$Uq& zfF_k$qN+hM9g%0kddzknXEWt;M{JryQqIeo#kq~?DefDlQM=;e6QnkC z)8f*puyf|9K3;5bwQf}p6#e7tcg_{}_UCLHQ&}f_g8GQFhIe>OKpQIte!;{w9 z@OfAO3Db=HnUgf+&IHPCxcYpkJ|@vd2X=}llM?6>RK66^Mccu8+`NohqBfo0oPGovfbg|*kt zRN<)EJul#r94d#={(rtEc(^K>7*$Dj*~xdEEjgAZOS#Xljq;?$-Mqv>g!Fuqq^uu& z=k2#We*3==gFM7k3CzoDx@GzjJx5%lg6@YEI_S70U7lZGpZ`0YylVB@!Qk4}OCNlY zJaGFvZ@>MW-=qGBNfHDedJ_sz-K;Upk>L*t;)5WFicM(9LQg?LsbqC>7MSeZwtCIo z*Q`GHfd{dTeCym-$s5QAWfT=HV(A@I8HL1W&pz5Kw;OSs)P>_(TgO0~q zMCjwAw_2oZ3y{g{iEe^O)r4|R$M#L4%kO==PLxc^pnd%Xc^3ToTa|~Er?rng42Fab}Jdthk<1o<- z^qM9M^fMWXl_}tu#mb26M1xU^d%_FZa*#M@lqM@9Sx(fIDc{*h=7C`*SzZu~`Vr|P zu<8iUhu|s#OnN>^o=as;xl0o)X+m!T2Y3+_B~8Gs!a{eKcH?I5;A2W%7bF@Ek)>kL z%Tw^>dBJVyj|cE+ybf2>g5%c7P#XQ<8pV^^r)N1lI$aJ#xY`K$t(*@ zQ_B#l1suA;h)LW6(GeZQ{_Kob`j~8pt_e(gy&;IHPlsSqOb~^6 z;!>GIFRQF7G+9F2HTWjDCJjgWHW)aGX~H{M-qa{w^`J&ZAV^G|@0^xWmtpz{GndK~ z3~)h;uB8h(I7(@Q8D?munpJJzSrdWhsu9Hm2OZ3@0L=oi^JkS+Lk&Ts5`??Ps3I5- z>>gK*=RjM7pteNQHv(_OYkr|bf}oWwjzqYiQ6U-*HGGp|m9Z|g%8~j(A90J2Rz49S zW-^sS%|*B}jrSyNdpfAPSI#*Vycv& zi>A6JcrKPfMH$>b)25!MCc$Eg1M+ANZF)vvff=YG4OFIiK`3Tk(@QMsn%s5?MPK4g zdNU!CRnhVos$VQQyU|~@<5cCELA@gmdv3ZItFGXsYFvmb!t1J~%^O!7*9PZN7U~%S zL<@-jskT`NONLR0iv>F?^`lw1@v6|^_q~mRy+nj>WsK=As9BIgAw&5L_8hSr8iGt~ zRF`>cU}6UQMC!(-=MaB6D1n{I5&~kEQ%U1x*ecN-A9_7nr)rcs&;W%r>omc6V)91H zRNW+q&?h*vI*mv*FeQPUwiApT>$7wj&QvyA94tAb?vk=5;p8;aFjmDS(;Hov+mlZLiE=aOTb}-^N z_DC*II^*!4iF>-N0)jyfx`?JfV)`Ocz9?&_xXmBvJJOlj#)Y-=P z=8p_MW(>#2erkE%)8fvN#aRZ{Z)64@52n6hnq=uGn{_R=JR31cR86zM@i6>N^6n9w z_ukK5y|%IQ1K6H)@N~g4wpA-ElF?gTfg^vOG(^qH0qUN1;mJH zXu1|A%|;J-N>!nQe^ZL*Uue@;cBAAksQ&-|e61Il{m=gUula>c3jf~A#~QnHp9Npx z<4QqUQVuEC%bJr%5iuRL8AcC4QLKRKn?w<$j_;*?P+>9JlUUq5>cZMA$NtBl(in4J zHb~me(`vdhO}&eW?PD2d60%k1?HY8X7)az=u$sqP>-`hUU1sQ{zwh9HOfyj}B;{H1 zT{TLU3!bHiMflB&o8Tet{NEN^^7Jkx30Q-4sRUa|P$UmUl}co3n|PuG&oWD$^fSWP zcd>ip%P$t|5xh{k22GGHfh_WV+g|(Deh9Wbg>-d{^jB>fBBA8(#hr?}mM&Bd?hD zS672p5rp_u?*$moD~h6B5FEiK!*ZCIT`=+eBv0;HmPz$EDnOpNAZO}p!u0eg(M;b6 z({*zSd~dx!gY3Q?d!aGeNwx{HWCa#4MgP$VY>}mNmsrHMYUbu%vuZjt+>$w0e@Na4 zc4}Qwq9jLB@^Yj(Xsmhi99*ePAbI!Y>5&vvz_IH*78N$a2WA@6-JqE@X32?*9&M;u zGz{-~I2^?pP2PUV+}v`Tl(Xq{PGU(2uq*!w{1(KEzFv7yd4=*C<&DZ)mG8m$QO*RRHvo@jIL3sM7;aZ@5U2gPir6~C-l*Rj4u-uA(wEyY%pMQo zey@$JR&dHqk_@~3P9IL#gZVn`50^=>NxL4=hOm7MACnwRdJLb*w}^U!`phJ>`zu(% zNNxsobOskL#mO0}!5Tt#UU}JNm+H->spac&^>Xv+m+!mu`YVXO_@<98HJ4{$>ou1( zm&qlB+^@3X-5PxvAuof2k4^&OWBHPQzqNGt?n+AK%3GF}m)*Ghxw!PZ*RM{teWe`l zd`>;sTpITK*OiW4|Mlz2(RJmkmX?;jf9blYjCD)9HI_xC4f67oa*OgxL{GqMjb&L2 zJ4xWE=ahG?3o<#xWVy4O;xS42$Z0&EpXX^G|0cdCvsZE4UQ~!oTmy~cGf z{vt*e=2TVA7`q5x>u@$gVR6qooIL-xaKqKlpQ!gkqZ21a{i8YqI}tPF)yhKHm9ksm zAp2epEptw}Sk`358D=;Q+emwm7rb{cTPi`!J>Jbzcrr|!M(`1gS`OuapR0Bd{$PN) z-zUoULZL|h)Uztfl~SqOEhe?~x%Qe~D(rmq_*|-cf<^D`qM>?0;+DN)gwruOQaAGEAIZJ(a|H2Dkk^6H{G<^AY12@Y31DY*Pm0`L^->2y>f2) zoH8C01!mzSZ)yw9hZ(io$|IO(st!OGNX|HxU`lrC5=_SyO>p&a%ww6%p+L`CP06h+ zCiAf*0vuyVPd1O70W3$t%7cA5X|pTiCy!zZg(^b@Fj2tfaKVU@MH7H}BZ#1?VjmIqw#J}tJ%QNxd;)@6I zOu6rS3x=hcT{9?@E6atsi{`G|DlAvZCC>zz>cW%wJ8~AshoaSGG8|;%K>`Xgcs?zR zwb=P2vF^oU@g4Ww^wutBSav?uRqyp)PxQeP1A~$kLyYvl{%gIhik)u?wXN$NReWvd zuSoo~ZEWcJhGFmK+JBbLgD!WKsxprV0U&{x`@?YNDsRr&+`AzR%cJ!sUJvDwqr|HhQcDZp&pT2ZP z*WuNZQ@KFOzxXy+eBYgSexGo6o}PW{K0n(2z>SsdC|Nd0ZPxBDJ~ZFCvNhLm$o&@{ zmoL1Sb9lmqDyyjBEhh7?eC028U*yTJeB~=4yrq8oTR844SZH8BLci_Eel3y-DgqXQ z;o2d2W?^A&p4Fyn#YTlKEReImSFSGr` z$A#zo7h=WR@Qq4)AhDLZgJCw-TIYxTT0_w#XYNf7oLbm^aO&Q>?%Mg*F$d1>9DC{m zThpW3f$`b9@4mDbA*QhqY)#~IZd)+T-kaZEEN*;!qflB{5F1zBdgUfxSon(3+AGwY2pr6w zXH`*3E0(2BLx0oc2rl_B*oCX$^YTtdJ(?J1{MlNqWInZcq#Xp)7cD+zHZ-1PoG)fX z96l__;mVyAviFJ(>0G%F7C$xP6L9P}xUh^5p&!~w01i6C6*?2IRyD`r;6YDtkDrA$ z^{dK0<)w;}V%jT?MM>1oJfjn{VWG>wn$h|G1AP%Tz{i~BLYh2dTq|`kqCu|=S3#og za*oJBPMI^4Yu5i38ylwXIg~9k_B3T5XZTu43R=dirKr%0qNm{%$4|epw{Q#3z>O`o z#^4?o!*VlTn7N8GR#1srtn|{^rOvw6Mr3&8%b+i%>X#Ty;l;kBlA7+gU*!CY<+@$5 zvM;69Jr=yuFJ;y}pRY|F($qMpBA7l%YqJnn>RXJdkykPe&I^(oLQ%Hp7HKFbQhd-+{$a#D0B_%BUzG3 z1uko?2XT$ag6?6yF(*gP)1*PyAUL8kyJe`=oFWuyUS&Gf^DyYrtxE(rJn#i= z+)wU?Sq1ya2Ehz$97yaYDIV6$;0>o;>0-f57w*qprE*ztj9igYHkFdq(xE=-9WE8; z3Zygq;nMJuQK?%lbxR~|WaaLtLp~UCh8Si#cxII_s&SGLBa1jQKxLVU&MU#JlM($l zOXLV*5^D$_scXE{DC44G9nzYdPtEc+=j}f)6*o)OkCot0ld1W{&oUpbqSQZhs1Fx0 z?37BKAx_JkPN`h-)6|EhTWlmJBZP^7lpMrnwrOOW`8wSv1;=j?i-ZpzIy59z+jVVH zH3c_F(e^x>6b-J=xu)rwr+m}&t-|T=zEN`Ycv9XyL7tYZ!zaLRxKX)7xgR{#*MZ;g zxbh#A_bWf9d=zx-UQ)wSUNy}?@N`!Z~|1P?xKXhXrBK6 zw0<}5WVCV(|JqcxyOH-2By=)lX-NOy9TjuP2AS-tgr1cE7*K16s*SFpSWFkNquFfc4tWKm68v-+Sg|vq$zMME75vyE^_{mhzVr{9wLkOqCCk*E)p4I3cbE5Ge6%-J zt4;ldRV)>~J8O0=;3a-l*|xKaX&SZS!i0b7Il2Zq*Hi||eTXQMvy&l;6P5(Zydnw4 zHblD7j*vl!3CrqAo{#`7o$jL>+F*Bf_5G%^gbu*VF{0_Opk;-At%!Kzhg07Z}}ykcqERk}q; z<(8x#Ao(BsmMpdGo#&j;(6Sn=+v)7(%P-McbR%Kmg8Rv#=Yg-|%&c42?OkmLmJskf zF0MO~okS`*WqCsNG7nQ+BHbW{rbfp?(|{9wHG-yRIF6=%H8gi^pWgs~?HA#Gxs$t< zV=|Cn5K!gbOD?$=-#g0bZ^P0L+;`v38^~YnOfc0$@M(Sqe40>cD#JYgSh!3g&`Dj( z@&w@=aFRxO+Q?{}mo#@rH9{U*KP8gxj9WO;xct>uU4FT{e`EQ+W0&5)yt(!I?ZxRm zB`qnpOXc=wR^vKW^F5;=w|J{JTxlC}4*&8`K( zW&;*>zH#mAPM?0=wZD|aMnf+Y^eKbTIC0=(RZkM5YLGZl?T|!p3d3FUd;U#iZA|9Y zU}d=JzKg*li-4J{6P>}e63rnv>|<%*^7F^2 zj?B^s%1Af?ll3cL4LfBjW9FzBoli2o8s)Go5gW_5V-j{uu1qCzVW@ z0oz|`yUe3Q31H$OeiV(Fe@pMh`-%kG%E0`1}k(I ziU;nwtgDkEUE(jHJ&%F0N!}9pqPuw_DB{V-JH z59?t&t#H@n(}i~cUqGP0-@}9zxr4Q|UQZu_tr}RX$d~!8&814oo$dIZ=XdT%8?)u! z&W;_}9Jc>NSP%Nu;%Ho~I7IwEkO;`sMGyqR<&-SpO_t z5}0StFYhO?jogf+J~_3|3h|A#xcWZRjjJD>%wZLIa(4&h{`s)slWOdm@2kfCWWENg zUc^Or<%L{y2-YejlF(p9Ae5~9n2+v_c0ckwCwtU6zhWYU@hHp%$>$Rg?jKQ&*MO(Z zT-8|j4Mufm=;*A5C0LXcRFid?MyrHbOgAbH;=Ht=Z|e0(P)3V_X-n5}T4%a?z)*w9 z=!pxrz77IO9AO9%#fFBujoD;jvRPFH50A|In##&T)ecjkcP`*6@Ido!L2HvdU)qcD z(el*Kmb4+!#jEEznjIuiA5CBypXXi#Z!eW7#d+;fX95?MFOjWhhR2Q#aqo%2n$S(tY_#f4-}UqviwubCUT>SGL)@3UZcpv~RJ`mna>jz?fQ zrkt%zlE;>bHkK|dGBBW++aRnnB*kB^d}5}gS(?9n=%MX*-EnwtM(REDYd1_6Tej); znu~uBzxCCfpWJiH$Pz)<2UlbJ;e&U)t95DHX_m`oHZ|Ms>8i7J`8_*t+Bkw^2ISn& z(oOO^VBaBD$Z_R1MVa2^^zC42esUgjPu7Q!R$jO^o^X##Bxs&Hc^6Kz36(E9kFk+r zbpZULO@xvqZY4H6=qaaR?i+6WE!Q@6{otnz-nfF?I68XboU+s$ zpKb*0mQi)r3P!oAW_&GSX*EvPE2KDI*UD3~dTTyea$j>%VZ1nB8KnD%mj(y7uO-c; z?t)fn)~abG+t&(P+hHN>SG-EYX+r1d7^$&rdCsi+Lww7;c#k{!vU*1UsdO=2iLSOj zRNXF3#*@E5z5sn+Q)1}*hZH3eLv$y?=38++Sx8|o@8&+TdS=FFJ@ zQs3SC8NR8+_x;6PGMrvAO76b|DurV)iJSxG=$#?;>nIQ+wCa`k`BHdF+

hI~?`i@&~Ju+UXUxI#Ej+uV$+}Fuxz{fp~`JU~RKOa~YdCd^s)-LMo z4e0yb$s&Qp4n`1D#7{>cjT%MV@fwmRWH?6(5%MX`br*fras86&-{>)`qamm};AgzFgy#RsRMLjuWn9Qh(7c8;-kFUo=DSUv8}5@bj?UTZWTpp0nIo zG9#C1uG0&NYYNXcsdqXcj)fd(-m+W)XIie~0a(-^mOag>mNoCR$C$IHak?&_je72D zY>ANh z&U7R^-vx`F6y~M~F}!Bh36Z4Rbg0C*{}lNIc@}y-X00NTm)PD-8yXN~jsaDJ5YQ{3hUIA75Ck6*?4H0K`>{9?|p zht*@wd6)AK!C@a1n(W)>WXwk>4P`~yxBycebehPCy_d-_8)cLFO)l9Yb~zinyZTy6 zg24)T$Mm4p8eDU5`99X4ax1CF_THRTFCyE^^I`F|`l;^}y? z-XJr0*!0Ho!IM)9W>|Eyd%7;YeR;b!{JYgQHT6!%*NH)!zrVQ$mMpzZa`KQKYHgSFb690C$U1X*0&WK^6|{?2 zN2^0J@W-PMuYMOITogX}biNZqxRr!c2-bZSH9_2S63 zB=|_N7^a6{Hz~q5pnzm_g{ug0F5vB0$gZSW4#T=QmFQt4iUzoOOy@)}WWz&$i%XWH zD*9$rGRqLe?xVZ)_v(DR8dp7{`-}uJ6<8Vqz8eC}O7=l?3%RW3=a}-J*XXO7ge3*r zDvF95Ltfbv8wE;h3$|bN9YUSFXkP<+Qy`0)#<0?!ed~lB8VI4SI)YGYfjNn_`kJhN z(Wp@>8V#ShHZi&}FHn8XL=FHm#~{ErvytXjhu<+x+#1757@=FS#*okxj>DAJ>3Ka} z6sG)j%+V3O1HE5HOqrL<7lNvR-_Bu=={eojs)3vOz6BS}Rfp@86sNce#}_RNE{+5T)a8mj5pkn2bSd*Fipmr~RB-?5ceDN9L=;dtcu=!Rn}iE7PNgN*Tss4JV_&m(`cfjmnSfF z5n)Bfdu5hJhM+h(`dTu?1CgosJFJq>Ef~6!VQ`79)*Q~k`_IC;DLj!Y1_X2@xjvY+aHC=xN-DaqQa&-sCu*<2$;?9`(Xn zA_hb4-8VA=C*52Gi0nC2NYqMp&#H}zHBWl^QVBIfE{eIJ%b$j$v%Nx}(w5N#w^X2`DuUsl_z34oHmonLMGm-NiLe+pW>_TGjTi}z`P@`C)i znSbjghqBVXiMVbT0@Sop@_rXA@trs0^gRz;#I+N5ozQL+hXlNCyz_4R z>b2D)M^i8T)A4gLAh1AM|l}WmAiv3 z5*b0$LX=5p!}%05MkeoU^4?w6M&kh&7*50hWOst|$U5CAF4$zPCO>u0?>YI3-t@uci1#rw*3^A3jLC4wr%^Ut{5Ky&Kj)E_EhR1kN7&mns3pGtk7AsPdQRu%q zVz~K~#VMtQ7)LpG9uK0h7BUJ)hQ7-{y!y=;zS2+;F^d{ZhaQ@b$LBSIhVokFEy_EU zA5=c1{2Z}J1uRr-WMDb;V~vZf`)}SY0k=(zzvFwj3f%&3eD)pRpl(*Ou}Htu8x#(j zIT_!Lq)zNLtd7m(7|W1%FIc{CeFkEkw^G^XJ9&XV{sxJd082|`ve<7)4!yII4q|&<|^v(GOP20u%F#y4`HsezEGueiWy| zO5r)AsU^}l@}i(p^quLZtuM~&Y%rkXHOlwy- znq|*hnsMz>-!}HG8GL;&r)z6uaP-c1-F4TyPG0-^Yp;F%YgDYrW#;T;9!=(-2Vrbz zAy@>4N;xrvh87be2G(>KDj^}|4BQyvGuz@6$wn=#bulT{yl$wLt=+>5jxcT8MxZtl z{)i{!fPXQLvnUSg<ofrk|^TmzlZH(}R6SIeLm zlZp$PiX%ogall+64l`{beD3H|w}+|NwsmO>iru*5x1`?Lhdyky!Sa+iiGwjIL_}t* z1am#Gu5XD9EcB7^mU_?_K83fDMG-{1D ztcRDKT9LE!%RagCO0YoVM<0!AF8N6!@#t;v_x>4V=>ROQ+m(lvv&v6TDq2O$MU*I) zH9@d4=+>C&7*C&C8lbqU~O~x ztdi+0GGxhluXfvXYxT-T!OSY6_L2oPSe)&7vtWyx!AzCt>Y@5pjg!DhgV27PL+dKE zjQNzzv{f*?=Wv*3nTx}#obSEFGAnMdnHC}+{bQmf0l3awAhrcoA2~riGBnflDZyt zY)d~W1k+9;gRiQYLDsrM@CMvqx;C|doL{RQ6-7BT`h5qTV;>9>O=|{GAt?qGuDKOc zSe`K5z%(dk&>BUIi`kCh2d1LDxc=b9_LGK{kE8Qi5o?LEU8-sv(k+TJ2hp5Ob9sPx_~LQfb*8Z_oy@2)j)`~s)M zV{dt*=&oLMO38V&l{55>&@2~}E0x!S9%^=$=@P{Tw^CygN^-PGH&n@iL1UNUwJ+1o zciil%t?o)%rzsY*s}hxx%Y!772JAMt+sjlnn;@(~zT=q4J%3H^XvR}0ltKKqHD7?7ZEFa%GG*c!VMik{&Um_b zfKW`KL%5S;j$rH<(Gd()Qy(CzsSDgA{9kT;GT#i_`FGs@!kk%O*;Y=0Po;zsphu4D zgX0H%Q4%ueypOpBCBZIaNLvPdk~r(tgp8|4FRpHqzSw!#>JQ)7ojEa{u4^j}i@&H+ zBB1?2gJnFb7ZaA>jU%KJI zeEU=yP2z5UDDTa(vR8Q{^au~fs&m%i)-sM?qkX?jhMSW5SP~NtKz8Tj*kG^7sADIu z;7a~I2WLonEcZ>sWMBz%cI0U{X_q`xrHNG)Mv{OLA?zsDMa_&ExOTBs(e*g8VYQV+ zLR4|}E4-55T%MXbvpiP2@yHFj-Nc!5(&@J6j^mCt8u4y2^t|?TX3yCfS1qOm1x}`y zHx}A^bw^N*1{#k+fY$Nb4839}tXgG>UDibyV@@G_n{Je?1W^VPc@eQ?Y{M64Q&Y=R zfji@XrR968*$l_8OIHG~)k)o1FYZpe{%YLit4o~nh^rxixufsx%x^5WL?O_at#ai; zu3#ZYoVS#t7i3a{{l<8-GR6VpG|F-suwAzwA*facV=1*VxY<(Q5!FrkOh8FKU zaBqc7&+q)LL+CI6szEOLo1>$!)@TKOf$S?T*1=#Rl>F_xZeoVP{sbmj`4aass zL|NrC^J(g;mDbLaMzr~=6*KNvV?v7c**9L@u%-=9<5R9@FW*$`5pwE1_g%Rd35^*m z7e%vvvr)ATP&Iw^K(G!bVmSc!Cv2X2<&5Ljw$2i>V$`VvR;TS)lUkK$lpXLpY{aV{ zBL}U-4hdSrK*mq^ksrKz>&&q$w@!_#ot0~vYanh0?4Wsc&PC7iugP@2zK2GuxVT5B_-6Rq=sFl~R;7|}8h~ao4 z5ht@|YY2TCy8a*=j0f?E7`5sS#&``ZQ_Phem-k0~&Z938!e} z6*W@`4U5rTzohG=lI{VsL({C5UyUl$+aEq2x8sjwQAed#A$DS`nB1Hdv(N#(7I8y6 zS|G9U_`?ssw-n_V^nXOR$Wzc;J;};;NV!ybsqz{eSH~f;3~ostk$rJtn1+}N*rt)o zN5U@PozAg5CMYrpl!VysgCQnzWHLts#3M2}S0{HAcEV(F48dpktXhebon)z6C>)P7 zZj106AnhAc+CK-yFQru5^M3(?;hzhcrmnI>Hj z?UTBQmH$m$#CIr*;Ny5w7Lmw-T@?De6%oVEZb8KOc@jR1!H%&820JS>B#`{Ddq)n@ zwxJK_-;l@2dHxlXuawo0X+G~nQv^1bVsA5GZmV&x?ctwHW)d{ z_QNOn@>E9KY$*Xx3Sa3LVMhuA3tk(Pw$*%3m|kWRg@-SO6=Ysu!uOg#jS-M(73!eG73M zQlNPCw17v1m@0_FAStCSqQWk;g-1;e4^;5n5K9IobC`+I!tL6T-R+|{BJU^SF>j%c;t8(9K-pP28&`zSm`&R5JqGh3`6iZ3^wy@88aATJYZ}v9O#bE4Xu68~n1Xsve6XWy zU`Fl6U{q788O!6r62gHEJB|-`L1&20!8pOyV*ND&Y?2Pha$P#k#@mH%inI)_g&}mQ zmxTrDCds<RG>0q?9anm1k7G-Ypz z`sG}{Let7ow+qggbb_!o@EzCpJn!A0y=bQwWx5vhDux%A^JJw5#k!u!Ufr+N`ZeNt zi&?e;LI&KBjX7z>HF!3ykyzFaJQHEwN}4XYjOoVGu5G0)csi{STh`H4$>}LgRO(FU zBA@6o{_nO|PBd!1IZbU)%IwNCiX#v|Q5>gH1fnO7l4HKfv@G#1O;e3Ij`<+M1hj~wvd4?c4vhy=1D`zX$y!?hm zN-q6S{L#Jb_(LXndar%`^>2CIFB=DZ|A5gd6**l?Qz-95X%TFu*Oh*u^lwYQh5MOV zQY=IZl^&vSCcz6(^ld8H%~-`o3pvBR<qE9=%KSg21mfvtB}0FR4}jJSBCKnjO0mR|q!@qhq!;s~zK;AF9RJ^??+^(tWCi+rI+%HT z=;+~kOPb8o!SuYGkuw!B`*d>AH(+6m(Mj3GY`(O}yoHeum?E$CuO*~xGN4lw$`WpGKliSjeq7;ntdW+8YNzQgU2IGZK4 zNCud%1LdSP$u~q79}i7ZrO;GvZ-UOyV29yG&8F~Zs{D84J6`+VBG{RjR$KG5=6tWF zk+NySP_pzYA}G9AWtxml%Wy5kgVY75+(sM5_e{)ZXn`4|gCMblsTnq*(lvE%FhAIC zI}k31>GA5(EV_C zWj=xNfjK)B|A$K403r)R5;BJOPEr=B}ve}yB9NdyLl$gr0k-^k;oOXk7->!IqYl?M> zbwPM(HIRS{?WT|RTU2$N$TtkB>GOUy03pnXvs12BbUxpl>*M}KyRsMu)8@Eat}ZR! zgo!q^0D0L&!i`(IRn`r9)jEvtd>Kiups7I|TNauUAiZ5bkeUf?k8PkkH<{dl=P(@2 z@TIpEn8xglC_C@$V(v|i_^rOC+0P$Bx9EOF4?Rc1kg&r6bf=UFgBe>v^iOymvxpci zQL-`Dq(z3=RMtpO=H%YnzWL3kHx7LBqaU3-{4jZZ?{V_@nKSLZZ<6*Gzo^#k{Bz$V zPm_|X=+3TK?bNY_EXR~KLZ`o*e%>Ztuf*SvmVVY#H8J6C!+eJy!;>0705m%a;j zepN*kdIY%?Sw8MTS0V?DqE^IRA%$AS1)^Qj6DlG_C|-R$5iQmnbF|H3!O_1%2X&}K za)!Xyje^+;A;fAIZK6KS(DEOoI21C>@C}_QH^BbH6EXWJz9M1dM6ogbS{9C(~3BP4zK4i9U{# z->ewIz`(4SaLW?ZsQYfrS+ZrPLJLzvNkvD3H%2{#s!?j2wk|b6d?GN&z~_Ml{wEi> zT}6dkODw(O2NW3|!9FDxBjCvyMbaE_TRf@w2H{Pe;JzOCwM;X?-P4ea8XaR9q|(}O zoe-Q{4IEXtsHeZz2h#fkdmn$-$GQ0!(((wmIKoDDdEcaP!9j*VKlm;HK%x zwqsYzrbTSMW;^9_qH+zx#NnVU>=4-uIaip$$Y~QV>4Ff3Vlbi11a~kDUN#Ln$Am>J zUlHi9BKsw?#wjRBMz_{Y+<^oa*_3)~^^mLE3!V#?aY5!YrrB`>Rv>OM3FPg!HzhJi zY9{UnBL}1>Ws4viC-HYGt(YQ|cAp~b0`Kquxd(BD4lP*n8D~159&ZeefQucwZk%=3yBV>( zENeLP*O}Q-DvUF_$m$J3uJI$VbRG-pS+|=t{I&+uPOH~-_JUy+ zzzhC@&^$62+&g^V@V$c{B}cB_yPA9gfB)|93XX`YLC!D2wZ<&2VYhTe=>w&oE`1C+ zB2vT;ihMfPJ^v6Yhv_uQn-sH~VQw;syN59U>1aH{&@!09ay-I?p@BN9&Rh+Hiu2hy zV7ny+7_pxh;piY4lxqnkuW=;_vT34xTQ&r@a*9(hMQScp=sUm}>h~8X5&7A25LEoF zttYn5fYr@(p}CI5Svy1<95t=cPSW%R_zt<*IlJh4qj#xOjgn@~vUn#66T{pJs;*S{ zhQVTbxX<>_{%&I}WHd~_m8N&YfDn!qlCyzrJC1EX`N9`|wDwz%30tMG0OPNPz7c6VRxuH1A0C9_q>Vj%IB4H!-anr4~Cu!>6X@{F$)L^x8%lD;dT|k~zW&G~U;p|oGd*AI1q2Fxw^KS*I#c?Q(o0K^A?KaKaHaz=c!i4m$|hOT zm#BrOi5zS3ezZ|OE;K&!mcFFO8>5vy>m%5@#|3~t7ZWlc53A~$vk?R+|1f=*ht&ae5={LWz8{6 z_a&9NUe))=N=|(Pp`or$^oLi-dcVJGnBez|a{RWX)L4}M{Xcnd&YZhb8ZryL6dKaA zq^T!CR@0ZPWkXhtjvdTZduwZv>v_ZF`Gp00VE&%vz7n*0rXMjnKlzhIepc(;XUU_` z_8n-q7(}poz*)2K3(fL@&c-Dh?FVna{;C^}PuqC>z%5rFx$MeKGVi8txp{Ems%zV? zUF-Q}uiQ8=f7MOZH_pxa_M7C_z^+R$Ut^>+=2W5e)dm@zis_)}3)Km~QePa#w(Os( z&7C=DI9tc&+*iJ(KJSF{4e2_iI&D^n}Z5Wih}0QvM-9&6a};xL%`M!z2losWDCE5CM%CB+Dd5321N*I_f-6y6U#9AbU%Rn#E9()aVHgpGFHB%aKh?(|? z3Hti^K%P0jGpbBOJhV}E2^NJb-lTM_86G}}zOQe|&1`24(e& zyMOcF&mUQ2d@8oNL~jFRNW4E$iUd`d=Cdnfk-!Pa;!uR#s*F*%;;@+}D$ZEVyMnYG zQ#Wm@v72C;x!E*IlR8Z{lJ4d{<^@^y)s>?|iaoU8t;YiLWwIfP666Lho?(ev|NLAp za5Lv=p$5YZnD3kCGrshv=Ych{xCb`EOqguO>2Uwd(W^-qClVZ%y62M*z*u9JVRIL{ z$@6v6y?AHytI+v#rb^tx!2<{T7#yS&jO{pwZ+wlC2IC^ZVa{#IeiY`zyoXkx1e=h$ z5*#XOQrDukCR{Ca4KQIG;Ne^gXmU;a!}xbSEMizh9p16v`det$-+Xd zddYy6F$c%wvUV>?1Xv9;&DyQ?IlS*0`1)qx$H+1R<21AoYYBF;N-(2SPZ09Ab1+41 z@Gq>uGpp314)b*rLwG1=dPcg?AG>Iib%jymOj$$72+mer<(7$bIk*?C9eBDMbQq}K zwkLG{{LqjB40HH`p3y{r;p9*coG6-tz2cfY*cQ@I)q@FY-SA6PE#qvHNN8n0DTh_` zAIxHoa3cOYp*1A$(713b!~uVklZ}dn%lqJ_cok$>Z*b*DFjM9KR0%{q+skmy5uHVK zCN#BI^f_{1X2W8%brgWhP7b_J{rmMh?jYLUYj6L?H_r0{e3pC&EZwx!_yN2CYDat= z4OLh=d0nN~EARapyjE(Tx&B2vM;^W9b9a*u^(uRx#&5_KmEO%yJn_gQdw>1<*FRiv zw4KKT?nnCmK>li^RhrIz$uAg=W9&VMuWwuU(pmgRKC=G_d5_`jedbGFT3EPF{lAFY zfP$nLAhujSYvvb8WMF2g6+=*f7&V5VzhdF>*YCQEXcr^7mUL0IuV^+Nu2%);&v^5< zlgVFPG;DtRU}JWQv*LT(#rd*gulUcvLt$FHCEd?f|Bq~u!T-DKv@T3i&YW0>(TtzbtTspf zPS=b%;-;0%W3ov+d%b-rhR^@wZyN6dh6}T+xwcYBR-w3L6b8iIC zqa2X#?=tqg%!zw%W`=xaC_o)pl)f1zEDZ4Lt;eIdXK`KgyD-=z*U`&vqm_9kUDcQ) znaL{F1G~5FMrRoNRAV_cJ~m$s>cRYQ{(AwIk8`1vfqnh}93d0=Zt1?#D@#wor!!Wy z`9TviW-Bvrhs((}S>sEjC%5R1CZ}k9z}V5cJvf$w$pABpFqg|-k${se@t*9>PeyCn z>>_^tBHk5n8Tq&W_{+cikH5V4A8vm4O*g&!7vFtTws`Q0Q=qt+uGzw4F2(c{xPEZ9 zb4A;A^%%6T9*HV5eth2Gq2U@Bj-l2?!24qJOp_|pAJ<^`nLL^Y+Y-LnFD=$Qup~rL zm=SSPIwBMqGsrEsz2dgpUh#s}leeE-T|K#$t<1F(`~8|B6~*Nhm=Hl)_kPs(C!vPi zIb`MkTva9$IQJm;jL55jXWjKQMOD3f{z6=Xw(n8baa>>^1qYdZ?n~rv$){lUBO^>n zQ-rY>;=TL%MA4FivYIB73k(co%VgaiA@{!h?O%R-Obwnc?RJmcamNude`>3`R$JVv znbd^u-hSV3joIBxH=1|6{tiNZervI|TH87`~&Y?a^id#?YAoY-5KQy=%-@kS4fUX~ydl&mD z#y-L?ekJ(AKk|%M@-9-3|5se^El^r(1@-uEqsCgVx3>4U8DkkceBqTpnsJWD#VdXS z+Teel`wV$f@sj1GL#1oMCw&wo%Da$xRT=)cP`H7RfL&a9V7O8M_Bq-~O*(a{qPW6^ zz#XRKN2Kf)L<1E$l~t~peIUX>W!{X7w6yC*u~U^M2TsP7Mdfb5x3kZnd`yf<(rfR# z1R5w_u*}8A{NkyT&fR{R7(`kd^QknGQ&}SH^s)AQK&63jT+ajBm~(mP-fDc*6e&jZ za;+1`l>}~E%ddFzV6a@RbSy5dCe;>yZ_U-&w=|lJCa!n+u{lb<-0Fimec$O(yzr!B z*k`Vq1IY!d*f5X0DKRt~tO>(*pjb;(ytJBTroT`hH2mq|sN2k%KNmLQ%yAe^+NMdk zZ3p@l1AFg#ybQy#gJ!LTJQ<&v!Re(ut>RL0<9phG9K5S%y znL2r|!K|^nS`iXqEU(AX?;bQO%TXb z1f8=CQ`v%BOCQg=v86LtYLz*s5%=qPv|^9Nvb$9o=G#3g`B*a+pL^uSdS}z8{Y%I9 zO_^Cs%UV4MyJ0q{l7HnjDnUTBBaRuz#uQ|YC(5$T1FdYhnB9+yyLFhT7OsC%>fLt> z^j|gD>~u$IbHTls&)6-+r8crd%_oXXvB>TQj^PM=@9uQAtbq$<*^Kf=?Ol_D^^*-# z+y^al-{qJ09(enE?z!(>Z+retFMI5U(H&cl?%j9x?0v%2v`c!u?g!uTBQJRBo%i4S z?$uXZfBNj;&Vx5Ty3d7F)WIq(Vm^)NqMOOty)@)+#MPN@K5ddI2B&u=rcc6snM`8J zC{Ufsz5ed35;s|APgmBvttjC14w07|i`{PJ5Hi(2|L|RME^c(|?OxqCHdbFF4jv?* zdiw(}ca(ad;grjQe<&L! z@Icj#oh$p;u$}GsuBknKn|+`boAvqCEA(2H@k_09e1Wwk!1;AH8GFGM4NOGt~^I z`HbhXKw{6Aww~EL(O{a-hRblApMREICi_nVqd&_LKtGhj{f>G5gO{B;eCY6Du~mPK zarR?VcKBZX(Hq-aOHJ$g+L489`N(dcd}C z9}QZqXl{6udG{mFsAsuU$4raSKR0Ce!)L$y{e#u`#3w#c-1nJ-^c~B~*DWnwG)`ry zhpZm^cy-K02VP%+SXHdM2^=X!w%#Il2kk6aY1p+YJ z#|BHCQGL+Kys!7bjF+S3@0V5O()JIj zt=wV5^Ndwc=V7Wy4Awv($f3-iRn_0(wYj?68`tdG_ENf>YddU|&RJm9YXcE(ZvLPe zf3&d_%G&aB+Bvx3t<9}1EQ1ZGla+mKdi3sMK(o2pDBn3yds8Zw)d%)CHMct z-7(B@e6!IXt54U7!ZH=KJ)`3CA_@}AdDe4Y52mq(D_n+YgQ2}OjF=CG1H1(Xoq{|P zP`o;T_r%mG*bAdoWL(4@5L1&X$1zer{(uGvGF<`X*S;OBfvb;0 zfj8e}+c)1p;4L|GiD6u=Cv{2n__NUCWm(Kt~r z39*^ajhibJZl)#FIJ_cQR?aUtiQRh~gRDK^xMwP*8NdE6*qoOtcI=a- z=YYRlB174m=Gcr`uRks-t@cjx7#v|_cu?E1G57|9VG+NAiYOmue8%cE9e4M`Ehh8G z?o;HK*r!y>x@hE=Ub8ZS31hM8JF ze_eTD&d@uQchco*{E*k&Xf`)OMo3v&dNrw)?Z8j<#m?MPzpp3NG^we!anF67d|c(3 zy{`1!(o?1PDIP(kp9`u$1(id>&_rya&jWUPfxJUv1H?fhg#p4m3by!xVlEKbq(Ern z772Xc_YmDS%nHr}v~g6FDK=nBMXeM&NXU1mJ}QpkRTe=-=wp-2GfmHW-JGX^GebOZ zPMo#s_7f{*aGIs*NK?zGh51K}q)wRUq;!FE-4~g|+{i1t!ZfDeWV~T3#9Bri`ZJuK z!YnzQMgdd!GDZWp%ZQK66Fq}-ey?V5xU1E$T+4DlJl@*K9ZF2Czv8-tMz##H&Q;s> ziqC};MvYFRJKe~@ts%{1F7)73JJsC^3hA_knLv5@4iu#JJj2xP8p@#m18T$WMgkDV zQU~u0&NFp_8YTpf7_C|S5lz=5+`otmbI*MP`s}AbPTY;`+yzoHM!x024xbJ)6`U%H zjd!|BCWEZWRi{_l2wFh8tSo1(RAFS7|D&&}nC*_~Di&Dweam zI|o8Tw;w(quS+k7u^W{JrOQiKDWpZ#%LV#7v;E~J(ZDSq54Q;JzhZjFw4lOJNxBE= z0Mjku@|ft!WH9ab=;gN@eeptP{(1L3`3q;Sed9HItCt`69V(+B@yxJNHH^??{MaLR z-}buytXG`KFgevU%kb<(C-uy+zH#c3hp#gD&W`=y71uvJy7g#&ssB|R8;!6$A6iN~ zv)=I|N3XeqfKIY>p{p#YkEbkpX5OA{(4h|$YpwGtbMC(FnI}+hkf=%t#4hh8gCPj1 z?wU3_L~wJoiL?T2n{0v-h!N_nWD;skwHAsT9kQF_mL*IrwSFrcH;aO_RiWDko$a&1 zc!a|y4?=1vUNPZiku_JpYzE87^859j@^VtqrlHVj7E-*TF57UK%hED%EG z$YVdi$soSNB5T-iQ^~7-eXjTKEaH3q!hIt$Sh;*Y&Kb8jGFx~JWR(9zvaXI?L7bFSUuxbMW8 zD@~Wbd`*NYW46(4*e{)?^H;1nt>xSzwJfQYO{Q%wYh3D^;mQNVwg_Juaq9e(&i%SW z+e_8?nch3^cX_3()G9sig6|d1wAlB*pBFOE&i{7vDW){K@H?7jAkHuP9bhc`#lNx4 z3s3FGzxdQsUwrDvKl$3%e)6?XJpHOyJ^d>3HsM}*$WNwoS*5NyRfpHA+1w=ccdm5B z$y1b`zUIOSH4Z0e^-4B3P5eVwI`W#+gq+%U>VEzyES>DW7K`8e53j=V^Zj#Oan0#j zVLQP;f45U7@dQ7e^wMf^w~~r4{2a;Eo|C0otrQ_IYa+8`o$S)gBjXlz8L!qC|oevXSX>m)($sSKBDrkPaP^aO^@D+$-fpn0_(GQp5}}?oD4luo}*<9ax(WS1)V3&cXDc!A_lG z1{^r<_kCb{pX%xrS>OA7SeF$Y55q2beMRqv^}RoZQda*uTs^RMK=lu~=1q8mhw)2U zQKv5Nm)r98%jNnrZZulOnqY-qj5RudmAe}6)eS?uHI8ZAOaB(gf)AIfAoH&TALEs! z*Oz{*^h?lBn1Be$jYb#3n7{x5`=r={?)7_ccL z6m>@i?GGXoWlLA(3&#Me@lKI*G~G{PGn+z_*?Wn=kRcQ}EEc5T8Z04!B5)@j(}PX^ z-Zotlp^!zv!AOjBt5rt&x>L7ZW>^VmdneFCn@HzcM26d;9ypdI6U$((U3c_8S+oyz z7W%uM8<|@RolV0o+oIA>7q-mE^>+IUokJOBZY@viQB;psQr}Pgw_!duqWe0jW@#-( zPFAP2B>c87mRgRhQImYQ=AFH+ng+VgRaOCA57O%RwnOI2J9)GS9#RZiS%!{n$j5)UU)r>o9R$3dNL37BFUob{UGHU^E?W1y`4`Vt#}bb9}7W&}?8z z!G=jAlau8ZW-o6o6K+Oyf8F>`$ZwLLD}m~thd#xOX}vXVonV5+HHv1ATO5;OaUPH1 zm9;>i7o?5hA(D)fIGVx?%KCYRy8!sx)P&q&qr3?o;@g;6GpQZ)R*o(4rOQ{lNIhni zbs1;SG$!XZ2@>6Cn2o;g*FrZj&A>8}T4sP+>y~$SEwCGG;6sKmGR0_yCP(Hyx230joWrMEGwRD zEIW2*do`~{oClZ9Z5YOMjjSO}Clh;rur`G=+x$jmEp1-6s`;C%)0pbD*5>fC9&=#K zRy2P!x)O9k?c8U{&w+*UO7b4^H2DJgPo+}UM-0bwo8+Uhifw|Q{S3s!0sn}4g;rR?=v!8VWE``b^rg$IlzACe-NHUC-R~t41MRAAN zH2A+uly}i2O6y}_Q6dt>YLM*1zlwmISrlqf6|BL|dD~%HL^G%-Oj^(|SyEi)QH0RM zo5jYwLjFosIubSE10~3!fS$Tbr~M*UyI@{NXpE|SK`k@NXWxy66S#p;A)p@FV9274 zCO%ksDj5tID+SF3e&Le-f5BZFg;|0brAYEM0#_?!hBRH9s&n82C`%JyDIx@(!%2bA6*?SwYY-uZcxt?f;-ZyOSB$O5 zDXU4afQco+7Nybwj zLHH{ANBs&LrUn!)Wltk&kWN~IrwO;0Ml`NJ|yMGU?Y*ZfFh22@bXOv&_?ro$`PzXq}) z8OSXNwy%ux9SXhN#;C9VmUhH!uz_TsNEIZf1 zKc$8Q`;QXj#>KDzs_EGAGQ-vswg8J7Gokq4ajO0|kXVR&gxd~BQe8#!D=}Fk?vEEd zzzpe_xWx#Iar0YqMZxw<3J{#?WJ4%!M(jOG99|3q)pSVnNL4CG6$gV62?V?xMG(xT zoq{uD9mPPi6KDe~5QdAydVbOuOzKgD)X1yE1qai~ z;A1s-q;K1L+&1{UhNDL?UxTyCP)Q*ST{HVJ> z*z{sCIs4fn!xS!={(v92+vbH^cYDZWHg(TqcC$io6_12aK=_{)2guupVB6WXJw?&C zkGVyXnAw%d49<7~2ApqzV8;iW{U2TQVCPeU$uQ}&lsoB-y5newsFyKGCv#t&**Egv-9pc89j5*&Cr{pqPM?o z+Mqfdgf5$I7%sG0A;ZXLwl8CZU0$xXFhi1s`GdHQsfG|zLM%`jmKQi0_5E?CF*1`( zR5J;)!{)MMf_-ZukEc#u+cWJX3S6D*QZBnnKq1X%Vu$6H1DYiWh=5^DOlH9ELZ=*p z6vedJiVTP_%W&dqzHT`n=d71S6(T8E;R+IDfi|!xt{p-heBYD?{9t_)#Ue;}GcbM~ z^Bg2CgPSPQxzH>Rbc0Z;hC7C^QRsqJ5V{xh`>0ZnsAoAUHPlF~(6)u*LY*fH*c7Jt z!Yn_+l~Af<8zMkTc95&kUf?-6T!NC(;Jpxttzu5l?n-HKKL~1;MnKOV_?8rre|~L8x`w@7k{#dSk{cN)yf5wA4Slp z!tfCc4~=2-dS%c{9YqgA_iZO^Xbc}R?UhR%SJ5D9C&a9YzIS%mAwrW*kS92x0t&88w>KEN&z%3#&13 zba*PT#?T{_apXCe3IO^OTHOS*1{;FeY8e?iLW9a$j=-LC1Cy0A$4UaDjuG2tGtx;~ z(TpH~>7e_TjdM^yF{b8u%R#c?x!ZnnAMoot)=smL7;2eUph3?xp zc9rc1!wDK+g_?uygX}$AvoY7T#wGGisu=^5!byZfioWoRT!K&~j2YL87)HuW7+wiX zB2vLojLbI-#;Fc&EqsG^GZi>BOo3VE;RL;~3&}-;ZZ`7J3)5$I_UxqMOa-_mysxbY z(=nZP)s(Kp%41xGkYJPG^v7-&y2jktlsfVe3*E2<+GeKo%isg^MpLt4*q6iD5-4zp zik5)cq0C4IW))0RH?pArE$K){;dQ?N=Y6_#KW0mfCfOwG7f3hog7#JYKJm+BT!8yi zmAi3Y&pm@(2kn!z2stQJ_Dn+*Y&5tiLNs;d-6w8eT3P5ES>tx2p3Tq6NhbsM*7h_l z$zq%;LDZ`yfv{}D=1c3FomCoS#Oa0}CgQ4YbXs7|;xrPZrBlBtw93NCgKwN}w^PQ3 z1UV~7NM3sh^ec?VA<;naLDvVXoo?HP!RpvHg-LH}7K~jm8FiDjvy9}_Z%{p(@3bnW zC9Kt@2{R<0tArKYmS6MSg}L?ZC?2hz=+*V^{Lac|Yjo!ZTIl98^3HWjONh-5vK-U7 zPbL1Ovd9P_a`hJ7I%M$vzV)HU?Ax5GbDRCxv4h7n4PM}bYPERJ*s+7ZcmMGd_nr92 z@zLn`h6ApTaY#b(8(SxB_|p@chyK!)edFTBQ~k z_Nn4LO)lIAEW2H@e{r!+{NB&M15b{_A(dud1E?m#OEa zHq9~`7>*>aOLY5R7_&op*7FjJq$#z({h2qs;WKX_M{ao67eBc0ve6B99eZ)|!7uIp z%G0mjgfb7mbj5gQ7I=xn%OHY(wOBv?#kb&HKigaX?JumIy8S@;y7Cvlc!v>&MqJiJ znVQ1!KtbE$gP48LW!$w-1%VM~nwG`?>J50qPHT8-@P*(0%Bf3FUAlMUt8Y2EJ&bmL z`wIse?OTo+L1ZOm!OJD9R6qAQ^5^7prJpE$p!8FvpDX?A(#K1`TKbLB=SyEI{l3Z= z1wY9e&qwe(L9kvXpsC?UeFO7uGL`+Q92MwnFgXdXNrJWAqPc95DJCDmBqR#Wg8}gS zClu=!O`7DXgsWnaV1ch~z z*&&>sz!~6HT9&3E?*M3XW_e9eMwOOqhFV>OMpQK_vI+)Hm0M|^1v#Zz7!%M!g6LNmK8G9W6UDscSu#)x)Zx#q(x7Pf0uS8k*mYxZXKbA3Qg| zV_Slh-#qKXzq6a5F68zd`Ev*LLmiz*U0-W>QJWwMi8&u@Mm4N6x2M$;C>!q3*P97j zSa4e9w%=r;k(52!l=cfPA%d0I=1d2n?s_{xZcy)PUbdXoi6y$EOjG@b3EgM+X}Mmu~L_r%nK*l>$%CddMdi>8<^ ziD9OsjX3G`r`_|Ry6Dtt2zbY|Pabk8sN71ut{hLY0{4Jh{%ms=hS49piaY^spt2r; z-?KSPuO?|bO?^gf2TZxZ9s?3O(Btw3=rrnGk9PX6lzs zPBy?Eq-B{k9oL9#BP+Z970X0_@o|!Qx@(Fz`zfBt+B>UrP>h{;U?49HBYF*^@Kq}f z=bFtd@h!$~cdLQL7vVed>V%gYj$`<)=9XjI%tsAM9=pN}O+QV*33-yWch}~OqCB1D z1Co(V%Dq&Wt}O5U&#aXuQl*kYa@qBcuMq7anE%$fKP8_aKV7nwRK^S@cb48! zdVlF@a8edarFrE(t7twLY<;AWFK`r1s*)^-B1kpwgVyeEF zDnB=ND=nCevUFa-S6m96)P>VfCG~eS%w4q!r@&WD7NhGYQ*D6kd6<1PFGw^L^QbJy ziZYR_n8Cq@3a~|Dq{)Saiz2QNvu*WYB%s(wc6)VWqE-X;9l$jr3%0nvfSER!=HnzD z?ojYfN1IT><`{z(!QY6>N;Sb)R&2uUD+b(O9I37E?LQ; zS~Aj+X^~hQTsiRTBJOd`tKqQ&2B8P$Bz2E3SZ3fRV2pz4rzOp7A+o8Fz-)LAkz&qSQ$=NIs!#`=rx-?8ONbd4KvQHt!}v)G#g>< zB{yt>LxyfRLg#9e&ao!9qUTV@wS?&gR`YgHVs8E)D@yrN?V2AZ`JJ%Hat@7DA=*l=hkd*EVv7h^Ituyu09VU)<6?&tL! z=lCNN{K+u$`~K^H>~=cc%Zn7BPafQ^R<{pUtDSDO+U->TTeo|p(;;?Y68z202XEQF zDvGY!zUAP}aeQf~bLs3=$x|2f_`{&bWhqp7=S!2>y~XH!sLxahK%^fEG9-XMPkH{A zneS)*^Zm?|wr=gt9a(QY@a`X3O|EOt9qOHY;WgL%IDF-08JuS6w)}j3{YdZ1`|rP! zT>Gs~Z|^I;LvxdpCm%YA*q;dO&|g$|tzM}#x1Xmk=@lf9<4lf`EWJsJo9EM%bn{8S zKl%9APQUC$*FE&m_UWY)Hy&TgJ8Q?kgrDb!zDCcUzW!0s-`!mhw;ozLu>}7Yk0sTE zrGl@s;2Uot*Di?vjb5QcaFX{h#1}De4E=<-z>5`YX4-g0yi4A5(#CYYdud9ZO9Gsojl*%&_CrbfVdeMosRER0>ZvwI_t|| z@t39UT7GDD9eIeT{MYBseFqA8Yblw<1eFl)q$p;)`4sJ3Jc1g}K2oifVx|mCY(G-q zD2aA@aT&NX#b?;Jxw`n%A8ef3YCPsGy6^WIi{1xi;(o`IAF7{f=w7V5_{o2L)*14z zic_RJJLQ27HnvW|Io|udg@*erkkezpx)M_MixacYlU`{;=8b!Em?+PHIABwVYdHsxlZbp zPOUas3WBA8e9AN*WTq|tC@~*0&4+ks{E-pz+wW`6&E4DM?FPB8+r7aLIwXqvQD>nu z9*4cTxf#b94v5#3*1&I3(Y0}ra1nDABZ;3J&ES<8Zoz}1*&*31z|#Zm(=T2XI)4Ts z94a4|{Ct1YY)HeC)uV?hl|x6XMq)b><;`%uxvCp;HOGvrnb6k`=w@Iw;GLDo1_}^GafWt29Sr3TLLu`a zfu$l!Q-pzJ8FVxvxsZqu{vZMjflj^gHbeeG>T}(y&CxoRr8ZKNQqZ6_xlb=03 z7g|d~E*pByG)|xH1=g|@E0(N+0^SB=JHW*jkkd#&(ThU*U80GgY#-XhO~uU}s~mt5 z`z{TmH#}6yvdTk`8}Cg6TxokBh00O%DAdNIpr>ESJ@b%h?qH^-SH4R4#;$4Z;v4eJ zT+fY*^RO$zTTC=ma07!iGT6_j{$}KUGKmGwn?+27#XHyCcijwK^j6Ix@O?fU<^t|u zip||!H9j-Y0sk-PfB9yY)U zD=-x<_y_}d9%wbN^FWrb6Pa8Hz)pgx3M2Ih*`P!_Dzq22^q~&_p8!uwW9+RH$+V}M z59&JkYhB;_{Wl7OzDeoof1s}=Zzy@CTB-Z&IC(PeNfm~lO+ig73O{-(s@0-@`Z~Un zxkEdLc6N3Sec|?E!9<~ zz>?O>6WI%pgm5|xNH85o!)cF1NDn9@f&^HsMFL4aeAk0FJ$K=uSKj=by`#tf(~YBR z_I`VG-L)s$WODktKYi=*0P-5ZdP?G4A@+xtpRKEIb8y!YX6jLBc_ z9V4IK`z>j-1jJr5j3jm)@;#N%*)(2rvXkU1dNJ2$pM77ld|> zlU{(~-GjECjFIj`s!SF`@WzXL39+0Dfw#D6cl4q!AL8AjH(dsXpw6E|3l1In6U?Dq|^dOSnh)+Sh{bF`ir{5 znvbk3XUIsp?MwP1vhv5(YWWv_Aq?*X=Qd7kqr;>w(OkSVg-S=p=G9p?WOl^tdKgmE zf=9H3miMT;pmNjV(rvp#Eyw2E-2(UE>hcLUv804SN^J8ATNC$y3&4GYYaFVNyAb!1 zi}(x1nBSOSyTZ&xsE}H?!ZD~8sfLKw>Y^`%DH9Z~^!&JGeFf+0b;&Cli{*PNX3Y65 z4?Q$|;R|p7xEWl(wzbOH+Q#b1>Q&E)+R@%u8jFjKjPzE!S50@1l8-Dl{!*Va;#J3K zMZ;m#3YyKzdatp*I@g`R`HKxQYAo)3BkZ(Kl)Q8Q1mpUjU|io*dQa)YWRARu{8#c< z@c>YqELh0Mccnf+#n>B4qY`jJX8Yq@x+!8KKbg8oatTCvj zvWSKo2*tuCSF8IHV>Nmh1UwW4t#z>kh%p)HyOaN-QNh5Gl&`zv_9K^)ST2wTqqboS z%SWgQ@mn39RTT(B*BaDb9Ww_!n7SyZtk>aza7@o2)OI5aW7Mby&uqLX)@}Gqlekyo z(ySd;WAxYwOmUdCwuz+6Qf55R7BJZ_Q*1JOe_>IFnAEaCo4Xb>aZeB2Mq67<*Q+iG zbQYp8tLQY7M54kpz>UVckhbOUi# zRD_cIZp2N^fk{VV#5FakNdgNzW()ji3JRGX*kWe0Hs@v=(g9cIfa7x!fnwIeuu;$Z znU`4}4XiM3Mk@s2FRwKm({|h%Df>a_E;=0ZHn`k&(bBMt^&o6d5(ciay;7D<&WuzO zR#D-oZ8%UJfg4rCw>%@I=82UmlxsGdf!`690iqNaK1gIFlw&@G<^FP=vB>)eX(0g1 z7P^5?+Y0O#B;6N&u$;O z6>gla_7rAK<2((GfD@zNaD|XI{7RXW)76^C9H~=K7%^@ao4DmEG$duhbsiH8{J z8)oTS9L+Lplbeo3m~LC9ug6xPn?ycpXsL%Qb9t@u78We*%EqNN@$`(&lc366gdZ2tdQNHUZPUUUND3nY8Qe4dXa8k0VTtIJl$B9Py}T%v-kS zZwxKnbSggQi7j#0Rr5^3q>D^zFeCRPp^?2`61ZIVuanJhx}G?0#f}R$x_~;`W;I|4m$OVoQ6;aURRu1PRhMN8^g7>he7EL`%GQIvIP}!2Na(#bR`42x;`ZlSMTggw8Z&613 z^a}d-&`DL+VXJHtY+!{5Q_In^x5md9lB9CDq1Favya6tJvav%pp>J?kS#i(g1^P(& zQ3zp@O9b;8ZIPJ<>-PFnMG&_UZ#JpwEhttg+d;CCVtO>Nf$M>5XoXc<}^O2Nvhz>gS7L`5HZNX&BEfJxVl)fyL`hJ1+Fv|u#<*&l+k zG46kWvh>ga7(~qavM`?WoR-dPhqT*7Cu=F8zfOf?8@fv|G!pLTia}mV%xH zTfxw|0FBKejVt8}%01Bx)KpwSoCpaRU6%V>B?_K{fNPFR^5AU1X%w?H5|wldtiiOP z>_e0Wy&wN}ur?ST4kvj9WX(q8xPpyoT_jmXXBwzCi$0&g zP_mfEI8vq?HW)^n-AILiDgTFv=KI_$p^;wwqo5_Xwu#eg*Kt|r&uWZ{M_7DdYJ;%W z{^GzCZgDL%k3k$0I=CjVGgU~fbJSMb-?A1dV#W%L6H6iFtArf80$TIvp})|2*wuOS z^m_@r^a>%aJaXk!wWutrcmi!Q9an@nD@(P8X2y60XZ(tntfd0Rp-j`_xy^b6g-}2wy`0JKA7sj||4u z@P&x7gol+>OC1yMfM0`cDD;+aUxFofbOezhgFZ4<)?@f=3yRTvS6Ow~qI~a*+Wp`* z=m;G{WMhlcmZlN2PswoW)0l|Os^E;MdSy_be2!^-0oF@Re9_b8y)cC(LB0%{`NAwE zV7uH(A1D1%x0IJ|D?MEL(bDTn?=SsX=`TwENHTcNZE_{Kh1^9RByT3~BOfDQ1%F>9 z7mBm~Gza@-m!vVchf{PBkxXHVPVXd^lN=;qo=!muimccpUW3x$(pVvUF-OFy zC;L70gvT2bTnEU&uu~=kU!pyz%n<%#)l@X}4pLxXfS%l9I~-ZK)+n5oB}nrCCn6n& z#O=9)2?y&x>32n%Cz<*lAv8n8f2+hjG?@%VG8MQc3R(rNiezJp?ocST3wmxSaldW< zT6pAfK4Ywz z@rXi`DHx%qrZv|JxU8n>x#d`ff+NDYMq1Sx~|vs_4U2K=ip)mn$FNe zMk%c31!5X47`NP2%7hklwFS~p?Gl4Wjgdi2p(Ht!3+^0@R~WUt3b$WE!H+xE3dV~& z0ejyv!I{uBL%Mcm=$54)aI;Hb$YXr7E_H?>K7uK>S1>8TDJS=CyVpy3!X3@KpY_X* z5O&2+8$vdc$n|=jccomCE2|jpv~)rzvQv>5k0NmE-tu}NTOy4q)ub@Jf1b;fu27jv z*`kZ=VK1OO^rR7?2crU9z*!ZF@lmJp_YqM5P2(eEP~nx4dI1TeLks49SivU+4;!R~ zP#ACxtXKsYMQVtBL61+4j|bBo8^`rPjq6CSQ{Y+kG9T8`O{!m`)2l_Nt=%J;ZYZ=O zH$gaJM2^LZ`g1C|=Af~S-GV%nRHCWPaVwl_g@vIo=1gfu1vP~}X9_$Usv!WzJ4m_* zF+;R1R1J-`*Dx&CFDKaQOjT@~6etLVD)$rPq@H-mwiPBxXeEtCa!non8IfT`M`XV* zZxja46f>^?=Mx+_xHQ*z7uR_tHpR8ZjdBHyALD9+=laqE#J4rg@eMuT*kO1x4q%G3gdLZU=}4DF_RY)JCn;W>Z{F2V3)D`+wKd>zT_IYXI52KWmfLhUES5)>Q--3w_5ws0xf_9LJ}Z^B#Z=&BoN4kW3dd2 z$F^+nE_*y<4+hR*Mi}e?+u|@j7-P?1;pGgB$H#*`17l-TJ@5U6%OkZ_KH!Xc=^Ot4O&bJz_>?ds)O6dzn8(na|7zWwcQ zlb?noM)5v4Aa^69BvVT^)NVHuDnrM&oCN@E1g`!#O-3_(8<_SOz68p~ z3x{-shv?#bJA4J6xCBi5Vm2Uo#c#8_0QWN^IZwzKckLlgajA&0Cx=iKDtGwR-gMUE zu$qfTrWgWPOaP8_QDaO@U8I}ft7CRA&MDxG4NvhkF4nq&KM8LJz(44sr#M9-7&Ur) z6C(_8Gxfmb9a6lVdeA?R#j}U=5t-ac=My~Y4l-b8G73@7ax5e+w1SXFj8r_yr4rK_ zBF1L-znG?BmYAJma5I_VUH~`pXA~`Jy1MsaB-NJaW>=MT|!Pik$2OtoP z=7_>nO=xb3;#Mq024n6ZmUA#5jsZHEd*EPbv=Cz<31zv9jh?V5c>xfT5R|z>%ZR8; zk*gZ=?PBOt2xlQxzR7G3umW6R_vGcBqetQYZUR(#=1N<-et`-&^*Wv2BqF%^A z$U!qo5@_pKlmanbTm?kI(1dbclcoxOBOOqemIpQwGTugtP%i;+h)v)jnxv{J zGG#Q4u0b1sZ(!=W4p<+)i-Wz*1mY4sogcDVPfKJ;PFZtH7G z6~1%9t{K}_P_|Xh!vaoq5F=|8wU_tp8;r2>F6gE*nc{rB_M!NRLYIkUk=PLi%m#_oP3U{=4)&)NvtKf?xeM@)zVE zp`+MzLJwl@piqRwa-PNB8qfV-Z~~Do3zK7V!7)+DJD>1zu33Oi;v`>>_a1wgqtOI= z`Vz?l6f8ix^%yyCmoM|EPn(BwMFbei^PO8SzM)Uj7tey5=ntIb#n&e3p2XU}aORxS zJzng6(3iYV9Fb4*;+)ALf?57(F_3c^Py>bw(DbH`jOJ=FkTKs>BzcNTXWWQ1TS!xe zA%zY~d$Lhp7Y@!nIM$e_N9IDH7t2gAVL?#;q6Hr05IKLPE5HrX)#Ugsf=Ai~_x5>nZAMn>Ki_)`szNLbje-2Ze8MTB45iwzuwRGiLWDaAj$Qb_zN>lL{g0=EayDo8EGmZyB8^$!z z-Z`!ZM*LRTE@FWN1Ae}UA4-+sn+s7L#ju}!VEv}`i61J+PSTESF zQyJBcED8m$-n?znU$c!+=1FliRg{%e6VnNH{~gZh;!wKQPs@suMCDQ(4Q{9wNHW`>{wFLm6tj?RzLf<446py%u<2d1Tjbw^bbmX3p=ypoNRUU~1vlRPZWPURcva zb0ugZLNQtES@PbCf5RE)*tE;XIWrt*#c?b{Rokj69OVGb!2t}5%cy)Dg#{+3;B##= z$I?w*jmz8MFIh6%me;CdS)S(%Ni!U}4~x(MjOw&}2#>qsOxu>#Hj8CS%4K{VWwA|e zRvV7thz+S`W|QSddb_{5IrPr=D<_XL{m@|(ZCp7~l%V7&vf`ZGk$E0pXU-ktZZF_agd|5TyJRJdLyXJLeOr%3|1 zp^6lSM(R?zRKwZIN}1^~w4&mNZhvFLiy}gjSYxFsn8>UQyH(*5Rg17!j0Nw(EoACA zQ$oh3IVRUGzmY@o6`~eI(;O0rOf=9dmlp!OYkKi{0C7Jf^7=jSh#G05+3R4=A@Y8= z02FR-@BU@oAz$>v)!mCX)ZByLy#K_Vl{?Dy6XejKz|pY#~HU6p_-}TYZL`q@io4w#G3}(DN{f;w452H+V3i=xl)GCzObpH?GI$d z^zXb?VRkEmyZ;S$8V;uT*-UvESL~yPOpW>hs&MU5xB;zmCpC+w4;f&rcgl)E?E~Ca zIEwRlFX5TY*#XN^OVlSJm-x|T#N&GD77_KBfj5K6ORbpqW-e*LdOX1j40x&4TTEu1 z84QbYtJjHp;Cw84GNv8R7Bv#L;Bk^JV)T1jGmcMqZ-S*6y%b|PlbAGXmp@S7Xf3uj zOfxVqY;9e*>GJv|TNe!D!tSTe)z5o3kxKn0_omt_H|l48v~l^D&(`2sy?*(yw(gO6adF17_Gk4c&cR#Qt-u{cm1{~EmQ{RXe8-}@2I9ogKo*$g8!?L#f z`TFH2;E1ohqJEQi{yePRRlj>!-}t~{alte%tkti8Q;Yn9i{HEWIjWM+Knop5pM9~T zIhPyhaj$O^(0PK5*#z&BX+6v$1TecG_!B z!-iAvZOysM!Qys15c`Zq`vBQZaG%0tb${H9eWKfUIc=sTr9rVkqC%-4Tk3rXT2(Xj zB1Vj;96Q=28abZtRE*L>365|doK3X~QNa9KmDu_b4ZauZgT9Ymkp5Qmfn3$9FAb%s zv?chbPv+GW6W+lf`UGwwoRvm7I(Vkwb)Jh&aId0+NjY?a$$SJ0>@Aq}DjxB@d;)e8 zfW+c&lkH^pkFR4_{pzu#^~%)=j1C4P$9GnCcF(Z$UsCw%<2S_~cQ$lDxa_&J%J<+6 zA5(5Rb?S`HuKM2o-jA>BPfAcHTSjAeHkyx7NppvcGP0@i%_QDL zjlF*+H<0VDKXQVSIys3nQFjV&@X||3?Z?Q~*O41v_TT~XR)8jiyowYG^n-+)JzGf0 z9h>Aw$e~AaJuIB>sf!jq1b5g~(#v5aNl}w^*2={#Fwp5>p2I>2n~SVe)UOu&W|Mpa z+%?K%K#;`|*Rtq7^pN z!15Yir)6koKDk;d#2z?vMfdWNS19yDa%sI*n`G;iX6+YN2K)A{H?!%uTAfU={gaCq zq5VG#?Qco}^f=7eUWGn4gHh)Q^tdz9)zZ79_edX*J}N!Etd{60vn5L>ij8s#snuCCZtQOJ2p~2oaq| z-DZa(`x~ZLBhw}Zc`<_X!%r4rN+)s-&S$XY@lQWS9(&m@r!_*JlotRN$im&dsA(Ez zCIc?WRHeoFOl3_)9Vv2KW&>I75qUuAR2|6+dCTp~Wcx5vPtxzZw(T~xe#!wy=!QZ1 zJ8Pb8dktA_q$ts6s*XCi;u2lcWlvMfSXu?hM$zYr(o&R71*aniOkR=4b52$Px4>b^ z(~p1Zv3l|=H*%URPbT|1&Ok>eGC?R_oS-U4crke0u!Wqx6S7Yw%T6$HlDj!%rot=97Y zS734cIQ)-Ed{KfYCvY8?`O5L7#@3$3AF}24pkE%5PW><~LE%C)`M>a}V7$A@MFE*3 zpul43mXUX*jYhir>$v=@EW1qnoz60Hlu^bFw)u%MGdQg8f9?QmeR^+SaxQIL^##ZI zf~$Sab-(5&VtwPCuKP~+f5AIcwz|qxJOFu**tn--vG;vS;0gc#-(%X{Bk51a(19^b zyO<9EE5qP1!I2(^AwCglMGF|#bDb_(9L`Hw z)6$O_^~f#-jWc>ZCC!1WZItw4j5IfztjIhdPwyRp-0K(a^KIKVJ=yvClxM_JXT@#+ z2xFyvMaE=Dd$j#BGfli={mwR%Bg2wQPSN!=X{k;4Ecv#m%ZV`~K61$+ipl91rv)^) z=yCGbs(K3G=QEYBs_L1a>;CeWFTecqFR7k-8X)O2)jxtY-1;zVMLa1P^ilFgz(H5x z@h~A!gupSdjs$6OqW0A8VwOKo@F@~5pe`6DXlL>S69X~#2`i|Dl=ZSul1%6uJnA^D zT7giWj`|xTk3=iI-bx&d`s<^Rc&qJ7MK+6-nr8&FS#dS0x=s>;`Jc@K6U_JSUsao( z5-D};EP6|@Z8@4ziF|J}3B6z)Zu;60a4qU&BlLrKNJ(>Bk=HjcEn&R5aUChviXOK3 zbsL*wa4}ZWQm0dLDwvDlT-=3r{0RAN>2B$M>0#-2r9UJ^Fm`KX4p8PYay@wkxd++< z`6bk)_ACPHB|{ptz#%dfiat0sw)~x^NQs8aF%r0qp+QnHhlZKxDHdan(Y)a<<8+Q8 z>iic^k&(DJ&%^O5-coQc$#_3uEFhB?7-Ob#<}1xsbGGR6E+({3k>^aT z;r~pO=w zh?{d!AJ4_-6oqFhQrC5p{0qPtd(-^v8Ci(xV4U0>&r>mVA!cm^=W5=w$o+0ChX9c} zPPtfVlXj(8u{+Elp&Yx+2^^QgFEM3<0mj!YHDs3NVn(w{z{R4bsV0V=aH3nf%!$TS z=4hr8V!i;3y@qTOafGA*_gW{l`osMlwK{046&V~0Z}s4@lI$lQj@A+QC=t9rVmdK3 z4bG~`7S*8_Q|_v|4=#&ARNIgh-C(kzQrV&Hu$dJKRnmTs65;TlR^;NbgR8FW>XbO( z?;A1$uNuYfZ&G_)jZS%wp9vgYbvGdkl~t5n-^tXC>} zEVru_Egp9aHL3eL)0t)HnB!xZngiyIYM8x-Dfot6tJyd;A&T(9A;WBUXi-ClGw6l| zZ?#)>nl>FqJH3~u!@gY@u92Ei%y=Vel}#6!vSg9S2H@VngaM7f6##3jtAuC~W`@XMhKZq} zATgf7r9|U|FoQBxE~?$Ov(otli#p(3o2%`+wKdOoxzY<$`$to|KPcG!zb@&zNrUmpB5+i$mm)86 zl^7vX@5oC96_mug?y6W;eJ{Dh(qcoeX{l98*5;=kQ5O9JuRqM0M5)wP_Z1DDC{{6Cy>WYcr8E%e&GSsI~0VFJidqlYgDVm2%~ zcE8Z;75cXKMeqxXDYrWvHegrv)8UwgC2hbuQAZvR)Bc`x!l9&uN3ov^ZQaquLLOIF z$}cakRL4&LLpC0ylw8`LlHo8~O&upvUPY#DEs33UHQq!&mcjk>F!@=ylX~E{9S5K7 zwct&IbLxnWJpt1?2jdJl8L;3$n>A*r<|%k0b`&u`fT`tiYk|x_I9Cn66L?`UbV46idHJ!`D(|Mzq!KJzwU#T@?ta6 zEz^k17ywe{e@$g>zwx%xN~M+rZdgpJ&9|$n(rZpy+NHN(l2suLQq-1rs*zuH2wV`O z;MXEQbEvPodXi)CvQ(!Xa;q2)g>S6Jq#jWB2dK z?;hK|k-SeKilGpdg;jFpJ5PQ|5Pl;)vk31CQg24JV5S(JT@Ba0?~=mH{1)cPB0J{K z?mqidl=9FEu@)t%yx?Et{r*bnM)26B4o1Q9+85WYcHWrxaaD5$2zoTkkmIF(^ zS=>CAP}fXqU>xcJ9z%7(Xj2s{4Ou0mn!(|YB$kHNb50>LqG3tnO+e>dXLm9`;y95E zfQGAr!iP}HkS%cA8RuTboHeLk&}^&*&`FBrQ99;tmU?Dn!WWJltLy<9@uUABMuXkY z7&Zw3G$za086DP3WpBeV0hwXWovqUtzGxU1nj@={II_=e1K^lq`3@txiPufO_&oWH z$i*9>YEoXaEBKyv1d^9qO=rn}FUp&`g4zoPs>LRz{4Du6a>ZqMg?*!=S*@&)==|5q zk&#`igB7<_Q`4b)0{Xa1cZP7(bwgiWjhZp7WS6{B*MjZQV&A^SXge_P3feW-DF)q@ z%Lbhd&xyiz`yq2&JpFT_m2fO^vQ$qde^TgdD{Qj0zPjx-2S+=nemV^4_}tFUxpDoE zI&B(OFTECX)|R<@zbze-PKYS>Pe?y6{hIV!7)k166pK?3wddT%7{FcZi9VwoH1;2) zxk~d&pPa@y5$*_<=A$VTngFn~x=8ZGK0eRuaD?d{(AIb_Ly$)zOG}MK|L-jiCI~o_ z@s2ve^679uIriu|c5aSY*CJ>zUUXCP**LS*;#+E+UI9~A%GLUmac|o40S@Thgk4`` zPG^fIp5u~&>4iz9Fofn9y_8Mrqdg6)6_L2m?u^()Y{CeYN~B=(mu(x zSdL>_bpX?={dV`a{>-ivV%|~urIV2?v&t}LaB-^|bG=%3d%SJ{s-@il7}NbFo6@Ab zqXft5+-Z;eHOsz>T9#I=_Fq$yWjBbdj}b2j!$A8?eYV=`1)2>mL*%BqlK8$?mgVS* zTc~>aifWBIb?77e_xFR|8K!yepera}g}#9i5=TucL=UnsRV+d$B>eGm&meXXr7viS ziCBpx6>~M^j!<)*Vb4d69ic<#(B|T$5tIgu+|%9+nau}spZNRbIcnO@N!tu{<;pAF zh|}?9mw6%6VL17N_1f-NYwPPZvQ}HacLaW%R|(%14$`vaYC4;}%MDd>rS2KWPFjv` zx|}`!;{NM@zt14v3R6Sd)c|M0_wsU0`frfmgwGvIebiv=2=UA=av0S}&T0gYJ(Se` zf48Tdy{Cd1i9GW=vL^oy=R?NX6R`ROJPtYh{E+RtA9`UkJ{-M`(%TqI2{}sXQ9@Go z4kq7D>FqKm5g!$s&&%?8Lh>cFcMM4Ne~=3z3XHL~z33D+x!;IUM|&c}rq&D>({3w; z{~25a@@!Bn1|R(3?uC9a=$AW(cW&q(T7UNS=WctFTqp*+Uk!?VvUd1zP~3gCQ~u!f zJL`vDd+zmp^6uM~HtTuvcJeX6{|`xzVr61$O$FG(TZ>o)b5&8ot|(i}gT8>+MmRgL zIZ!dJx4UG!oz55g8C+^XYd96zu7HZinJTCg9F72gA?o4AVENumQa!Y6j+H+!@ZSUW z`wFvJwN>!G_1Fl@Y8vXAZCZe6WG%9^+B^z%gMizbI-ag$SpWrhuo%~sBgEyt?r0h@ z7}#dh@qOPlnH;Q~l$l<`a+eiy0B68ohY4p2)3|L#yPvC!ND+?CHOnrCT3A4XsBpvK zRh|M0@sm4d;TNz zzf~A(-z+_WY*ffzNS49#nV>^kGUY6v;PyQ1E;#cOEL&M1K`B@30w|y+(^zdHIVs8H z3AAyth)~pEN1lQqQAM5!xRV0}(Y-k8HAgcJ_ua|*hhKArH>&w@R$Z++fL&7uR7Sc`Q6}{*383 z&Rg!tnCn-ITIe-{Rn1Fm%uwqTZM)b(`)$~PrL6`{FGOu$SvK_HszZtd{?rP}KT7V! zf4=xUy&(Kq7e=dN(w)%m@0b3q^ru845qJ`($!joDw`k4BSjCwWgUrVqAU0S!XnOEN zp*!~kIixzEV4AQ-RRrnObe>TKrDx_?=DInbAm_hOWXO-?l4yiTtI4BLG)j}vCOVC9 zlXfwbg&{C3#UWUii7{_Lx3k64_s=tQX1ys+cEON3+r*kARM5r`h!b3CZ*xAv6ACA3 zdCKXi8S`k8;2{M$<_vBtEXHo(_HDA1YT%pdNSz3}>ILkRijyvrg1UV6;^#rN+&Px; zE@qqQ5N_BeoO=WVAq?d6mMGfAH;tAbdozFf(vLkmKnG-;w*Ik13Qr;z1<}~wsjdsS z?mMqKY;@-}qqVxR($re}YkCDtW46^i*l7+m&v9(i&{^x!t>*Xt!FPy{92i8e2S~q; z`K)eSchDDQfFjkz<#tgfW}6rQ=gAf~9VEu^Y%C1XG_M2qcryuX4dthBlck%!V*q}H z^>f5h2L_N=o)pd>fmIhiX#%xIQ>0`9{nXctK7_mFhZ0@z^`6xql67{W@IT;qgg(@h%=@meV_j`r>M zvz>8$)S^t)bQ3_G(K>X@0=SF}>>T`W)v*AQBN2s0_(4&61Rp|2N>5$EoX;i?#?whB{sA6GE?syrGSLCNKkf20 zKu3IYAPeS$OcC;4Lf}f|-Q)b#9IyjAY&6aN0vyfZW!_ZNNKngBB%PTh;LgL=2%&Os zN10&7H<;0nZIBZ69B5Y%o{yegA5j+!5Yo6B$qbbihDFqPc!qAJ`Q z7W8dU46p3E^27H~Tr7n!kr=@eKyNR<%i3qB#$vw1&qXAiZ zR)`{C^i5>s?#)F89o7Oz0i6J>d=%`J>Rc>&cP?mk5oHQC{$`ha*WB4LYUMa1G$|Aq z$zocnYKJe%>%*MGES;aJ@{y;SUg`W zl|Dc%hsy0@vBl(~tPED_lkXnBFDq_TBNA81S}_^f)u=djH%|3#-Th}hTTKR6?{v;= zn`>F!+lYKUA(dZkI8MX1#c~ypt>%}(e)*PaB`c(pgD$tLRH%opV6*Uo9$ zEul!~b^v2x!2u0#(X?~dAW5yM#T#oC${t7v-Ms<;m&>mtXJA-z$h}^-M@*FHAe<*f zldPl-RXHW1;pR8E3C=e$PpV4eUcywaAh|D=HwHfjgP`j?_xrA+GkN!au62=%%qHc! zL@r(gtd6-4{pBpBfaFt@%T7=-8hyTbw>L}C?e6j({$m0g`J|?OPEYmEYuXcIMR(Do zuNamb49#H_R!d`^MUxf1pnU~)`kbbH9vIJ5PrSR>8UP3^Z*9YR{~N}%xpY)I z3w`J|>0aqUXxjfLA2ou2(BY1Pc&F}UcIq5Y8 zr&*UzM36}YaiMvTPYWAEOk{$0PyVzRK78x_k3W9@tq(`V@ZRh0dei8ZqrG;vQJ8MH zr%rp>dO8~fmC(5I)vsiXx2s{l(D2_^tb(m)KYsq|lV{#^*QK}5>8RaHH)?|^sg(+i!bUcn8et_E$(R4B z*6uXbvfn5iyP1_cu_i}_s{7uG)@o^$2~XQ)rX}slkC&BdtLv!8+FjdBQ`3$U=n)*o zuYH1JxGZ&~nREanmwPq?YaHoJP+nq)1g^i_;XSzSixmDAE$9N-9x);Bjd70n5E-NY zEa*!Y&wT6SAOF_JKX*gbuljK-M&zP&2JbvWy1H90bu_b`+!w!kc5{+e;AK_uZmDrz zD>?)4c66}VsS{h|>Bm0(*khmm3vz(P^&o0RfZJQ$-LHSL)48eDy6F?wJa?7WE5xmc z9DFD%?|TISv=MGf7`x`ut?=C%;OCcNd_Eu@hw)hoF{eu8VZmQ#oXIJ;`ryUQQlSry zDMJ~>cmNej;)3D47f&{!uR!nO^91Lwcq{gYYpWaffR#2X$~tK=yIzb)Sg9Ds=8$sF zG76^kx6BNMkoaIqdEme>asWjYHJQ;MiNQqHA9&!|GiT17dzP9(uT)+E^Y-lfscOV_ zRHC#()M~eEsn0Ui0T<8l1XzVF=q?j)@ zUTTUXd=t~*0*u6@x7z1^t1!G(SnglQT)-2S2C&2Y!02EyZC^>)dc!P~ypR5-FtcC# z@|V8}yJ(hJd~;{5G^l@hnVXT1c?VF3h6shTD9;~gAs0+*nJqb+3QC|C1U9i;Z!+G- zj+5tFqD2rvw&j$)s0!%zM7&MJ)kG#Ha_FE=C(Q_X7Tm|Oow;27f~L5cU3R#lpvR}- z1a)G{%1d84PQk$jm)hChUkVMR#kl;YR?}h)vwE7C{M-~q>TW2xfTpnJ1pjG0HjnJ`Pu^Ey`cXleRrU+Ck zwrD$5T*psAU%gt~e{commY}ws=G6N$xck6E5q{X7=H9YdmvnyfLu59Z4#`qB5M@N6 zD=)D8@gvVYRU90=eC5uk$h)z=3M{1jOcb0$E)B{s49!Y)i{o9!O0IG-*=Nl~o zkjudUmIeTSf(^s~c${NkWME)C@c#e<15?BQcmF>!wK4!jkOAWv0J+=f1n9 zp5m?Uk73U>rY9T^sa*@Z?d6-u`k?oOtOuxJ=0c1THy5AJIa`SvxrQpS5wCCI{R_E^ z{qKwTh8DSwRO6GPzFPIn{pf6*tL^<+r#pAWechW_H;R+KMX|iJn2cwjC3J=TDSQsH zc6tu}k(~RN5S6`nrFBf9uXH`a-bn8n`YvauB`!wUYrEWvE6au0P2z~%XFY`WMJ(^X z$@AzCiN*yUr4dM7hOX~t50@we5rZ zwhNzkjrMa_yt6H2-{B+mBwpG4EW{QJ;~)2hv5WWTv*Vd>W`FDdE2Q5yz{c)TF7@~l z&o7rXC&nK74pus{;gq( zSvcYBqQtp}UqdUNNB(DUtmH}O?lsps_a_wd-zxSWWk%$m1piWesoo*-UMoii#aky> zFO9>}U&?*uI-VC?;679$Hist~Jplh4D~A9800000000000J;G(0f+&@0q_De0<;41 z1C#^O1P}zY2IvPK2Q&w$2iOQM2z&^b2@VNl3Ni|e3iu073xW&K43rGq4G0a+4mJ*| z4)_l+4{8tI5CRY?5K0id5d0A|5rPq_5#ADV5~dQ!67~}^6Mz%K6W|mg75Wxn7S0zc z7j_q@7!Vk$7~UCF8H5?u8d4h08vGk38&Vt499kTx9PAxB9e5qs9`GM8Hx4&uH`F)&I6gRDI`}(6JHR|lJf1xMJt{q7 zJ<2{VKA1k*KS)4iK(0ZGLB>KRLUuzwL(W6uL?A>uM5sk1MXE*aMi54nM+!$WN3ci= zNJ>a-NS;XMNkU1EN*qd@O9)GZOcqS4O+-zGP9jcpPn=KUP&iQVQ9M!LQWR1yQ#Mnm zR3uciRX$aCRlZi}S5#NPSUOo8Sx8yBS{_?UTfST_T@GDnU9?^VUlw0rU-DpVV8UTk zVZ>r8VrXKtV&-G2WPW6-WY%XQXQXHlXijL>X#Qy+X?|(&YG!JPYt(EAY%FYyY`|?Q zZw_x#a0YNXaH??(aVl|Eal&+jb<}nUcDi=>cT{)Gcqn@0dv1Had>(w%eIR{Qeg=M= ze*k|df69OafOLS6fV_bAfg*vrf=YsbgKmUmgxrO6g_4EhhEj*Nh!luuh~SAPiJpoc zie!rPizJJji~@`(j82TujV6tXjp&aOk7AHYkaUo+kkFBMk{Xk+lpd87m1LF`mJrDmm^r#h(C zsO+g6sZOb!skW+Os~)RdtKO`@tt72xt;nu4u86L>uMV$bue`7lu&%L8v81v3vWT-{ zv*xr=wA!_Hwh*>Fw&1tixPZG7zjVMHz-+-d!gRwp#N5Rk#bCvl#puRf#?Hq=$Lh!) z$cD(W$mq!~$^6Px&Fapk(ni$0)fCm1)+pJ|+3?)R-0IyP-Gts6-iF@*-#*{K;N0O3 z;dbHb;u7MHI~{=>cr~+>!|Ev?k?_p?=tVi@ILT_ z@aFN7@&NL3^0@O>^U44Kc${NkWME)C!|cPL&Hw^TK+Fh)3=9rnJ_7(F6ak3qROc@s_d3v&YvPcUzx=Cw#&cq=s9 zvz=5d5aA88gE~GjyLgFj%pM{UFfZYi_`tl3Jx4IF;+->KUW4!aU|z>l_Yw03>Tb-u ziO7A=+@PHA%v-2?+c<Qv>CoVn@T*qIjy=Zti3Gr}dqnTzhVi(@)PRfko%6SVAq$f&HgJ_>u@ zeixF|e{36&6i;l%OjHsp8WWsTjv-e#9w%~|oV2vels2+ZMI|WHSmjbDMp7HnC^b1x z4P{qH*^rc`pVOmp#y*F0K7A{nQMxgOj(WW_ayFbf^JA6$%XZ(sy^A=v_Z_5#_52HR zhywutc${@t1(fT^mHqG8mbtq>%uIe@Cd^7E1IdJ$nHfq_S*o_A(yuDnR)?9HnVFdx zcQ;E}-YhdSQ}&i@cRKt3_UWSnO9ij)yZ6>HKGy#I=!eHnA3Mh%ecwNhF)?+hOFasx zPXij#h{iObDecfM?a^^MK_}@Hok!=>1#~4kO;@I?&{gSbbRk_tSEp;xHR)P(ZMqI! zm##=|*&83h5?vQ@WULMwif~bQxVvH$V0Rx&>W9x1?Lqt?4#&Te=^gen&eSkhlAEFP_N9d#UG5R=tf<8%~qEFLj=(F@W z`aFGszDQr9FVk1(tMoPcI(>t_N#CMx(|72*^ga41`f2(Z`abx|3d#t|3?2#|3Uvr|3&{z|3g1w4*=#4ce%#__j$lW9`Tqb zJmnqU+<#Z`g{Yv zA>W8^%pu=|Z^{?*&G-_&lrQ7U`R05JzJhPbx8hs#ZTPl)JH9>Nf$zw7;yd$Q_^y06 zzB}K8@5%S#dmp=q@5A@y`|k7!Vl$#@x%EM{78NjKbjxIkLAblGgiFMbI!Tok~LR+h7DVGT=RmLyyAur_=)@^elkCWpUO|;r}H!Tnfxq% zHa~}-%g^KI^9%Te{33oazl2}PFXNZW_>KG~elx#?-^y>} zxAQyro%}9-H@}D9%kSg&^9T5Y{2~4@e}q5EALEbnC-{^6DgHEnhCj=n24{ z{xW}szsg_Zuk$zfoBS>QHh+h|%ir6bDI;fk6-Guctu#HANRbZ<6&oGpIz3(~nS_<9 zqzUbrS{T`@OXZqzB2?ZK+9_S`snR-;8c}RtDbz}uzRh%{W=)Vtc_7VLCaDZ_nTog> zrCO)C3@g!eO>JG^)ZFR$pe}8d3!9DNT-V7g$5{QeR(T?mZl)G;pvqEPJ#&M0%3LQq zI(E9MZJ5X^*G(Vmj2b70bs1;EIGLPW3KwUED8oWy;o7J&?Jjjv@3^IM?r>YXGZD*3 z>-nZV$W=L)i7Kb5a#3BO; zsLIi1Hj%ra5UV&TdzmZp%e%3)mv$l-_ZwZiI+EQLHZt~)?aC6Pt4ObQ5SVx#>V-73 zTrY=*hZD?l70*paB;_ztE~?|XMC9ut%FT3LY=>H^G65X=qQsyo>0yEOYLFNeMNuw$ zcHUHSG}Ek_KiBw_?X*Y|LE1XW5%E>|%Qg2aX zbNn`3YLiq5pAB>+OHAH~OzU7BF$|a_%1zhBHo&%By{s!;hOshnF2_f@h6(15m9A|! zQE56og6OK+InwemPfT5jJlNN|$VESrSY|ADHs#?$ofO5SeQqOWE2P4#86|R|MCky% zk=1pXv_S4Iu=jqffl*lw_U%k13BqV(B=bNP6;jZj`(~^Ts^biyz>-S2v{NTBcj>}5 zq(NWOF2|&DsM1D&wr%$h-=00NBD7VoQ4+j8>v- z?6KnC5QSU~QLabuHR}vQ6CfwuteCEg?Ut2ZW!k!-Kgc{+){UaNv8al~?!>w*W$X|R znd@qhAgN=Zb}-Wh2P0)am!hodDDWTHW@0mCoK`5Gt2E+xyVDZiVXe6~(gX;n6S{Z##TQqrKosIY zgBNstaL`|8&|(<*J%dV&20Whc}Am1%?vYOy9@as}qETL1| zXi^yvW9-7LF5Lhm-l8|KF%mz)47GGxyKH<|3nNc|xrj!~Dv~MK89-WA7`L#2EEmd% zUg}ZWZ=Ycr;J^~8r|V)%wYC%$2*K@aD`D!9wR_myg!0F^I!3^N1W*MetI@#a&}Fia z%Hn{Ikn6+;W4pxw6oee?ovF1EJ2NBw0b^CMD5`;zkS4I?AOh+6o-SI8u5`BPsv?Q{ zXvy3(0}t336OL_-g;aV8*kJpIM^#Aa>T2)k#GYApMI3|F6i6xbr!zpiZlw%Z!Vn_g z5wn@fm2k4%N?+uuMia;Fd#6Y<(`=DB1o)Ahm~eVn3zfD#w4@mc+Z2TaQ0IM7Cw|Vp z@Vq2f9kH}v|3XLmNY6fWz~@gFWix6a6iH*6zL)+~n&GAlqrIpGP&Ek4=MRK+ zf&i}7+QuT^Rtt#Oq^oBAW~```n1RETLFQ6%900Rh|ucsX-EU(>kwC91(-9fdE}%-Y^5<19O>n`@-}Q z46j3hay7Jeye`60JK5itPlFL`PfGhYxhG1Fou~-f~s*DMgSd#KHi?9yumPV6VRCiKUkeZqtlUTiQ02c-&Z}2 z**MG9YHWd=I0GnDIe|}JC}gwuGJUJONUlb$dkHfL9n63fb5V`(LbLXETeHv+VLuXMgcDHJ|wJ*!8i0$5?&k9?)g`tFb3>xI3T%B4M;aZ5=Si%nozcz0U zCf+M-8=YC+bp2^|v{mplB6br|!<0kO{57C!A&9+2E%&{j1fGQnJQ+FNlW+p&_)jn; zJb&sn1@l7Sz<&X@Di$JGJCVV<2yM?bmA-VemO{UbY3pCMt%2uIBkLlVYlFFm2x#FU zYj!sNc@vBwOfg(D%n&XZmF-knH9S)zQ({qhw<(fBcK5M>qec<&Jo$e;LKrn?_m%Pa z=jaP%ea`Ov>Kr2^XZKaf1?TAVEOhp;Mj{2z9>R*#=ja0rkOUY0zrVDSdiETx1wHSq zZru5FS4N`ggJB|J<-j{no%l=)LGNCGU{ThIl|uH0K1bTz**zlfYj&;k7{>827_zJc&fbe#t3tHN6{A&V#u~p#%t&nd1Uhc1sCOKgd*82bkZd9tH_L zku}n((;@~|ZA+UL$qISILJ);y8hbK@B8NtUPc{-8MzYam(t#^KHS@O=+aTdon!#{^ zKJ5e^xokq52O@E5sSc19Hq^7wPa1odHFg>JEc9n&$8D}l_ySx8p%oj_9kzDeBIqY$ zQG$^C)mwP7faRYB-Zp4Ef{xDMB5|?lBw0SdTh=eV=fl4W@N63@EyO^reMW%_OgCoe z?!#9i?4YPzHWPzSTi1f@^!Gz#XJA_v_g63z!v{&(wKWVw9f33JPF>k0@g0wyS@P~G^SNlf8m1V8o{|q3#E@i3aW`z01HzU~W9=L$3+_sadW;KHScYK8RCeGwdl(fLV7pY% PTwI$BE<67V$F61&bYTzk literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.woff2 b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-brands-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..2acd92d78fcbf7794e5c03f3b580f60b9305c8dc GIT binary patch literal 78472 zcmV(`K-0f>Pew8T0RR910WydH4FCWD0u@960WvNDONF5T00000000000000000000 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

GeiDTd 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.eot b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.eot new file mode 100644 index 0000000000000000000000000000000000000000..21808cc74b4894d5a43e3062729225097d9582ed GIT binary patch literal 34350 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℘?hW)Ts# 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 + + + +Created by FontForge 20200314 at Wed Jan 13 11:57:54 2021 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.ttf b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2775fa1e16f5acde9c37852ed01f009bf1ca2792 GIT binary patch literal 34052 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 S`M)Di_+IM|C>n~+>HiDY3xA9N literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.woff b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-regular-400.woff new file mode 100644 index 0000000000000000000000000000000000000000..e4acf9193fc37803cd524cb2e6a57bcea8caca11 GIT binary patch literal 16776 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 aueZU3d1dPmCNApWs_bP53vP>X4%m{}NRD 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 + + + +Created by FontForge 20200314 at Wed Jan 13 11:57:55 2021 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.ttf b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000000000000000000000000000000000000..bc640928c36e0d678aa1d199dd128602f4c7f97c GIT binary patch literal 204528 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 N@t^#^6n6Z>e*u;g-iH7H literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.woff b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.woff new file mode 100644 index 0000000000000000000000000000000000000000..7a14a11eb7d8746f60f949ee2b159c2460d1c0f2 GIT binary patch literal 104280 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 z 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.woff2 b/section7/eazyschool-end/src/main/resources/static/assets/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..9a4633d9c4eccaa7c60974214eac25a62f6d2289 GIT binary patch literal 80252 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�tM34^MY1QD(;HrI9KuqY&HVUS@jw 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 + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +

+ + + +
+
+
+

About Us

+
+
+
+
+ + + +
+
+
+

Our Team

+

Meet our Teachers

+
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+ + + +
+
+
+
+ +
+
+

Our Environment

+

Clean & Safe Environment

+

Eazy School maintains the Safest environment for both teachers and students + by sanitizing the schools daily. Enough security is in place with the help of + dedicated security team and cameras inside the campus.

+ +
+
+
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/contact.html b/section7/eazyschool-end/src/main/resources/templates/contact.html new file mode 100644 index 00000000..80332e67 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/contact.html @@ -0,0 +1,213 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Contact Us

+ +
+
+
+ + + +
+
+
+

Get In Touch

+

Contact Us

+
+
+
+
    +
+ +
+
+
+
+
+
+ +
+
+
School Address
+

Eazy School, 10001, 5th Avenue, #06 lane street, NY - 10017.

+
+
+
+
+ +
+
+
Call Us
+

+1(21) 673 4587

+
+
+
+
+ +
+
+
Email Us
+

info@eazyschool.com

+
+
+
+
+ +
+
+
Customer Support
+

support@eazyschool.com

+
+
+
+
+
+
+
+
+ +
+ +
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/courses.html b/section7/eazyschool-end/src/main/resources/templates/courses.html new file mode 100644 index 00000000..7e674e99 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/courses.html @@ -0,0 +1,259 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Courses

+ +
+
+
+ + + +
+
+
+

Best Courses

+

Find The Right Course For You

+
+
+
+
+
+ +
+ Education +
+
+
+
+
    +
  • 43 Lesson
  • +
  • 4.9
  • +
+
+

Educational Programs

+

Educations programmes covering core concepts of Maths, + English, Science.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 72 Lesson
  • +
  • 4.6
  • +
+
+

Best Meditation Classes

+

Special program focusing the meditation to encourage students + from early age.

+
+
+
+
+
+
+ +
+ Games +
+
+
+
+
    +
  • 14 Lesson
  • +
  • 5.0
  • +
+
+

Games Program in a Week

+

Games program encouraging the children on the physical + activities.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 23 Lesson
  • +
  • 5.0
  • +
+
+

Development Programs

+

Special development courses for special needs children to improve their confidence.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 40 Lesson
  • +
  • 4.6
  • +
+
+

Best Music Classes

+

Music dedicated programmes for the music interested students.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 20 Lesson
  • +
  • 4.8
  • +
+
+

Painting Programs

+

Art & Design programmes for the children to improve their drawing skills.

+
+
+
+
+
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/dashboard.html b/section7/eazyschool-end/src/main/resources/templates/dashboard.html new file mode 100644 index 00000000..18a28b0d --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/dashboard.html @@ -0,0 +1,136 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Dashboard

+ +
+
+
+ + + +
+
+
+

+

+
+ +
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/footer.html b/section7/eazyschool-end/src/main/resources/templates/footer.html new file mode 100644 index 00000000..947c30a9 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/footer.html @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/header.html b/section7/eazyschool-end/src/main/resources/templates/header.html new file mode 100644 index 00000000..06558302 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/header.html @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/holidays.html b/section7/eazyschool-end/src/main/resources/templates/holidays.html new file mode 100644 index 00000000..9fd96b6d --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/holidays.html @@ -0,0 +1,170 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Holidays

+ +
+
+
+ + + +
+
+
+
Eazy School
+

Awesome Holidays

+
+
+
+
Festival Holidays
+
+
+
+
+

+
+
+
+
+
+
+
+
+ +
+
Federal Holidays
+
+
+
+

+
+
+
+
+
+
+
+
+
+
+ + + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/home.html b/section7/eazyschool-end/src/main/resources/templates/home.html new file mode 100644 index 00000000..feff67c5 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/home.html @@ -0,0 +1,442 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + +
...
+ + + +
+ +
+ + + +
+
+
+

Best Features

+

Achieve Your Goals With Eazy School

+
+
+
+
+
+

Expert Teachers

+

Well experienced teachers for each subject. No common teacher for all subjects.

+
+
+
+
+
+

Quality Education

+

Best curriculum based on the Cambridge international framework.

+
+
+
+
+
+

Alumni Support

+

Life time Alumni support through various channels available .

+
+
+
+
+
+

Best Scholarships

+

Best Scholarships available for the low income family students.

+
+
+
+
+
+ + + +
+
+
+
+
+ +
+
+
Get an Appointment Today!
+

Call today to know more details
and to talk with our expert.

+ 1-800-856-4321 +
+
+
+

We Are The Best Choice For Your Child

+

With over 20 years of experience, best teachers, world-class infrastructure, + larger Alumni community, we are the best choice for your child education.

+
    +
  • Special Education
  • +
  • Access more than 100K online courses
  • +
  • Traditional Academies
  • +
+ Apply Now +
+
+
+
+ + + +
+
+
+

Why Choose Us

+

Experienced Teachers And Safe environment

+
+
+
+ +
+ +
+
+
+ + + +
+
+
+

Our Statistics

+

We are Proud to Share with You

+
+
+
+
+ +
+

Current Students

+
+
+
+
+ +
+

Our Branches

+
+
+
+
+ +
+

Total Courses

+
+
+
+
+ +
+

Awards Won

+
+
+
+
+
+ + + +
+
+
+
+
+
    +
  • + client image +
    I am very happy that my son is studying in the + Eazy school. The support provided by the teachers is great and the curriculum + that they follow is of international standards. +
    +
    - Mario Spe
    +
  • + +
  • + client image +
    My child never felt pressure of studies in + the Eazy School. He is always encouraged to follow his own interest + and the school provides wide variety of programs for the students + outside studies. +
    +
    - Petey Cru
    +
  • +
  • + client image +
    Loved the infrastructure and cleanly + environment that school maintains. This is very important + in the current pandemic situations. +
    +
    - Anna Sth
    +
  • +
  • + client image +
    With the help of Cambridge + authorized programs, teachers always + enhancing my child classroom experiences + by applying new ideas & approaches. +
    +
    - Gail For
    +
  • +
  • + client image +
    Eazy Schools supports both online and offline + classes based on the pandemic conditions to make sure that there is + no impact on the children studies. School staff always does their + best to accommodate parents request. +
    +
    - Boye Fra
    +
  • +
+
+
+
+
+
+ + + +
+
+
+

Best Courses

+

Wide variety of Courses for your Child

+
+
+
+
+
+ +
+ Education +
+
+
+
+
    +
  • 43 Lesson
  • +
  • 4.9
  • +
+
+

Educational Programs

+

Educations programmes covering core concepts of Maths, + English, Science.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 72 Lesson
  • +
  • 4.6
  • +
+
+

Best Meditation Classes

+

Special program focusing the meditation to encourage students + from early age.

+
+
+
+
+
+
+ +
+ Games +
+
+
+
+
    +
  • 14 Lesson
  • +
  • 5.0
  • +
+
+

Games Program in a Week

+

Games program encouraging the children on the physical + activities.

+
+
+
+
+ +
+
+ + + +
+
+
+
+

Call To Enroll Your Child

+

Begin the change today!

+
+ +
+
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-end/src/main/resources/templates/login.html b/section7/eazyschool-end/src/main/resources/templates/login.html new file mode 100644 index 00000000..f8102aa0 --- /dev/null +++ b/section7/eazyschool-end/src/main/resources/templates/login.html @@ -0,0 +1,151 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

LogIn

+ +
+
+
+ + + +
+
+
+

LogIn

+
+ +
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section_12/springsecOAUTH2GitHub/src/test/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplicationTests.java b/section7/eazyschool-end/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java similarity index 62% rename from section_12/springsecOAUTH2GitHub/src/test/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplicationTests.java rename to section7/eazyschool-end/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java index 9c93459f..2415091f 100644 --- a/section_12/springsecOAUTH2GitHub/src/test/java/com/eazybytes/springsecOAUTH2GitHub/SpringsecOauth2GitHubApplicationTests.java +++ b/section7/eazyschool-end/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java @@ -1,10 +1,10 @@ -package com.eazybytes.springsecOAUTH2GitHub; +package com.eazybytes.eazyschool; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest -class SpringsecOauth2GitHubApplicationTests { +class EazyschoolApplicationTests { @Test void contextLoads() { diff --git a/section_13/springsecsection_13/.gitignore b/section7/eazyschool-start/.gitignore similarity index 100% rename from section_13/springsecsection_13/.gitignore rename to section7/eazyschool-start/.gitignore diff --git a/section7/eazyschool-start/.mvn/wrapper/MavenWrapperDownloader.java b/section7/eazyschool-start/.mvn/wrapper/MavenWrapperDownloader.java new file mode 100644 index 00000000..e76d1f32 --- /dev/null +++ b/section7/eazyschool-start/.mvn/wrapper/MavenWrapperDownloader.java @@ -0,0 +1,117 @@ +/* + * Copyright 2007-present the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import java.net.*; +import java.io.*; +import java.nio.channels.*; +import java.util.Properties; + +public class MavenWrapperDownloader { + + private static final String WRAPPER_VERSION = "0.5.6"; + /** + * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided. + */ + private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/" + + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar"; + + /** + * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to + * use instead of the default one. + */ + private static final String MAVEN_WRAPPER_PROPERTIES_PATH = + ".mvn/wrapper/maven-wrapper.properties"; + + /** + * Path where the maven-wrapper.jar will be saved to. + */ + private static final String MAVEN_WRAPPER_JAR_PATH = + ".mvn/wrapper/maven-wrapper.jar"; + + /** + * Name of the property which should be used to override the default download url for the wrapper. + */ + private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl"; + + public static void main(String args[]) { + System.out.println("- Downloader started"); + File baseDirectory = new File(args[0]); + System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath()); + + // If the maven-wrapper.properties exists, read it and check if it contains a custom + // wrapperUrl parameter. + File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH); + String url = DEFAULT_DOWNLOAD_URL; + if(mavenWrapperPropertyFile.exists()) { + FileInputStream mavenWrapperPropertyFileInputStream = null; + try { + mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile); + Properties mavenWrapperProperties = new Properties(); + mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream); + url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url); + } catch (IOException e) { + System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'"); + } finally { + try { + if(mavenWrapperPropertyFileInputStream != null) { + mavenWrapperPropertyFileInputStream.close(); + } + } catch (IOException e) { + // Ignore ... + } + } + } + System.out.println("- Downloading from: " + url); + + File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH); + if(!outputFile.getParentFile().exists()) { + if(!outputFile.getParentFile().mkdirs()) { + System.out.println( + "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'"); + } + } + System.out.println("- Downloading to: " + outputFile.getAbsolutePath()); + try { + downloadFileFromURL(url, outputFile); + System.out.println("Done"); + System.exit(0); + } catch (Throwable e) { + System.out.println("- Error downloading"); + e.printStackTrace(); + System.exit(1); + } + } + + private static void downloadFileFromURL(String urlString, File destination) throws Exception { + if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) { + String username = System.getenv("MVNW_USERNAME"); + char[] password = System.getenv("MVNW_PASSWORD").toCharArray(); + Authenticator.setDefault(new Authenticator() { + @Override + protected PasswordAuthentication getPasswordAuthentication() { + return new PasswordAuthentication(username, password); + } + }); + } + URL website = new URL(urlString); + ReadableByteChannel rbc; + rbc = Channels.newChannel(website.openStream()); + FileOutputStream fos = new FileOutputStream(destination); + fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE); + fos.close(); + rbc.close(); + } + +} diff --git a/section7/eazyschool-start/.mvn/wrapper/maven-wrapper.jar b/section7/eazyschool-start/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..2cc7d4a55c0cd0092912bf49ae38b3a9e3fd0054 GIT binary patch literal 50710 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 EfAhh=DF6Tf literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/.mvn/wrapper/maven-wrapper.properties b/section7/eazyschool-start/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..a9f1ef87 --- /dev/null +++ b/section7/eazyschool-start/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,2 @@ +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar diff --git a/section_13/springsecsection_13/mvnw b/section7/eazyschool-start/mvnw old mode 100755 new mode 100644 similarity index 94% rename from section_13/springsecsection_13/mvnw rename to section7/eazyschool-start/mvnw index 8a8fb228..a16b5431 --- a/section_13/springsecsection_13/mvnw +++ b/section7/eazyschool-start/mvnw @@ -36,10 +36,6 @@ if [ -z "$MAVEN_SKIP_RC" ] ; then - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - if [ -f /etc/mavenrc ] ; then . /etc/mavenrc fi @@ -149,7 +145,7 @@ if [ -z "$JAVACMD" ] ; then JAVACMD="$JAVA_HOME/bin/java" fi else - JAVACMD="`\\unset -f command; \\command -v java`" + JAVACMD="`which java`" fi fi @@ -216,9 +212,9 @@ else echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." fi if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" fi while IFS="=" read key value; do case "$key" in (wrapperUrl) jarUrl="$value"; break ;; @@ -237,9 +233,9 @@ else echo "Found wget ... using wget" fi if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + wget "$jarUrl" -O "$wrapperJarPath" else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" fi elif command -v curl > /dev/null; then if [ "$MVNW_VERBOSE" = true ]; then @@ -309,8 +305,6 @@ WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain exec "$JAVACMD" \ $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/section_12/springsecOAUTH2GitHub/mvnw.cmd b/section7/eazyschool-start/mvnw.cmd similarity index 84% rename from section_12/springsecOAUTH2GitHub/mvnw.cmd rename to section7/eazyschool-start/mvnw.cmd index 1d8ab018..c8d43372 100644 --- a/section_12/springsecOAUTH2GitHub/mvnw.cmd +++ b/section7/eazyschool-start/mvnw.cmd @@ -46,8 +46,8 @@ if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") @REM Execute a user defined script before this one if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre @REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* +if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" +if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" :skipRcPre @setlocal @@ -120,9 +120,9 @@ SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" +set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( +FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B ) @@ -134,7 +134,7 @@ if exist %WRAPPER_JAR% ( ) ) else ( if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" ) if "%MVNW_VERBOSE%" == "true" ( echo Couldn't find %WRAPPER_JAR%, downloading it ... @@ -158,13 +158,7 @@ if exist %WRAPPER_JAR% ( @REM work with both Windows and non-Windows executions. set MAVEN_CMD_LINE_ARGS=%* -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* if ERRORLEVEL 1 goto error goto end @@ -174,15 +168,15 @@ set ERROR_CODE=1 :end @endlocal & set ERROR_CODE=%ERROR_CODE% -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost @REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" +if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" +if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" :skipRcPost @REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause +if "%MAVEN_BATCH_PAUSE%" == "on" pause -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% +if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% -cmd /C exit /B %ERROR_CODE% +exit /B %ERROR_CODE% diff --git a/section7/eazyschool-start/pom.xml b/section7/eazyschool-start/pom.xml new file mode 100644 index 00000000..0c5dfda8 --- /dev/null +++ b/section7/eazyschool-start/pom.xml @@ -0,0 +1,66 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.3.0 + + + com.eazybytes + eazyschool-start + 0.0.1-SNAPSHOT + eazyschool-start + Eazy School Web Application + + 21 + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.springframework.boot + spring-boot-devtools + runtime + true + + + org.projectlombok + lombok + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-security + + + org.thymeleaf.extras + thymeleaf-extras-springsecurity6 + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java new file mode 100644 index 00000000..b2e8cec1 --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/EazyschoolApplication.java @@ -0,0 +1,13 @@ +package com.eazybytes.eazyschool; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class EazyschoolApplication { + + public static void main(String[] args) { + SpringApplication.run(EazyschoolApplication.class, args); + } + +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..759c7e45 --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/ProjectSecurityConfig.java @@ -0,0 +1,59 @@ +package com.eazybytes.eazyschool.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.Customizer; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.provisioning.InMemoryUserDetailsManager; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; + +@Configuration +public class ProjectSecurityConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + + http.csrf((csrf) -> csrf.disable()) + .authorizeHttpRequests((requests) -> requests.requestMatchers("/dashboard").permitAll() + .requestMatchers("/", "/home", "/holidays/**", "/contact", "/saveMsg", + "/courses", "/about", "/assets/**").permitAll()) + .formLogin(Customizer.withDefaults()) + .httpBasic(Customizer.withDefaults()); + + return http.build(); + } + + @Bean + public UserDetailsService userDetailsService() { + UserDetails user = User.withUsername("user") + .password("{noop}EazyBytes@12345").authorities("read").build(); + UserDetails admin = User.withUsername("admin") + .password("{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m") + .authorities("admin").build(); + return new InMemoryUserDetailsManager(user, admin); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + + +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java new file mode 100644 index 00000000..e35d5b8f --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/config/WebConfig.java @@ -0,0 +1,16 @@ +package com.eazybytes.eazyschool.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@Configuration +public class WebConfig implements WebMvcConfigurer { + + @Override + public void addViewControllers(ViewControllerRegistry registry) { + registry.addViewController("/courses").setViewName("courses"); + registry.addViewController("/about").setViewName("about"); + } + +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java new file mode 100644 index 00000000..1e680b62 --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/ContactController.java @@ -0,0 +1,63 @@ +package com.eazybytes.eazyschool.controller; + +import com.eazybytes.eazyschool.model.Contact; +import com.eazybytes.eazyschool.service.ContactService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.Errors; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.context.annotation.RequestScope; +import org.springframework.web.context.annotation.SessionScope; +import org.springframework.web.servlet.ModelAndView; + +import jakarta.validation.Valid; + +import static org.springframework.web.bind.annotation.RequestMethod.POST; + +@Slf4j +@Controller +public class ContactController { + + private final ContactService contactService; + + @Autowired + public ContactController(ContactService contactService) { + this.contactService = contactService; + } + + @RequestMapping("/contact") + public String displayContactPage(Model model) { + model.addAttribute("contact", new Contact()); + return "contact.html"; + } + + /*@RequestMapping(value = "/saveMsg",method = POST) + public ModelAndView saveMessage(@RequestParam String name, @RequestParam String mobileNum, + @RequestParam String email, @RequestParam String subject, @RequestParam String message) { + log.info("Name : " + name); + log.info("Mobile Number : " + mobileNum); + log.info("Email Address : " + email); + log.info("Subject : " + subject); + log.info("Message : " + message); + return new ModelAndView("redirect:/contact"); + }*/ + + @RequestMapping(value = "/saveMsg",method = POST) + public String saveMessage(@Valid @ModelAttribute("contact") Contact contact, Errors errors) { + if(errors.hasErrors()){ + log.error("Contact form validation failed due to : " + errors.toString()); + return "contact.html"; + } + contactService.saveMessageDetails(contact); + contactService.setCounter(contactService.getCounter()+1); + log.info("Number of times the Contact form is submitted : "+contactService.getCounter()); + return "redirect:/contact"; + } + + + +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java new file mode 100644 index 00000000..2204695d --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/DashboardController.java @@ -0,0 +1,22 @@ +package com.eazybytes.eazyschool.controller; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.core.Authentication; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +@Slf4j +@Controller +public class DashboardController { + + @RequestMapping("/dashboard") + public String displayDashboard(Model model,Authentication authentication) { + if(null != authentication) { + model.addAttribute("username", authentication.getName()); + model.addAttribute("roles", authentication.getAuthorities().toString()); + } + return "dashboard.html"; + } + +} \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java new file mode 100644 index 00000000..bd389f5b --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HolidaysController.java @@ -0,0 +1,47 @@ +package com.eazybytes.eazyschool.controller; + +import com.eazybytes.eazyschool.model.Holiday; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +@Slf4j +@Controller +public class HolidaysController { + + @GetMapping("/holidays/{display}") + public String displayHolidays(@PathVariable String display,Model model) { + if(null != display && display.equals("all")){ + model.addAttribute("festival",true); + model.addAttribute("federal",true); + }else if(null != display && display.equals("federal")){ + model.addAttribute("federal",true); + }else if(null != display && display.equals("festival")){ + model.addAttribute("festival",true); + } + List holidays = Arrays.asList( + new Holiday(" Jan 1 ","New Year's Day", Holiday.Type.FESTIVAL), + new Holiday(" Oct 31 ","Halloween", Holiday.Type.FESTIVAL), + new Holiday(" Nov 24 ","Thanksgiving Day", Holiday.Type.FESTIVAL), + new Holiday(" Dec 25 ","Christmas", Holiday.Type.FESTIVAL), + new Holiday(" Jan 17 ","Martin Luther King Jr. Day", Holiday.Type.FEDERAL), + new Holiday(" July 4 ","Independence Day", Holiday.Type.FEDERAL), + new Holiday(" Sep 5 ","Labor Day", Holiday.Type.FEDERAL), + new Holiday(" Nov 11 ","Veterans Day", Holiday.Type.FEDERAL) + ); + Holiday.Type[] types = Holiday.Type.values(); + for (Holiday.Type type : types) { + model.addAttribute(type.toString(), + (holidays.stream().filter(holiday -> holiday.getType().equals(type)).collect(Collectors.toList()))); + } + return "holidays.html"; + } + +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java new file mode 100644 index 00000000..cf8235b7 --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/HomeController.java @@ -0,0 +1,15 @@ +package com.eazybytes.eazyschool.controller; + +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +public class HomeController { + + @RequestMapping(value={"", "/", "home"}) + public String displayHomePage() { + return "home.html"; + } + +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java new file mode 100644 index 00000000..afc1e37e --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/controller/LoginController.java @@ -0,0 +1,19 @@ +package com.eazybytes.eazyschool.controller; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; + +@Slf4j +@Controller +public class LoginController { + + @RequestMapping(value = "/login", method = {RequestMethod.GET}) + public String displayLoginPage() { + return "login.html"; + } + +} \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Contact.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Contact.java new file mode 100644 index 00000000..82c16eae --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Contact.java @@ -0,0 +1,40 @@ +package com.eazybytes.eazyschool.model; + +import lombok.Data; +import org.hibernate.validator.constraints.CreditCardNumber; + +import jakarta.validation.constraints.*; + +/* +@Data annotation is provided by Lombok library which generates getter, setter, +equals(), hashCode(), toString() methods & Constructor at compile time. +This makes our code short and clean. +* */ +@Data +public class Contact { + + /* + * @NotNull: Checks if a given field is not null but allows empty values & zero elements inside collections. + @NotEmpty: Checks if a given field is not null and its size/length is greater than zero. + @NotBlank: Checks if a given field is not null and trimmed length is greater than zero. + * */ + @NotBlank(message="Name must not be blank") + @Size(min=3, message="Name must be at least 3 characters long") + private String name; + + @NotBlank(message="Mobile number must not be blank") + @Pattern(regexp="(^$|[0-9]{10})",message = "Mobile number must be 10 digits") + private String mobileNum; + + @NotBlank(message="Email must not be blank") + @Email(message = "Please provide a valid email address" ) + private String email; + + @NotBlank(message="Subject must not be blank") + @Size(min=5, message="Subject must be at least 5 characters long") + private String subject; + + @NotBlank(message="Message must not be blank") + @Size(min=10, message="Message must be at least 10 characters long") + private String message; +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Holiday.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Holiday.java new file mode 100644 index 00000000..80752ce9 --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/model/Holiday.java @@ -0,0 +1,15 @@ +package com.eazybytes.eazyschool.model; + +import lombok.Data; + +@Data +public class Holiday { + + private final String day; + private final String reason; + private final Type type; + + public enum Type { + FESTIVAL, FEDERAL + } +} diff --git a/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/service/ContactService.java b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/service/ContactService.java new file mode 100644 index 00000000..8e4c258f --- /dev/null +++ b/section7/eazyschool-start/src/main/java/com/eazybytes/eazyschool/service/ContactService.java @@ -0,0 +1,47 @@ +package com.eazybytes.eazyschool.service; + +import com.eazybytes.eazyschool.model.Contact; +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Service; +import org.springframework.web.context.annotation.ApplicationScope; +import org.springframework.web.context.annotation.RequestScope; +import org.springframework.web.context.annotation.SessionScope; + +/* +@Slf4j, is a Lombok-provided annotation that will automatically generate an SLF4J +Logger static property in the class at compilation time. +* */ +@Slf4j +@Service +// @RequestScope +// @SessionScope +@ApplicationScope +public class ContactService { + + private int counter = 0; + + public ContactService(){ + System.out.println("Contact Service Bean initialized"); + } + + /** + * Save Contact Details into DB + * @param contact + * @return boolean + */ + public boolean saveMessageDetails(Contact contact){ + boolean isSaved = true; + //TODO - Need to persist the data into the DB table + log.info(contact.toString()); + return isSaved; + } + + public int getCounter() { + return counter; + } + + public void setCounter(int counter) { + this.counter = counter; + } +} diff --git a/section7/eazyschool-start/src/main/resources/application.properties b/section7/eazyschool-start/src/main/resources/application.properties new file mode 100644 index 00000000..64fbec6b --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/application.properties @@ -0,0 +1,4 @@ +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +# Use this pattern to display the log in a readable format +logging.pattern.console= ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/static/assets/css/style-starter.css b/section7/eazyschool-start/src/main/resources/static/assets/css/style-starter.css new file mode 100644 index 00000000..9e38c328 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/static/assets/css/style-starter.css @@ -0,0 +1,21279 @@ +@charset "UTF-8"; + +/*-- +Author: W3layouts +Author URL: http://w3layouts.com +--*/ +/*! + * Bootstrap v5.0.1 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors + * Copyright 2011-2021 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +:root { + --bs-blue: #0d6efd; + --bs-indigo: #6610f2; + --bs-purple: #6f42c1; + --bs-pink: #d63384; + --bs-red: #dc3545; + --bs-orange: #fd7e14; + --bs-yellow: #ffc107; + --bs-green: #198754; + --bs-teal: #20c997; + --bs-cyan: #0dcaf0; + --bs-white: #fff; + --bs-gray: #6c757d; + --bs-gray-dark: #343a40; + --bs-primary: #0d6efd; + --bs-secondary: #6c757d; + --bs-success: #198754; + --bs-info: #0dcaf0; + --bs-warning: #ffc107; + --bs-danger: #dc3545; + --bs-light: #f8f9fa; + --bs-dark: #212529; + --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth; + } +} + +body { + margin: 0; + font-family: var(--bs-font-sans-serif); + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +hr { + margin: 1rem 0; + color: inherit; + background-color: currentColor; + border: 0; + opacity: 0.25; +} + +hr:not([size]) { + height: 1px; +} + +h6, +.h6, +h5, +.h5, +h4, +.h4, +h3, +.h3, +h2, +.h2, +h1, +.h1 { + margin-top: 0; + margin-bottom: 0.5rem; + font-weight: 500; + line-height: 1.2; +} + +h1, +.h1 { + font-size: calc(1.375rem + 1.5vw); +} + +@media (min-width: 1200px) { + + h1, + .h1 { + font-size: 2.5rem; + } +} + +h2, +.h2 { + font-size: calc(1.325rem + 0.9vw); +} + +@media (min-width: 1200px) { + + h2, + .h2 { + font-size: 2rem; + } +} + +h3, +.h3 { + font-size: calc(1.3rem + 0.6vw); +} + +@media (min-width: 1200px) { + + h3, + .h3 { + font-size: 1.75rem; + } +} + +h4, +.h4 { + font-size: calc(1.275rem + 0.3vw); +} + +@media (min-width: 1200px) { + + h4, + .h4 { + font-size: 1.5rem; + } +} + +h5, +.h5 { + font-size: 1.25rem; +} + +h6, +.h6 { + font-size: 1rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-bs-original-title] { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + -webkit-text-decoration-skip-ink: none; + text-decoration-skip-ink: none; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul { + padding-left: 2rem; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: 0.5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small, +.small { + font-size: 0.875em; +} + +mark, +.mark { + padding: 0.2em; + background-color: #fcf8e3; +} + +sub, +sup { + position: relative; + font-size: 0.75em; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +a { + color: #0d6efd; + text-decoration: underline; +} + +a:hover { + color: #0a58ca; +} + +a:not([href]):not([class]), +a:not([href]):not([class]):hover { + color: inherit; + text-decoration: none; +} + +pre, +code, +kbd, +samp { + font-family: var(--bs-font-monospace); + font-size: 1em; + direction: ltr + /* rtl:ignore */ + ; + unicode-bidi: bidi-override; +} + +pre { + display: block; + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; + font-size: 0.875em; +} + +pre code { + font-size: inherit; + color: inherit; + word-break: normal; +} + +code { + font-size: 0.875em; + color: #d63384; + word-wrap: break-word; +} + +a>code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 0.875em; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} + +kbd kbd { + padding: 0; + font-size: 1em; + font-weight: 700; +} + +figure { + margin: 0 0 1rem; +} + +img, +svg { + vertical-align: middle; +} + +table { + caption-side: bottom; + border-collapse: collapse; +} + +caption { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + color: #6c757d; + text-align: left; +} + +th { + text-align: inherit; + text-align: -webkit-match-parent; +} + +thead, +tbody, +tfoot, +tr, +td, +th { + border-color: inherit; + border-style: solid; + border-width: 0; +} + +label { + display: inline-block; +} + +button { + border-radius: 0; +} + +button:focus:not(:focus-visible) { + outline: 0; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +select { + text-transform: none; +} + +[role=button] { + cursor: pointer; +} + +select { + word-wrap: normal; +} + +select:disabled { + opacity: 1; +} + +[list]::-webkit-calendar-picker-indicator { + display: none; +} + +button, +[type=button], +[type=reset], +[type=submit] { + -webkit-appearance: button; +} + +button:not(:disabled), +[type=button]:not(:disabled), +[type=reset]:not(:disabled), +[type=submit]:not(:disabled) { + cursor: pointer; +} + +::-moz-focus-inner { + padding: 0; + border-style: none; +} + +textarea { + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + float: left; + width: 100%; + padding: 0; + margin-bottom: 0.5rem; + font-size: calc(1.275rem + 0.3vw); + line-height: inherit; +} + +@media (min-width: 1200px) { + legend { + font-size: 1.5rem; + } +} + +legend+* { + clear: left; +} + +::-webkit-datetime-edit-fields-wrapper, +::-webkit-datetime-edit-text, +::-webkit-datetime-edit-minute, +::-webkit-datetime-edit-hour-field, +::-webkit-datetime-edit-day-field, +::-webkit-datetime-edit-month-field, +::-webkit-datetime-edit-year-field { + padding: 0; +} + +::-webkit-inner-spin-button { + height: auto; +} + +[type=search] { + outline-offset: -2px; + -webkit-appearance: textfield; +} + +/* rtl:raw: +[type="tel"], +[type="url"], +[type="email"], +[type="number"] { + direction: ltr; +} +*/ +::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-color-swatch-wrapper { + padding: 0; +} + +::file-selector-button { + font: inherit; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +iframe { + border: 0; +} + +summary { + display: list-item; + cursor: pointer; +} + +progress { + vertical-align: baseline; +} + +[hidden] { + display: none !important; +} + +.lead { + font-size: 1.25rem; + font-weight: 300; +} + +.display-1 { + font-size: calc(1.625rem + 4.5vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-1 { + font-size: 5rem; + } +} + +.display-2 { + font-size: calc(1.575rem + 3.9vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-2 { + font-size: 4.5rem; + } +} + +.display-3 { + font-size: calc(1.525rem + 3.3vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-3 { + font-size: 4rem; + } +} + +.display-4 { + font-size: calc(1.475rem + 2.7vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-4 { + font-size: 3.5rem; + } +} + +.display-5 { + font-size: calc(1.425rem + 2.1vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-5 { + font-size: 3rem; + } +} + +.display-6 { + font-size: calc(1.375rem + 1.5vw); + font-weight: 300; + line-height: 1.2; +} + +@media (min-width: 1200px) { + .display-6 { + font-size: 2.5rem; + } +} + +.list-unstyled { + padding-left: 0; + list-style: none; +} + +.list-inline { + padding-left: 0; + list-style: none; +} + +.list-inline-item { + display: inline-block; +} + +.list-inline-item:not(:last-child) { + margin-right: 0.5rem; +} + +.initialism { + font-size: 0.875em; + text-transform: uppercase; +} + +.blockquote { + margin-bottom: 1rem; + font-size: 1.25rem; +} + +.blockquote> :last-child { + margin-bottom: 0; +} + +.blockquote-footer { + margin-top: -1rem; + margin-bottom: 1rem; + font-size: 0.875em; + color: #6c757d; +} + +.blockquote-footer::before { + content: "— "; +} + +.img-fluid { + max-width: 100%; + height: auto; +} + +.img-thumbnail { + padding: 0.25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 0.25rem; + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.5rem; + line-height: 1; +} + +.figure-caption { + font-size: 0.875em; + color: #6c757d; +} + +.container, +.container-fluid, +.container-xxl, +.container-xl, +.container-lg, +.container-md, +.container-sm { + width: 100%; + padding-right: var(--bs-gutter-x, 0.75rem); + padding-left: var(--bs-gutter-x, 0.75rem); + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + + .container-sm, + .container { + max-width: 540px; + } +} + +@media (min-width: 768px) { + + .container-md, + .container-sm, + .container { + max-width: 720px; + } +} + +@media (min-width: 992px) { + + .container-lg, + .container-md, + .container-sm, + .container { + max-width: 960px; + } +} + +@media (min-width: 1200px) { + + .container-xl, + .container-lg, + .container-md, + .container-sm, + .container { + max-width: 1140px; + } +} + +@media (min-width: 1400px) { + + .container-xxl, + .container-xl, + .container-lg, + .container-md, + .container-sm, + .container { + max-width: 1320px; + } +} + +.row { + --bs-gutter-x: 1.5rem; + --bs-gutter-y: 0; + display: flex; + flex-wrap: wrap; + margin-top: calc(var(--bs-gutter-y) * -1); + margin-right: calc(var(--bs-gutter-x) / -2); + margin-left: calc(var(--bs-gutter-x) / -2); +} + +.row>* { + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); + margin-top: var(--bs-gutter-y); +} + +.col { + flex: 1 0 0%; +} + +.row-cols-auto>* { + flex: 0 0 auto; + width: auto; +} + +.row-cols-1>* { + flex: 0 0 auto; + width: 100%; +} + +.row-cols-2>* { + flex: 0 0 auto; + width: 50%; +} + +.row-cols-3>* { + flex: 0 0 auto; + width: 33.3333333333%; +} + +.row-cols-4>* { + flex: 0 0 auto; + width: 25%; +} + +.row-cols-5>* { + flex: 0 0 auto; + width: 20%; +} + +.row-cols-6>* { + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-auto { + flex: 0 0 auto; + width: auto; +} + +.col-1 { + flex: 0 0 auto; + width: 8.3333333333%; +} + +.col-2 { + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-3 { + flex: 0 0 auto; + width: 25%; +} + +.col-4 { + flex: 0 0 auto; + width: 33.3333333333%; +} + +.col-5 { + flex: 0 0 auto; + width: 41.6666666667%; +} + +.col-6 { + flex: 0 0 auto; + width: 50%; +} + +.col-7 { + flex: 0 0 auto; + width: 58.3333333333%; +} + +.col-8 { + flex: 0 0 auto; + width: 66.6666666667%; +} + +.col-9 { + flex: 0 0 auto; + width: 75%; +} + +.col-10 { + flex: 0 0 auto; + width: 83.3333333333%; +} + +.col-11 { + flex: 0 0 auto; + width: 91.6666666667%; +} + +.col-12 { + flex: 0 0 auto; + width: 100%; +} + +.offset-1 { + margin-left: 8.3333333333%; +} + +.offset-2 { + margin-left: 16.6666666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.3333333333%; +} + +.offset-5 { + margin-left: 41.6666666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.3333333333%; +} + +.offset-8 { + margin-left: 66.6666666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.3333333333%; +} + +.offset-11 { + margin-left: 91.6666666667%; +} + +.g-0, +.gx-0 { + --bs-gutter-x: 0; +} + +.g-0, +.gy-0 { + --bs-gutter-y: 0; +} + +.g-1, +.gx-1 { + --bs-gutter-x: 0.25rem; +} + +.g-1, +.gy-1 { + --bs-gutter-y: 0.25rem; +} + +.g-2, +.gx-2 { + --bs-gutter-x: 0.5rem; +} + +.g-2, +.gy-2 { + --bs-gutter-y: 0.5rem; +} + +.g-3, +.gx-3 { + --bs-gutter-x: 1rem; +} + +.g-3, +.gy-3 { + --bs-gutter-y: 1rem; +} + +.g-4, +.gx-4 { + --bs-gutter-x: 1.5rem; +} + +.g-4, +.gy-4 { + --bs-gutter-y: 1.5rem; +} + +.g-5, +.gx-5 { + --bs-gutter-x: 3rem; +} + +.g-5, +.gy-5 { + --bs-gutter-y: 3rem; +} + +@media (min-width: 576px) { + .col-sm { + flex: 1 0 0%; + } + + .row-cols-sm-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-sm-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-sm-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-sm-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-sm-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-sm-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-sm-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-auto { + flex: 0 0 auto; + width: auto; + } + + .col-sm-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-sm-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-sm-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-sm-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-sm-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-sm-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-sm-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-sm-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-sm-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-sm-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-sm-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-sm-0 { + margin-left: 0; + } + + .offset-sm-1 { + margin-left: 8.3333333333%; + } + + .offset-sm-2 { + margin-left: 16.6666666667%; + } + + .offset-sm-3 { + margin-left: 25%; + } + + .offset-sm-4 { + margin-left: 33.3333333333%; + } + + .offset-sm-5 { + margin-left: 41.6666666667%; + } + + .offset-sm-6 { + margin-left: 50%; + } + + .offset-sm-7 { + margin-left: 58.3333333333%; + } + + .offset-sm-8 { + margin-left: 66.6666666667%; + } + + .offset-sm-9 { + margin-left: 75%; + } + + .offset-sm-10 { + margin-left: 83.3333333333%; + } + + .offset-sm-11 { + margin-left: 91.6666666667%; + } + + .g-sm-0, + .gx-sm-0 { + --bs-gutter-x: 0; + } + + .g-sm-0, + .gy-sm-0 { + --bs-gutter-y: 0; + } + + .g-sm-1, + .gx-sm-1 { + --bs-gutter-x: 0.25rem; + } + + .g-sm-1, + .gy-sm-1 { + --bs-gutter-y: 0.25rem; + } + + .g-sm-2, + .gx-sm-2 { + --bs-gutter-x: 0.5rem; + } + + .g-sm-2, + .gy-sm-2 { + --bs-gutter-y: 0.5rem; + } + + .g-sm-3, + .gx-sm-3 { + --bs-gutter-x: 1rem; + } + + .g-sm-3, + .gy-sm-3 { + --bs-gutter-y: 1rem; + } + + .g-sm-4, + .gx-sm-4 { + --bs-gutter-x: 1.5rem; + } + + .g-sm-4, + .gy-sm-4 { + --bs-gutter-y: 1.5rem; + } + + .g-sm-5, + .gx-sm-5 { + --bs-gutter-x: 3rem; + } + + .g-sm-5, + .gy-sm-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 768px) { + .col-md { + flex: 1 0 0%; + } + + .row-cols-md-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-md-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-md-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-md-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-md-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-md-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-md-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-auto { + flex: 0 0 auto; + width: auto; + } + + .col-md-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-md-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-md-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-md-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-md-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-md-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-md-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-md-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-md-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-md-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-md-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-md-0 { + margin-left: 0; + } + + .offset-md-1 { + margin-left: 8.3333333333%; + } + + .offset-md-2 { + margin-left: 16.6666666667%; + } + + .offset-md-3 { + margin-left: 25%; + } + + .offset-md-4 { + margin-left: 33.3333333333%; + } + + .offset-md-5 { + margin-left: 41.6666666667%; + } + + .offset-md-6 { + margin-left: 50%; + } + + .offset-md-7 { + margin-left: 58.3333333333%; + } + + .offset-md-8 { + margin-left: 66.6666666667%; + } + + .offset-md-9 { + margin-left: 75%; + } + + .offset-md-10 { + margin-left: 83.3333333333%; + } + + .offset-md-11 { + margin-left: 91.6666666667%; + } + + .g-md-0, + .gx-md-0 { + --bs-gutter-x: 0; + } + + .g-md-0, + .gy-md-0 { + --bs-gutter-y: 0; + } + + .g-md-1, + .gx-md-1 { + --bs-gutter-x: 0.25rem; + } + + .g-md-1, + .gy-md-1 { + --bs-gutter-y: 0.25rem; + } + + .g-md-2, + .gx-md-2 { + --bs-gutter-x: 0.5rem; + } + + .g-md-2, + .gy-md-2 { + --bs-gutter-y: 0.5rem; + } + + .g-md-3, + .gx-md-3 { + --bs-gutter-x: 1rem; + } + + .g-md-3, + .gy-md-3 { + --bs-gutter-y: 1rem; + } + + .g-md-4, + .gx-md-4 { + --bs-gutter-x: 1.5rem; + } + + .g-md-4, + .gy-md-4 { + --bs-gutter-y: 1.5rem; + } + + .g-md-5, + .gx-md-5 { + --bs-gutter-x: 3rem; + } + + .g-md-5, + .gy-md-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 992px) { + .col-lg { + flex: 1 0 0%; + } + + .row-cols-lg-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-lg-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-lg-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-lg-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-lg-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-lg-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-lg-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-auto { + flex: 0 0 auto; + width: auto; + } + + .col-lg-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-lg-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-lg-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-lg-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-lg-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-lg-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-lg-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-lg-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-lg-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-lg-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-lg-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-lg-0 { + margin-left: 0; + } + + .offset-lg-1 { + margin-left: 8.3333333333%; + } + + .offset-lg-2 { + margin-left: 16.6666666667%; + } + + .offset-lg-3 { + margin-left: 25%; + } + + .offset-lg-4 { + margin-left: 33.3333333333%; + } + + .offset-lg-5 { + margin-left: 41.6666666667%; + } + + .offset-lg-6 { + margin-left: 50%; + } + + .offset-lg-7 { + margin-left: 58.3333333333%; + } + + .offset-lg-8 { + margin-left: 66.6666666667%; + } + + .offset-lg-9 { + margin-left: 75%; + } + + .offset-lg-10 { + margin-left: 83.3333333333%; + } + + .offset-lg-11 { + margin-left: 91.6666666667%; + } + + .g-lg-0, + .gx-lg-0 { + --bs-gutter-x: 0; + } + + .g-lg-0, + .gy-lg-0 { + --bs-gutter-y: 0; + } + + .g-lg-1, + .gx-lg-1 { + --bs-gutter-x: 0.25rem; + } + + .g-lg-1, + .gy-lg-1 { + --bs-gutter-y: 0.25rem; + } + + .g-lg-2, + .gx-lg-2 { + --bs-gutter-x: 0.5rem; + } + + .g-lg-2, + .gy-lg-2 { + --bs-gutter-y: 0.5rem; + } + + .g-lg-3, + .gx-lg-3 { + --bs-gutter-x: 1rem; + } + + .g-lg-3, + .gy-lg-3 { + --bs-gutter-y: 1rem; + } + + .g-lg-4, + .gx-lg-4 { + --bs-gutter-x: 1.5rem; + } + + .g-lg-4, + .gy-lg-4 { + --bs-gutter-y: 1.5rem; + } + + .g-lg-5, + .gx-lg-5 { + --bs-gutter-x: 3rem; + } + + .g-lg-5, + .gy-lg-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 1200px) { + .col-xl { + flex: 1 0 0%; + } + + .row-cols-xl-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xl-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xl-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xl-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xl-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xl-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xl-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xl-0 { + margin-left: 0; + } + + .offset-xl-1 { + margin-left: 8.3333333333%; + } + + .offset-xl-2 { + margin-left: 16.6666666667%; + } + + .offset-xl-3 { + margin-left: 25%; + } + + .offset-xl-4 { + margin-left: 33.3333333333%; + } + + .offset-xl-5 { + margin-left: 41.6666666667%; + } + + .offset-xl-6 { + margin-left: 50%; + } + + .offset-xl-7 { + margin-left: 58.3333333333%; + } + + .offset-xl-8 { + margin-left: 66.6666666667%; + } + + .offset-xl-9 { + margin-left: 75%; + } + + .offset-xl-10 { + margin-left: 83.3333333333%; + } + + .offset-xl-11 { + margin-left: 91.6666666667%; + } + + .g-xl-0, + .gx-xl-0 { + --bs-gutter-x: 0; + } + + .g-xl-0, + .gy-xl-0 { + --bs-gutter-y: 0; + } + + .g-xl-1, + .gx-xl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xl-1, + .gy-xl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xl-2, + .gx-xl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xl-2, + .gy-xl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xl-3, + .gx-xl-3 { + --bs-gutter-x: 1rem; + } + + .g-xl-3, + .gy-xl-3 { + --bs-gutter-y: 1rem; + } + + .g-xl-4, + .gx-xl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xl-4, + .gy-xl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xl-5, + .gx-xl-5 { + --bs-gutter-x: 3rem; + } + + .g-xl-5, + .gy-xl-5 { + --bs-gutter-y: 3rem; + } +} + +@media (min-width: 1400px) { + .col-xxl { + flex: 1 0 0%; + } + + .row-cols-xxl-auto>* { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xxl-1>* { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xxl-2>* { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xxl-3>* { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xxl-4>* { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xxl-5>* { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xxl-6>* { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xxl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xxl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xxl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xxl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xxl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xxl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xxl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xxl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xxl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xxl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xxl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xxl-0 { + margin-left: 0; + } + + .offset-xxl-1 { + margin-left: 8.3333333333%; + } + + .offset-xxl-2 { + margin-left: 16.6666666667%; + } + + .offset-xxl-3 { + margin-left: 25%; + } + + .offset-xxl-4 { + margin-left: 33.3333333333%; + } + + .offset-xxl-5 { + margin-left: 41.6666666667%; + } + + .offset-xxl-6 { + margin-left: 50%; + } + + .offset-xxl-7 { + margin-left: 58.3333333333%; + } + + .offset-xxl-8 { + margin-left: 66.6666666667%; + } + + .offset-xxl-9 { + margin-left: 75%; + } + + .offset-xxl-10 { + margin-left: 83.3333333333%; + } + + .offset-xxl-11 { + margin-left: 91.6666666667%; + } + + .g-xxl-0, + .gx-xxl-0 { + --bs-gutter-x: 0; + } + + .g-xxl-0, + .gy-xxl-0 { + --bs-gutter-y: 0; + } + + .g-xxl-1, + .gx-xxl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xxl-1, + .gy-xxl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xxl-2, + .gx-xxl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xxl-2, + .gy-xxl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xxl-3, + .gx-xxl-3 { + --bs-gutter-x: 1rem; + } + + .g-xxl-3, + .gy-xxl-3 { + --bs-gutter-y: 1rem; + } + + .g-xxl-4, + .gx-xxl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xxl-4, + .gy-xxl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xxl-5, + .gx-xxl-5 { + --bs-gutter-x: 3rem; + } + + .g-xxl-5, + .gy-xxl-5 { + --bs-gutter-y: 3rem; + } +} + +.table { + --bs-table-bg: transparent; + --bs-table-accent-bg: transparent; + --bs-table-striped-color: #212529; + --bs-table-striped-bg: rgba(0, 0, 0, 0.05); + --bs-table-active-color: #212529; + --bs-table-active-bg: rgba(0, 0, 0, 0.1); + --bs-table-hover-color: #212529; + --bs-table-hover-bg: rgba(0, 0, 0, 0.075); + width: 100%; + margin-bottom: 1rem; + color: #212529; + vertical-align: top; + border-color: #dee2e6; +} + +.table> :not(caption)>*>* { + padding: 0.5rem 0.5rem; + background-color: var(--bs-table-bg); + border-bottom-width: 1px; + box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg); +} + +.table>tbody { + vertical-align: inherit; +} + +.table>thead { + vertical-align: bottom; +} + +.table> :not(:last-child)> :last-child>* { + border-bottom-color: currentColor; +} + +.caption-top { + caption-side: top; +} + +.table-sm> :not(caption)>*>* { + padding: 0.25rem 0.25rem; +} + +.table-bordered> :not(caption)>* { + border-width: 1px 0; +} + +.table-bordered> :not(caption)>*>* { + border-width: 0 1px; +} + +.table-borderless> :not(caption)>*>* { + border-bottom-width: 0; +} + +.table-striped>tbody>tr:nth-of-type(odd) { + --bs-table-accent-bg: var(--bs-table-striped-bg); + color: var(--bs-table-striped-color); +} + +.table-active { + --bs-table-accent-bg: var(--bs-table-active-bg); + color: var(--bs-table-active-color); +} + +.table-hover>tbody>tr:hover { + --bs-table-accent-bg: var(--bs-table-hover-bg); + color: var(--bs-table-hover-color); +} + +.table-primary { + --bs-table-bg: #cfe2ff; + --bs-table-striped-bg: #c5d7f2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bacbe6; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfd1ec; + --bs-table-hover-color: #000; + color: #000; + border-color: #bacbe6; +} + +.table-secondary { + --bs-table-bg: #e2e3e5; + --bs-table-striped-bg: #d7d8da; + --bs-table-striped-color: #000; + --bs-table-active-bg: #cbccce; + --bs-table-active-color: #000; + --bs-table-hover-bg: #d1d2d4; + --bs-table-hover-color: #000; + color: #000; + border-color: #cbccce; +} + +.table-success { + --bs-table-bg: #d1e7dd; + --bs-table-striped-bg: #c7dbd2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bcd0c7; + --bs-table-active-color: #000; + --bs-table-hover-bg: #c1d6cc; + --bs-table-hover-color: #000; + color: #000; + border-color: #bcd0c7; +} + +.table-info { + --bs-table-bg: #cff4fc; + --bs-table-striped-bg: #c5e8ef; + --bs-table-striped-color: #000; + --bs-table-active-bg: #badce3; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfe2e9; + --bs-table-hover-color: #000; + color: #000; + border-color: #badce3; +} + +.table-warning { + --bs-table-bg: #fff3cd; + --bs-table-striped-bg: #f2e7c3; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dbb9; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece1be; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dbb9; +} + +.table-danger { + --bs-table-bg: #f8d7da; + --bs-table-striped-bg: #eccccf; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfc2c4; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5c7ca; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfc2c4; +} + +.table-light { + --bs-table-bg: #f8f9fa; + --bs-table-striped-bg: #ecedee; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfe0e1; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5e6e7; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfe0e1; +} + +.table-dark { + --bs-table-bg: #212529; + --bs-table-striped-bg: #2c3034; + --bs-table-striped-color: #fff; + --bs-table-active-bg: #373b3e; + --bs-table-active-color: #fff; + --bs-table-hover-bg: #323539; + --bs-table-hover-color: #fff; + color: #fff; + border-color: #373b3e; +} + +.table-responsive { + overflow-x: auto; + -webkit-overflow-scrolling: touch; +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 767.98px) { + .table-responsive-md { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 991.98px) { + .table-responsive-lg { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 1199.98px) { + .table-responsive-xl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +@media (max-width: 1399.98px) { + .table-responsive-xxl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} + +.form-label { + margin-bottom: 0.5rem; +} + +.col-form-label { + padding-top: calc(0.375rem + 1px); + padding-bottom: calc(0.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + 1px); + padding-bottom: calc(0.5rem + 1px); + font-size: 1.25rem; +} + +.col-form-label-sm { + padding-top: calc(0.25rem + 1px); + padding-bottom: calc(0.25rem + 1px); + font-size: 0.875rem; +} + +.form-text { + margin-top: 0.25rem; + font-size: 0.875em; + color: #6c757d; +} + +.form-control { + display: block; + width: 100%; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-control { + transition: none; + } +} + +.form-control[type=file] { + overflow: hidden; +} + +.form-control[type=file]:not(:disabled):not([readonly]) { + cursor: pointer; +} + +.form-control:focus { + color: #212529; + background-color: #fff; + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-control::-webkit-date-and-time-value { + height: 1.5em; +} + +.form-control::-moz-placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control::placeholder { + color: #6c757d; + opacity: 1; +} + +.form-control:disabled, +.form-control[readonly] { + background-color: #e9ecef; + opacity: 1; +} + +.form-control::file-selector-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-control::file-selector-button { + transition: none; + } +} + +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: #dde0e3; +} + +.form-control::-webkit-file-upload-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } +} + +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: #dde0e3; +} + +.form-control-plaintext { + display: block; + width: 100%; + padding: 0.375rem 0; + margin-bottom: 0; + line-height: 1.5; + color: #212529; + background-color: transparent; + border: solid transparent; + border-width: 1px 0; +} + +.form-control-plaintext.form-control-sm, +.form-control-plaintext.form-control-lg { + padding-right: 0; + padding-left: 0; +} + +.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.form-control-sm::file-selector-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} + +.form-control-sm::-webkit-file-upload-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} + +.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} + +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} + +textarea.form-control { + min-height: calc(1.5em + 0.75rem + 2px); +} + +textarea.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); +} + +textarea.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); +} + +.form-control-color { + max-width: 3rem; + height: auto; + padding: 0.375rem; +} + +.form-control-color:not(:disabled):not([readonly]) { + cursor: pointer; +} + +.form-control-color::-moz-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} + +.form-control-color::-webkit-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} + +.form-select { + display: block; + width: 100%; + padding: 0.375rem 2.25rem 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right 0.75rem center; + background-size: 16px 12px; + border: 1px solid #ced4da; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.form-select:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-select[multiple], +.form-select[size]:not([size="1"]) { + padding-right: 0.75rem; + background-image: none; +} + +.form-select:disabled { + background-color: #e9ecef; +} + +.form-select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #212529; +} + +.form-select-sm { + padding-top: 0.25rem; + padding-bottom: 0.25rem; + padding-left: 0.5rem; + font-size: 0.875rem; +} + +.form-select-lg { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 1rem; + font-size: 1.25rem; +} + +.form-check { + display: block; + min-height: 1.5rem; + padding-left: 1.5em; + margin-bottom: 0.125rem; +} + +.form-check .form-check-input { + float: left; + margin-left: -1.5em; +} + +.form-check-input { + width: 1em; + height: 1em; + margin-top: 0.25em; + vertical-align: top; + background-color: #fff; + background-repeat: no-repeat; + background-position: center; + background-size: contain; + border: 1px solid rgba(0, 0, 0, 0.25); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + -webkit-print-color-adjust: exact; + color-adjust: exact; +} + +.form-check-input[type=checkbox] { + border-radius: 0.25em; +} + +.form-check-input[type=radio] { + border-radius: 50%; +} + +.form-check-input:active { + filter: brightness(90%); +} + +.form-check-input:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-check-input:checked { + background-color: #0d6efd; + border-color: #0d6efd; +} + +.form-check-input:checked[type=checkbox] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e"); +} + +.form-check-input:checked[type=radio] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); +} + +.form-check-input[type=checkbox]:indeterminate { + background-color: #0d6efd; + border-color: #0d6efd; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); +} + +.form-check-input:disabled { + pointer-events: none; + filter: none; + opacity: 0.5; +} + +.form-check-input[disabled]~.form-check-label, +.form-check-input:disabled~.form-check-label { + opacity: 0.5; +} + +.form-switch { + padding-left: 2.5em; +} + +.form-switch .form-check-input { + width: 2em; + margin-left: -2.5em; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); + background-position: left center; + border-radius: 2em; + transition: background-position 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-switch .form-check-input { + transition: none; + } +} + +.form-switch .form-check-input:focus { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e"); +} + +.form-switch .form-check-input:checked { + background-position: right center; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); +} + +.form-check-inline { + display: inline-block; + margin-right: 1rem; +} + +.btn-check { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} + +.btn-check[disabled]+.btn, +.btn-check:disabled+.btn { + pointer-events: none; + filter: none; + opacity: 0.65; +} + +.form-range { + width: 100%; + height: 1.5rem; + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.form-range:focus { + outline: 0; +} + +.form-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.form-range::-moz-focus-outer { + border: 0; +} + +.form-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} + +@media (prefers-reduced-motion: reduce) { + .form-range::-webkit-slider-thumb { + -webkit-transition: none; + transition: none; + } +} + +.form-range::-webkit-slider-thumb:active { + background-color: #b6d4fe; +} + +.form-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.form-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} + +@media (prefers-reduced-motion: reduce) { + .form-range::-moz-range-thumb { + -moz-transition: none; + transition: none; + } +} + +.form-range::-moz-range-thumb:active { + background-color: #b6d4fe; +} + +.form-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} + +.form-range:disabled { + pointer-events: none; +} + +.form-range:disabled::-webkit-slider-thumb { + background-color: #adb5bd; +} + +.form-range:disabled::-moz-range-thumb { + background-color: #adb5bd; +} + +.form-floating { + position: relative; +} + +.form-floating>.form-control, +.form-floating>.form-select { + height: calc(3.5rem + 2px); + padding: 1rem 0.75rem; +} + +.form-floating>label { + position: absolute; + top: 0; + left: 0; + height: 100%; + padding: 1rem 0.75rem; + pointer-events: none; + border: 1px solid transparent; + transform-origin: 0 0; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .form-floating>label { + transition: none; + } +} + +.form-floating>.form-control::-moz-placeholder { + color: transparent; +} + +.form-floating>.form-control::placeholder { + color: transparent; +} + +.form-floating>.form-control:not(:-moz-placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-control:focus, +.form-floating>.form-control:not(:placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-control:-webkit-autofill { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-select { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} + +.form-floating>.form-control:not(:-moz-placeholder-shown)~label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.form-floating>.form-control:focus~label, +.form-floating>.form-control:not(:placeholder-shown)~label, +.form-floating>.form-select~label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.form-floating>.form-control:-webkit-autofill~label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.input-group { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: stretch; + width: 100%; +} + +.input-group>.form-control, +.input-group>.form-select { + position: relative; + flex: 1 1 auto; + width: 1%; + min-width: 0; +} + +.input-group>.form-control:focus, +.input-group>.form-select:focus { + z-index: 3; +} + +.input-group .btn { + position: relative; + z-index: 2; +} + +.input-group .btn:focus { + z-index: 3; +} + +.input-group-text { + display: flex; + align-items: center; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.input-group-lg>.form-control, +.input-group-lg>.form-select, +.input-group-lg>.input-group-text, +.input-group-lg>.btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.input-group-sm>.form-control, +.input-group-sm>.form-select, +.input-group-sm>.input-group-text, +.input-group-sm>.btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.input-group-lg>.form-select, +.input-group-sm>.form-select { + padding-right: 3rem; +} + +.input-group:not(.has-validation)> :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), +.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group.has-validation> :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), +.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group> :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { + margin-left: -1px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #198754; +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(25, 135, 84, 0.9); + border-radius: 0.25rem; +} + +.was-validated :valid~.valid-feedback, +.was-validated :valid~.valid-tooltip, +.is-valid~.valid-feedback, +.is-valid~.valid-tooltip { + display: block; +} + +.was-validated .form-control:valid, +.form-control.is-valid { + border-color: #198754; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.375em + 0.1875rem) center; + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-control:valid:focus, +.form-control.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated textarea.form-control:valid, +textarea.form-control.is-valid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .form-select:valid, +.form-select.is-valid { + border-color: #198754; +} + +.was-validated .form-select:valid:not([multiple]):not([size]), +.was-validated .form-select:valid:not([multiple])[size="1"], +.form-select.is-valid:not([multiple]):not([size]), +.form-select.is-valid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 2.25rem; + background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-select:valid:focus, +.form-select.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated .form-check-input:valid, +.form-check-input.is-valid { + border-color: #198754; +} + +.was-validated .form-check-input:valid:checked, +.form-check-input.is-valid:checked { + background-color: #198754; +} + +.was-validated .form-check-input:valid:focus, +.form-check-input.is-valid:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated .form-check-input:valid~.form-check-label, +.form-check-input.is-valid~.form-check-label { + color: #198754; +} + +.form-check-inline .form-check-input~.valid-feedback { + margin-left: 0.5em; +} + +.was-validated .input-group .form-control:valid, +.input-group .form-control.is-valid, +.was-validated .input-group .form-select:valid, +.input-group .form-select.is-valid { + z-index: 1; +} + +.was-validated .input-group .form-control:valid:focus, +.input-group .form-control.is-valid:focus, +.was-validated .input-group .form-select:valid:focus, +.input-group .form-select.is-valid:focus { + z-index: 3; +} + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #dc3545; +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(220, 53, 69, 0.9); + border-radius: 0.25rem; +} + +.was-validated :invalid~.invalid-feedback, +.was-validated :invalid~.invalid-tooltip, +.is-invalid~.invalid-feedback, +.is-invalid~.invalid-tooltip { + display: block; +} + +.was-validated .form-control:invalid, +.form-control.is-invalid { + border-color: #dc3545; + padding-right: calc(1.5em + 0.75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.375em + 0.1875rem) center; + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-control:invalid:focus, +.form-control.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated textarea.form-control:invalid, +textarea.form-control.is-invalid { + padding-right: calc(1.5em + 0.75rem); + background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); +} + +.was-validated .form-select:invalid, +.form-select.is-invalid { + border-color: #dc3545; +} + +.was-validated .form-select:invalid:not([multiple]):not([size]), +.was-validated .form-select:invalid:not([multiple])[size="1"], +.form-select.is-invalid:not([multiple]):not([size]), +.form-select.is-invalid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 2.25rem; + background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} + +.was-validated .form-select:invalid:focus, +.form-select.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-check-input:invalid, +.form-check-input.is-invalid { + border-color: #dc3545; +} + +.was-validated .form-check-input:invalid:checked, +.form-check-input.is-invalid:checked { + background-color: #dc3545; +} + +.was-validated .form-check-input:invalid:focus, +.form-check-input.is-invalid:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-check-input:invalid~.form-check-label, +.form-check-input.is-invalid~.form-check-label { + color: #dc3545; +} + +.form-check-inline .form-check-input~.invalid-feedback { + margin-left: 0.5em; +} + +.was-validated .input-group .form-control:invalid, +.input-group .form-control.is-invalid, +.was-validated .input-group .form-select:invalid, +.input-group .form-select.is-invalid { + z-index: 2; +} + +.was-validated .input-group .form-control:invalid:focus, +.input-group .form-control.is-invalid:focus, +.was-validated .input-group .form-select:invalid:focus, +.input-group .form-select.is-invalid:focus { + z-index: 3; +} + +.btn { + display: inline-block; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + text-decoration: none; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } +} + +.btn:hover { + color: #212529; +} + +.btn-check:focus+.btn, +.btn:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.btn:disabled, +.btn.disabled, +fieldset:disabled .btn { + pointer-events: none; + opacity: 0.65; +} + +.btn-primary { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-primary:hover { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; +} + +.btn-check:focus+.btn-primary, +.btn-primary:focus { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; + box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); +} + +.btn-check:checked+.btn-primary, +.btn-check:active+.btn-primary, +.btn-primary:active, +.btn-primary.active, +.show>.btn-primary.dropdown-toggle { + color: #fff; + background-color: #0a58ca; + border-color: #0a53be; +} + +.btn-check:checked+.btn-primary:focus, +.btn-check:active+.btn-primary:focus, +.btn-primary:active:focus, +.btn-primary.active:focus, +.show>.btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); +} + +.btn-primary:disabled, +.btn-primary.disabled { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-secondary { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-secondary:hover { + color: #fff; + background-color: #5c636a; + border-color: #565e64; +} + +.btn-check:focus+.btn-secondary, +.btn-secondary:focus { + color: #fff; + background-color: #5c636a; + border-color: #565e64; + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} + +.btn-check:checked+.btn-secondary, +.btn-check:active+.btn-secondary, +.btn-secondary:active, +.btn-secondary.active, +.show>.btn-secondary.dropdown-toggle { + color: #fff; + background-color: #565e64; + border-color: #51585e; +} + +.btn-check:checked+.btn-secondary:focus, +.btn-check:active+.btn-secondary:focus, +.btn-secondary:active:focus, +.btn-secondary.active:focus, +.show>.btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} + +.btn-secondary:disabled, +.btn-secondary.disabled { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-success { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-success:hover { + color: #fff; + background-color: #157347; + border-color: #146c43; +} + +.btn-check:focus+.btn-success, +.btn-success:focus { + color: #fff; + background-color: #157347; + border-color: #146c43; + box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); +} + +.btn-check:checked+.btn-success, +.btn-check:active+.btn-success, +.btn-success:active, +.btn-success.active, +.show>.btn-success.dropdown-toggle { + color: #fff; + background-color: #146c43; + border-color: #13653f; +} + +.btn-check:checked+.btn-success:focus, +.btn-check:active+.btn-success:focus, +.btn-success:active:focus, +.btn-success.active:focus, +.show>.btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); +} + +.btn-success:disabled, +.btn-success.disabled { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-info { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-info:hover { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; +} + +.btn-check:focus+.btn-info, +.btn-info:focus { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; + box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +} + +.btn-check:checked+.btn-info, +.btn-check:active+.btn-info, +.btn-info:active, +.btn-info.active, +.show>.btn-info.dropdown-toggle { + color: #000; + background-color: #3dd5f3; + border-color: #25cff2; +} + +.btn-check:checked+.btn-info:focus, +.btn-check:active+.btn-info:focus, +.btn-info:active:focus, +.btn-info.active:focus, +.show>.btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +} + +.btn-info:disabled, +.btn-info.disabled { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-warning { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-warning:hover { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; +} + +.btn-check:focus+.btn-warning, +.btn-warning:focus { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; + box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +} + +.btn-check:checked+.btn-warning, +.btn-check:active+.btn-warning, +.btn-warning:active, +.btn-warning.active, +.show>.btn-warning.dropdown-toggle { + color: #000; + background-color: #ffcd39; + border-color: #ffc720; +} + +.btn-check:checked+.btn-warning:focus, +.btn-check:active+.btn-warning:focus, +.btn-warning:active:focus, +.btn-warning.active:focus, +.show>.btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +} + +.btn-warning:disabled, +.btn-warning.disabled { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-danger { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-danger:hover { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; +} + +.btn-check:focus+.btn-danger, +.btn-danger:focus { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; + box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); +} + +.btn-check:checked+.btn-danger, +.btn-check:active+.btn-danger, +.btn-danger:active, +.btn-danger.active, +.show>.btn-danger.dropdown-toggle { + color: #fff; + background-color: #b02a37; + border-color: #a52834; +} + +.btn-check:checked+.btn-danger:focus, +.btn-check:active+.btn-danger:focus, +.btn-danger:active:focus, +.btn-danger.active:focus, +.show>.btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); +} + +.btn-danger:disabled, +.btn-danger.disabled { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-light { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-light:hover { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} + +.btn-check:focus+.btn-light, +.btn-light:focus { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} + +.btn-check:checked+.btn-light, +.btn-check:active+.btn-light, +.btn-light:active, +.btn-light.active, +.show>.btn-light.dropdown-toggle { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} + +.btn-check:checked+.btn-light:focus, +.btn-check:active+.btn-light:focus, +.btn-light:active:focus, +.btn-light.active:focus, +.show>.btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} + +.btn-light:disabled, +.btn-light.disabled { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-dark { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-dark:hover { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; +} + +.btn-check:focus+.btn-dark, +.btn-dark:focus { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} + +.btn-check:checked+.btn-dark, +.btn-check:active+.btn-dark, +.btn-dark:active, +.btn-dark.active, +.show>.btn-dark.dropdown-toggle { + color: #fff; + background-color: #1a1e21; + border-color: #191c1f; +} + +.btn-check:checked+.btn-dark:focus, +.btn-check:active+.btn-dark:focus, +.btn-dark:active:focus, +.btn-dark.active:focus, +.show>.btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} + +.btn-dark:disabled, +.btn-dark.disabled { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-outline-primary { + color: #0d6efd; + border-color: #0d6efd; +} + +.btn-outline-primary:hover { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-check:focus+.btn-outline-primary, +.btn-outline-primary:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +} + +.btn-check:checked+.btn-outline-primary, +.btn-check:active+.btn-outline-primary, +.btn-outline-primary:active, +.btn-outline-primary.active, +.btn-outline-primary.dropdown-toggle.show { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-check:checked+.btn-outline-primary:focus, +.btn-check:active+.btn-outline-primary:focus, +.btn-outline-primary:active:focus, +.btn-outline-primary.active:focus, +.btn-outline-primary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +} + +.btn-outline-primary:disabled, +.btn-outline-primary.disabled { + color: #0d6efd; + background-color: transparent; +} + +.btn-outline-secondary { + color: #6c757d; + border-color: #6c757d; +} + +.btn-outline-secondary:hover { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-check:focus+.btn-outline-secondary, +.btn-outline-secondary:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} + +.btn-check:checked+.btn-outline-secondary, +.btn-check:active+.btn-outline-secondary, +.btn-outline-secondary:active, +.btn-outline-secondary.active, +.btn-outline-secondary.dropdown-toggle.show { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-check:checked+.btn-outline-secondary:focus, +.btn-check:active+.btn-outline-secondary:focus, +.btn-outline-secondary:active:focus, +.btn-outline-secondary.active:focus, +.btn-outline-secondary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} + +.btn-outline-secondary:disabled, +.btn-outline-secondary.disabled { + color: #6c757d; + background-color: transparent; +} + +.btn-outline-success { + color: #198754; + border-color: #198754; +} + +.btn-outline-success:hover { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-check:focus+.btn-outline-success, +.btn-outline-success:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +} + +.btn-check:checked+.btn-outline-success, +.btn-check:active+.btn-outline-success, +.btn-outline-success:active, +.btn-outline-success.active, +.btn-outline-success.dropdown-toggle.show { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-check:checked+.btn-outline-success:focus, +.btn-check:active+.btn-outline-success:focus, +.btn-outline-success:active:focus, +.btn-outline-success.active:focus, +.btn-outline-success.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +} + +.btn-outline-success:disabled, +.btn-outline-success.disabled { + color: #198754; + background-color: transparent; +} + +.btn-outline-info { + color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-outline-info:hover { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-check:focus+.btn-outline-info, +.btn-outline-info:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +} + +.btn-check:checked+.btn-outline-info, +.btn-check:active+.btn-outline-info, +.btn-outline-info:active, +.btn-outline-info.active, +.btn-outline-info.dropdown-toggle.show { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-check:checked+.btn-outline-info:focus, +.btn-check:active+.btn-outline-info:focus, +.btn-outline-info:active:focus, +.btn-outline-info.active:focus, +.btn-outline-info.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +} + +.btn-outline-info:disabled, +.btn-outline-info.disabled { + color: #0dcaf0; + background-color: transparent; +} + +.btn-outline-warning { + color: #ffc107; + border-color: #ffc107; +} + +.btn-outline-warning:hover { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-check:focus+.btn-outline-warning, +.btn-outline-warning:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +} + +.btn-check:checked+.btn-outline-warning, +.btn-check:active+.btn-outline-warning, +.btn-outline-warning:active, +.btn-outline-warning.active, +.btn-outline-warning.dropdown-toggle.show { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-check:checked+.btn-outline-warning:focus, +.btn-check:active+.btn-outline-warning:focus, +.btn-outline-warning:active:focus, +.btn-outline-warning.active:focus, +.btn-outline-warning.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +} + +.btn-outline-warning:disabled, +.btn-outline-warning.disabled { + color: #ffc107; + background-color: transparent; +} + +.btn-outline-danger { + color: #dc3545; + border-color: #dc3545; +} + +.btn-outline-danger:hover { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-check:focus+.btn-outline-danger, +.btn-outline-danger:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +} + +.btn-check:checked+.btn-outline-danger, +.btn-check:active+.btn-outline-danger, +.btn-outline-danger:active, +.btn-outline-danger.active, +.btn-outline-danger.dropdown-toggle.show { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-check:checked+.btn-outline-danger:focus, +.btn-check:active+.btn-outline-danger:focus, +.btn-outline-danger:active:focus, +.btn-outline-danger.active:focus, +.btn-outline-danger.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +} + +.btn-outline-danger:disabled, +.btn-outline-danger.disabled { + color: #dc3545; + background-color: transparent; +} + +.btn-outline-light { + color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-outline-light:hover { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-check:focus+.btn-outline-light, +.btn-outline-light:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} + +.btn-check:checked+.btn-outline-light, +.btn-check:active+.btn-outline-light, +.btn-outline-light:active, +.btn-outline-light.active, +.btn-outline-light.dropdown-toggle.show { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-check:checked+.btn-outline-light:focus, +.btn-check:active+.btn-outline-light:focus, +.btn-outline-light:active:focus, +.btn-outline-light.active:focus, +.btn-outline-light.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} + +.btn-outline-light:disabled, +.btn-outline-light.disabled { + color: #f8f9fa; + background-color: transparent; +} + +.btn-outline-dark { + color: #212529; + border-color: #212529; +} + +.btn-outline-dark:hover { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-check:focus+.btn-outline-dark, +.btn-outline-dark:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +} + +.btn-check:checked+.btn-outline-dark, +.btn-check:active+.btn-outline-dark, +.btn-outline-dark:active, +.btn-outline-dark.active, +.btn-outline-dark.dropdown-toggle.show { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-check:checked+.btn-outline-dark:focus, +.btn-check:active+.btn-outline-dark:focus, +.btn-outline-dark:active:focus, +.btn-outline-dark.active:focus, +.btn-outline-dark.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +} + +.btn-outline-dark:disabled, +.btn-outline-dark.disabled { + color: #212529; + background-color: transparent; +} + +.btn-link { + font-weight: 400; + color: #0d6efd; + text-decoration: underline; +} + +.btn-link:hover { + color: #0a58ca; +} + +.btn-link:disabled, +.btn-link.disabled { + color: #6c757d; +} + +.btn-lg, +.btn-group-lg>.btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.btn-sm, +.btn-group-sm>.btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.fade { + transition: opacity 0.15s linear; +} + +@media (prefers-reduced-motion: reduce) { + .fade { + transition: none; + } +} + +.fade:not(.show) { + opacity: 0; +} + +.collapse:not(.show) { + display: none; +} + +.collapsing { + height: 0; + overflow: hidden; + transition: height 0.35s ease; +} + +@media (prefers-reduced-motion: reduce) { + .collapsing { + transition: none; + } +} + +.dropup, +.dropend, +.dropdown, +.dropstart { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; +} + +.dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid; + border-right: 0.3em solid transparent; + border-bottom: 0; + border-left: 0.3em solid transparent; +} + +.dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropdown-menu { + position: absolute; + z-index: 1000; + display: none; + min-width: 10rem; + padding: 0.5rem 0; + margin: 0; + font-size: 1rem; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} + +.dropdown-menu[data-bs-popper] { + top: 100%; + left: 0; + margin-top: 0.125rem; +} + +.dropdown-menu-start { + --bs-position: start; +} + +.dropdown-menu-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; +} + +.dropdown-menu-end { + --bs-position: end; +} + +.dropdown-menu-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; +} + +@media (min-width: 576px) { + .dropdown-menu-sm-start { + --bs-position: start; + } + + .dropdown-menu-sm-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-sm-end { + --bs-position: end; + } + + .dropdown-menu-sm-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 768px) { + .dropdown-menu-md-start { + --bs-position: start; + } + + .dropdown-menu-md-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-md-end { + --bs-position: end; + } + + .dropdown-menu-md-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 992px) { + .dropdown-menu-lg-start { + --bs-position: start; + } + + .dropdown-menu-lg-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-lg-end { + --bs-position: end; + } + + .dropdown-menu-lg-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 1200px) { + .dropdown-menu-xl-start { + --bs-position: start; + } + + .dropdown-menu-xl-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-xl-end { + --bs-position: end; + } + + .dropdown-menu-xl-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +@media (min-width: 1400px) { + .dropdown-menu-xxl-start { + --bs-position: start; + } + + .dropdown-menu-xxl-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + ; + } + + .dropdown-menu-xxl-end { + --bs-position: end; + } + + .dropdown-menu-xxl-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + ; + } +} + +.dropup .dropdown-menu[data-bs-popper] { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: 0.125rem; +} + +.dropup .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0; + border-right: 0.3em solid transparent; + border-bottom: 0.3em solid; + border-left: 0.3em solid transparent; +} + +.dropup .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropend .dropdown-menu[data-bs-popper] { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: 0.125rem; +} + +.dropend .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0; + border-bottom: 0.3em solid transparent; + border-left: 0.3em solid; +} + +.dropend .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropend .dropdown-toggle::after { + vertical-align: 0; +} + +.dropstart .dropdown-menu[data-bs-popper] { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: 0.125rem; +} + +.dropstart .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; +} + +.dropstart .dropdown-toggle::after { + display: none; +} + +.dropstart .dropdown-toggle::before { + display: inline-block; + margin-right: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0.3em solid; + border-bottom: 0.3em solid transparent; +} + +.dropstart .dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropstart .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-divider { + height: 0; + margin: 0.5rem 0; + overflow: hidden; + border-top: 1px solid rgba(0, 0, 0, 0.15); +} + +.dropdown-item { + display: block; + width: 100%; + padding: 0.25rem 1rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + text-decoration: none; + white-space: nowrap; + background-color: transparent; + border: 0; +} + +.dropdown-item:hover, +.dropdown-item:focus { + color: #1e2125; + background-color: #e9ecef; +} + +.dropdown-item.active, +.dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #0d6efd; +} + +.dropdown-item.disabled, +.dropdown-item:disabled { + color: #adb5bd; + pointer-events: none; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 0.875rem; + color: #6c757d; + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: 0.25rem 1rem; + color: #212529; +} + +.dropdown-menu-dark { + color: #dee2e6; + background-color: #343a40; + border-color: rgba(0, 0, 0, 0.15); +} + +.dropdown-menu-dark .dropdown-item { + color: #dee2e6; +} + +.dropdown-menu-dark .dropdown-item:hover, +.dropdown-menu-dark .dropdown-item:focus { + color: #fff; + background-color: rgba(255, 255, 255, 0.15); +} + +.dropdown-menu-dark .dropdown-item.active, +.dropdown-menu-dark .dropdown-item:active { + color: #fff; + background-color: #0d6efd; +} + +.dropdown-menu-dark .dropdown-item.disabled, +.dropdown-menu-dark .dropdown-item:disabled { + color: #adb5bd; +} + +.dropdown-menu-dark .dropdown-divider { + border-color: rgba(0, 0, 0, 0.15); +} + +.dropdown-menu-dark .dropdown-item-text { + color: #dee2e6; +} + +.dropdown-menu-dark .dropdown-header { + color: #adb5bd; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-flex; + vertical-align: middle; +} + +.btn-group>.btn, +.btn-group-vertical>.btn { + position: relative; + flex: 1 1 auto; +} + +.btn-group>.btn-check:checked+.btn, +.btn-group>.btn-check:focus+.btn, +.btn-group>.btn:hover, +.btn-group>.btn:focus, +.btn-group>.btn:active, +.btn-group>.btn.active, +.btn-group-vertical>.btn-check:checked+.btn, +.btn-group-vertical>.btn-check:focus+.btn, +.btn-group-vertical>.btn:hover, +.btn-group-vertical>.btn:focus, +.btn-group-vertical>.btn:active, +.btn-group-vertical>.btn.active { + z-index: 1; +} + +.btn-toolbar { + display: flex; + flex-wrap: wrap; + justify-content: flex-start; +} + +.btn-toolbar .input-group { + width: auto; +} + +.btn-group>.btn:not(:first-child), +.btn-group>.btn-group:not(:first-child) { + margin-left: -1px; +} + +.btn-group>.btn:not(:last-child):not(.dropdown-toggle), +.btn-group>.btn-group:not(:last-child)>.btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.btn-group>.btn:nth-child(n+3), +.btn-group> :not(.btn-check)+.btn, +.btn-group>.btn-group:not(:first-child)>.btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.dropdown-toggle-split { + padding-right: 0.5625rem; + padding-left: 0.5625rem; +} + +.dropdown-toggle-split::after, +.dropup .dropdown-toggle-split::after, +.dropend .dropdown-toggle-split::after { + margin-left: 0; +} + +.dropstart .dropdown-toggle-split::before { + margin-right: 0; +} + +.btn-sm+.dropdown-toggle-split, +.btn-group-sm>.btn+.dropdown-toggle-split { + padding-right: 0.375rem; + padding-left: 0.375rem; +} + +.btn-lg+.dropdown-toggle-split, +.btn-group-lg>.btn+.dropdown-toggle-split { + padding-right: 0.75rem; + padding-left: 0.75rem; +} + +.btn-group-vertical { + flex-direction: column; + align-items: flex-start; + justify-content: center; +} + +.btn-group-vertical>.btn, +.btn-group-vertical>.btn-group { + width: 100%; +} + +.btn-group-vertical>.btn:not(:first-child), +.btn-group-vertical>.btn-group:not(:first-child) { + margin-top: -1px; +} + +.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical>.btn-group:not(:last-child)>.btn { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.btn-group-vertical>.btn~.btn, +.btn-group-vertical>.btn-group:not(:first-child)>.btn { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav { + display: flex; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: 0.5rem 1rem; + color: #0d6efd; + text-decoration: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .nav-link { + transition: none; + } +} + +.nav-link:hover, +.nav-link:focus { + color: #0a58ca; +} + +.nav-link.disabled { + color: #6c757d; + pointer-events: none; + cursor: default; +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6; +} + +.nav-tabs .nav-link { + margin-bottom: -1px; + background: none; + border: 1px solid transparent; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.nav-tabs .nav-link:hover, +.nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; + isolation: isolate; +} + +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent; +} + +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav-pills .nav-link { + background: none; + border: 0; + border-radius: 0.25rem; +} + +.nav-pills .nav-link.active, +.nav-pills .show>.nav-link { + color: #fff; + background-color: #0d6efd; +} + +.nav-fill>.nav-link, +.nav-fill .nav-item { + flex: 1 1 auto; + text-align: center; +} + +.nav-justified>.nav-link, +.nav-justified .nav-item { + flex-basis: 0; + flex-grow: 1; + text-align: center; +} + +.nav-fill .nav-item .nav-link, +.nav-justified .nav-item .nav-link { + width: 100%; +} + +.tab-content>.tab-pane { + display: none; +} + +.tab-content>.active { + display: block; +} + +.navbar { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar>.container, +.navbar>.container-fluid, +.navbar>.container-sm, +.navbar>.container-md, +.navbar>.container-lg, +.navbar>.container-xl, +.navbar>.container-xxl { + display: flex; + flex-wrap: inherit; + align-items: center; + justify-content: space-between; +} + +.navbar-brand { + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; + margin-right: 1rem; + font-size: 1.25rem; + text-decoration: none; + white-space: nowrap; +} + +.navbar-nav { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0; +} + +.navbar-nav .dropdown-menu { + position: static; +} + +.navbar-text { + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar-collapse { + flex-basis: 100%; + flex-grow: 1; + align-items: center; +} + +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; + transition: box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .navbar-toggler { + transition: none; + } +} + +.navbar-toggler:hover { + text-decoration: none; +} + +.navbar-toggler:focus { + text-decoration: none; + outline: 0; + box-shadow: 0 0 0 0.25rem; +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + background-repeat: no-repeat; + background-position: center; + background-size: 100%; +} + +.navbar-nav-scroll { + max-height: var(--bs-scroll-height, 75vh); + overflow-y: auto; +} + +@media (min-width: 576px) { + .navbar-expand-sm { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-sm .navbar-nav { + flex-direction: row; + } + + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-sm .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-sm .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-sm .navbar-toggler { + display: none; + } +} + +@media (min-width: 768px) { + .navbar-expand-md { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-md .navbar-nav { + flex-direction: row; + } + + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-md .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-md .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-md .navbar-toggler { + display: none; + } +} + +@media (min-width: 992px) { + .navbar-expand-lg { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-lg .navbar-nav { + flex-direction: row; + } + + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-lg .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-lg .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-lg .navbar-toggler { + display: none; + } +} + +@media (min-width: 1200px) { + .navbar-expand-xl { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-xl .navbar-nav { + flex-direction: row; + } + + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-xl .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-xl .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-xl .navbar-toggler { + display: none; + } +} + +@media (min-width: 1400px) { + .navbar-expand-xxl { + flex-wrap: nowrap; + justify-content: flex-start; + } + + .navbar-expand-xxl .navbar-nav { + flex-direction: row; + } + + .navbar-expand-xxl .navbar-nav .dropdown-menu { + position: absolute; + } + + .navbar-expand-xxl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + + .navbar-expand-xxl .navbar-nav-scroll { + overflow: visible; + } + + .navbar-expand-xxl .navbar-collapse { + display: flex !important; + flex-basis: auto; + } + + .navbar-expand-xxl .navbar-toggler { + display: none; + } +} + +.navbar-expand { + flex-wrap: nowrap; + justify-content: flex-start; +} + +.navbar-expand .navbar-nav { + flex-direction: row; +} + +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} + +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} + +.navbar-expand .navbar-nav-scroll { + overflow: visible; +} + +.navbar-expand .navbar-collapse { + display: flex !important; + flex-basis: auto; +} + +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-brand:hover, +.navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.55); +} + +.navbar-light .navbar-nav .nav-link:hover, +.navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} + +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} + +.navbar-light .navbar-nav .show>.nav-link, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.55); + border-color: rgba(0, 0, 0, 0.1); +} + +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.55); +} + +.navbar-light .navbar-text a, +.navbar-light .navbar-text a:hover, +.navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} + +.navbar-dark .navbar-brand:hover, +.navbar-dark .navbar-brand:focus { + color: #fff; +} + +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.55); +} + +.navbar-dark .navbar-nav .nav-link:hover, +.navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} + +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} + +.navbar-dark .navbar-nav .show>.nav-link, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} + +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1); +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.55); +} + +.navbar-dark .navbar-text a, +.navbar-dark .navbar-text a:hover, +.navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} + +.card>hr { + margin-right: 0; + margin-left: 0; +} + +.card>.list-group { + border-top: inherit; + border-bottom: inherit; +} + +.card>.list-group:first-child { + border-top-width: 0; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card>.list-group:last-child { + border-bottom-width: 0; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card>.card-header+.list-group, +.card>.list-group+.card-footer { + border-top: 0; +} + +.card-body { + flex: 1 1 auto; + padding: 1rem 1rem; +} + +.card-title { + margin-bottom: 0.5rem; +} + +.card-subtitle { + margin-top: -0.25rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} + +.card-link+.card-link { + margin-left: 1rem; +} + +.card-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-footer { + padding: 0.5rem 1rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} + +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.card-header-tabs { + margin-right: -0.5rem; + margin-bottom: -0.5rem; + margin-left: -0.5rem; + border-bottom: 0; +} + +.card-header-pills { + margin-right: -0.5rem; + margin-left: -0.5rem; +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1rem; + border-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; +} + +.card-img, +.card-img-top { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-bottom { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-group>.card { + margin-bottom: 0.75rem; +} + +@media (min-width: 576px) { + .card-group { + display: flex; + flex-flow: row wrap; + } + + .card-group>.card { + flex: 1 0 0%; + margin-bottom: 0; + } + + .card-group>.card+.card { + margin-left: 0; + border-left: 0; + } + + .card-group>.card:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + .card-group>.card:not(:last-child) .card-img-top, + .card-group>.card:not(:last-child) .card-header { + border-top-right-radius: 0; + } + + .card-group>.card:not(:last-child) .card-img-bottom, + .card-group>.card:not(:last-child) .card-footer { + border-bottom-right-radius: 0; + } + + .card-group>.card:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + + .card-group>.card:not(:first-child) .card-img-top, + .card-group>.card:not(:first-child) .card-header { + border-top-left-radius: 0; + } + + .card-group>.card:not(:first-child) .card-img-bottom, + .card-group>.card:not(:first-child) .card-footer { + border-bottom-left-radius: 0; + } +} + +.accordion-button { + position: relative; + display: flex; + align-items: center; + width: 100%; + padding: 1rem 1.25rem; + font-size: 1rem; + color: #212529; + text-align: left; + background-color: #fff; + border: 0; + border-radius: 0; + overflow-anchor: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; +} + +@media (prefers-reduced-motion: reduce) { + .accordion-button { + transition: none; + } +} + +.accordion-button:not(.collapsed) { + color: #0c63e4; + background-color: #e7f1ff; + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125); +} + +.accordion-button:not(.collapsed)::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + transform: rotate(-180deg); +} + +.accordion-button::after { + flex-shrink: 0; + width: 1.25rem; + height: 1.25rem; + margin-left: auto; + content: ""; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-size: 1.25rem; + transition: transform 0.2s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .accordion-button::after { + transition: none; + } +} + +.accordion-button:hover { + z-index: 2; +} + +.accordion-button:focus { + z-index: 3; + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item { + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} + +.accordion-item:first-of-type { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} + +.accordion-item:first-of-type .accordion-button { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.accordion-item:not(:first-of-type) { + border-top: 0; +} + +.accordion-item:last-of-type { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.accordion-item:last-of-type .accordion-collapse { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-body { + padding: 1rem 1.25rem; +} + +.accordion-flush .accordion-collapse { + border-width: 0; +} + +.accordion-flush .accordion-item { + border-right: 0; + border-left: 0; + border-radius: 0; +} + +.accordion-flush .accordion-item:first-child { + border-top: 0; +} + +.accordion-flush .accordion-item:last-child { + border-bottom: 0; +} + +.accordion-flush .accordion-item .accordion-button { + border-radius: 0; +} + +.breadcrumb { + display: flex; + flex-wrap: wrap; + padding: 0 0; + margin-bottom: 1rem; + list-style: none; +} + +.breadcrumb-item+.breadcrumb-item { + padding-left: 0.5rem; +} + +.breadcrumb-item+.breadcrumb-item::before { + float: left; + padding-right: 0.5rem; + color: #6c757d; + content: var(--bs-breadcrumb-divider, "/") + /* rtl: var(--bs-breadcrumb-divider, "/") */ + ; +} + +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: flex; + padding-left: 0; + list-style: none; +} + +.page-link { + position: relative; + display: block; + color: #0d6efd; + text-decoration: none; + background-color: #fff; + border: 1px solid #dee2e6; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .page-link { + transition: none; + } +} + +.page-link:hover { + z-index: 2; + color: #0a58ca; + background-color: #e9ecef; + border-color: #dee2e6; +} + +.page-link:focus { + z-index: 3; + color: #0a58ca; + background-color: #e9ecef; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.page-item:not(:first-child) .page-link { + margin-left: -1px; +} + +.page-item.active .page-link { + z-index: 3; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + background-color: #fff; + border-color: #dee2e6; +} + +.page-link { + padding: 0.375rem 0.75rem; +} + +.page-item:first-child .page-link { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; +} + +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} + +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; +} + +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} + +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.35em 0.65em; + font-size: 0.75em; + font-weight: 700; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; +} + +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.alert { + position: relative; + padding: 1rem 1rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; +} + +.alert-dismissible { + padding-right: 3rem; +} + +.alert-dismissible .btn-close { + position: absolute; + top: 0; + right: 0; + z-index: 2; + padding: 1.25rem 1rem; +} + +.alert-primary { + color: #084298; + background-color: #cfe2ff; + border-color: #b6d4fe; +} + +.alert-primary .alert-link { + color: #06357a; +} + +.alert-secondary { + color: #41464b; + background-color: #e2e3e5; + border-color: #d3d6d8; +} + +.alert-secondary .alert-link { + color: #34383c; +} + +.alert-success { + color: #0f5132; + background-color: #d1e7dd; + border-color: #badbcc; +} + +.alert-success .alert-link { + color: #0c4128; +} + +.alert-info { + color: #055160; + background-color: #cff4fc; + border-color: #b6effb; +} + +.alert-info .alert-link { + color: #04414d; +} + +.alert-warning { + color: #664d03; + background-color: #fff3cd; + border-color: #ffecb5; +} + +.alert-warning .alert-link { + color: #523e02; +} + +.alert-danger { + color: #842029; + background-color: #f8d7da; + border-color: #f5c2c7; +} + +.alert-danger .alert-link { + color: #6a1a21; +} + +.alert-light { + color: #636464; + background-color: #fefefe; + border-color: #fdfdfe; +} + +.alert-light .alert-link { + color: #4f5050; +} + +.alert-dark { + color: #141619; + background-color: #d3d3d4; + border-color: #bcbebf; +} + +.alert-dark .alert-link { + color: #101214; +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +.progress { + display: flex; + height: 1rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: flex; + flex-direction: column; + justify-content: center; + overflow: hidden; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #0d6efd; + transition: width 0.6s ease; +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar { + transition: none; + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem; +} + +.progress-bar-animated { + -webkit-animation: 1s linear infinite progress-bar-stripes; + animation: 1s linear infinite progress-bar-stripes; +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + -webkit-animation: none; + animation: none; + } +} + +.list-group { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + border-radius: 0.25rem; +} + +.list-group-numbered { + list-style-type: none; + counter-reset: section; +} + +.list-group-numbered>li::before { + content: counters(section, ".") ". "; + counter-increment: section; +} + +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit; +} + +.list-group-item-action:hover, +.list-group-item-action:focus { + z-index: 1; + color: #495057; + text-decoration: none; + background-color: #f8f9fa; +} + +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; +} + +.list-group-item { + position: relative; + display: block; + padding: 0.5rem 1rem; + color: #212529; + text-decoration: none; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} + +.list-group-item:first-child { + border-top-left-radius: inherit; + border-top-right-radius: inherit; +} + +.list-group-item:last-child { + border-bottom-right-radius: inherit; + border-bottom-left-radius: inherit; +} + +.list-group-item.disabled, +.list-group-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: #fff; +} + +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.list-group-item+.list-group-item { + border-top-width: 0; +} + +.list-group-item+.list-group-item.active { + margin-top: -1px; + border-top-width: 1px; +} + +.list-group-horizontal { + flex-direction: row; +} + +.list-group-horizontal>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; +} + +.list-group-horizontal>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; +} + +.list-group-horizontal>.list-group-item.active { + margin-top: 0; +} + +.list-group-horizontal>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; +} + +.list-group-horizontal>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; +} + +@media (min-width: 576px) { + .list-group-horizontal-sm { + flex-direction: row; + } + + .list-group-horizontal-sm>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-sm>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-sm>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-sm>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-sm>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 768px) { + .list-group-horizontal-md { + flex-direction: row; + } + + .list-group-horizontal-md>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-md>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-md>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-md>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-md>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 992px) { + .list-group-horizontal-lg { + flex-direction: row; + } + + .list-group-horizontal-lg>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-lg>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-lg>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-lg>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-lg>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 1200px) { + .list-group-horizontal-xl { + flex-direction: row; + } + + .list-group-horizontal-xl>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-xl>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-xl>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-xl>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-xl>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +@media (min-width: 1400px) { + .list-group-horizontal-xxl { + flex-direction: row; + } + + .list-group-horizontal-xxl>.list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + + .list-group-horizontal-xxl>.list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + + .list-group-horizontal-xxl>.list-group-item.active { + margin-top: 0; + } + + .list-group-horizontal-xxl>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + + .list-group-horizontal-xxl>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} + +.list-group-flush { + border-radius: 0; +} + +.list-group-flush>.list-group-item { + border-width: 0 0 1px; +} + +.list-group-flush>.list-group-item:last-child { + border-bottom-width: 0; +} + +.list-group-item-primary { + color: #084298; + background-color: #cfe2ff; +} + +.list-group-item-primary.list-group-item-action:hover, +.list-group-item-primary.list-group-item-action:focus { + color: #084298; + background-color: #bacbe6; +} + +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #084298; + border-color: #084298; +} + +.list-group-item-secondary { + color: #41464b; + background-color: #e2e3e5; +} + +.list-group-item-secondary.list-group-item-action:hover, +.list-group-item-secondary.list-group-item-action:focus { + color: #41464b; + background-color: #cbccce; +} + +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #41464b; + border-color: #41464b; +} + +.list-group-item-success { + color: #0f5132; + background-color: #d1e7dd; +} + +.list-group-item-success.list-group-item-action:hover, +.list-group-item-success.list-group-item-action:focus { + color: #0f5132; + background-color: #bcd0c7; +} + +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #0f5132; + border-color: #0f5132; +} + +.list-group-item-info { + color: #055160; + background-color: #cff4fc; +} + +.list-group-item-info.list-group-item-action:hover, +.list-group-item-info.list-group-item-action:focus { + color: #055160; + background-color: #badce3; +} + +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #055160; + border-color: #055160; +} + +.list-group-item-warning { + color: #664d03; + background-color: #fff3cd; +} + +.list-group-item-warning.list-group-item-action:hover, +.list-group-item-warning.list-group-item-action:focus { + color: #664d03; + background-color: #e6dbb9; +} + +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #664d03; + border-color: #664d03; +} + +.list-group-item-danger { + color: #842029; + background-color: #f8d7da; +} + +.list-group-item-danger.list-group-item-action:hover, +.list-group-item-danger.list-group-item-action:focus { + color: #842029; + background-color: #dfc2c4; +} + +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #842029; + border-color: #842029; +} + +.list-group-item-light { + color: #636464; + background-color: #fefefe; +} + +.list-group-item-light.list-group-item-action:hover, +.list-group-item-light.list-group-item-action:focus { + color: #636464; + background-color: #e5e5e5; +} + +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #636464; + border-color: #636464; +} + +.list-group-item-dark { + color: #141619; + background-color: #d3d3d4; +} + +.list-group-item-dark.list-group-item-action:hover, +.list-group-item-dark.list-group-item-action:focus { + color: #141619; + background-color: #bebebf; +} + +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #141619; + border-color: #141619; +} + +.btn-close { + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.25em; + color: #000; + background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat; + border: 0; + border-radius: 0.25rem; + opacity: 0.5; +} + +.btn-close:hover { + color: #000; + text-decoration: none; + opacity: 0.75; +} + +.btn-close:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + opacity: 1; +} + +.btn-close:disabled, +.btn-close.disabled { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + opacity: 0.25; +} + +.btn-close-white { + filter: invert(1) grayscale(100%) brightness(200%); +} + +.toast { + width: 350px; + max-width: 100%; + font-size: 0.875rem; + pointer-events: auto; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} + +.toast:not(.showing):not(.show) { + opacity: 0; +} + +.toast.hide { + display: none; +} + +.toast-container { + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + max-width: 100%; + pointer-events: none; +} + +.toast-container> :not(:last-child) { + margin-bottom: 0.75rem; +} + +.toast-header { + display: flex; + align-items: center; + padding: 0.5rem 0.75rem; + color: #6c757d; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.toast-header .btn-close { + margin-right: -0.375rem; + margin-left: 0.75rem; +} + +.toast-body { + padding: 0.75rem; + word-wrap: break-word; +} + +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1060; + display: none; + width: 100%; + height: 100%; + overflow-x: hidden; + overflow-y: auto; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; +} + +.modal.fade .modal-dialog { + transition: transform 0.3s ease-out; + transform: translate(0, -50px); +} + +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } +} + +.modal.show .modal-dialog { + transform: none; +} + +.modal.modal-static .modal-dialog { + transform: scale(1.02); +} + +.modal-dialog-scrollable { + height: calc(100% - 1rem); +} + +.modal-dialog-scrollable .modal-content { + max-height: 100%; + overflow: hidden; +} + +.modal-dialog-scrollable .modal-body { + overflow-y: auto; +} + +.modal-dialog-centered { + display: flex; + align-items: center; + min-height: calc(100% - 1rem); +} + +.modal-content { + position: relative; + display: flex; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; +} + +.modal-backdrop { + position: fixed; + top: 0; + left: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000; +} + +.modal-backdrop.fade { + opacity: 0; +} + +.modal-backdrop.show { + opacity: 0.5; +} + +.modal-header { + display: flex; + flex-shrink: 0; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} + +.modal-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5; +} + +.modal-body { + position: relative; + flex: 1 1 auto; + padding: 1rem; +} + +.modal-footer { + display: flex; + flex-wrap: wrap; + flex-shrink: 0; + align-items: center; + justify-content: flex-end; + padding: 0.75rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: calc(0.3rem - 1px); + border-bottom-left-radius: calc(0.3rem - 1px); +} + +.modal-footer>* { + margin: 0.25rem; +} + +@media (min-width: 576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto; + } + + .modal-dialog-scrollable { + height: calc(100% - 3.5rem); + } + + .modal-dialog-centered { + min-height: calc(100% - 3.5rem); + } + + .modal-sm { + max-width: 300px; + } +} + +@media (min-width: 992px) { + + .modal-lg, + .modal-xl { + max-width: 800px; + } +} + +@media (min-width: 1200px) { + .modal-xl { + max-width: 1140px; + } +} + +.modal-fullscreen { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; +} + +.modal-fullscreen .modal-content { + height: 100%; + border: 0; + border-radius: 0; +} + +.modal-fullscreen .modal-header { + border-radius: 0; +} + +.modal-fullscreen .modal-body { + overflow-y: auto; +} + +.modal-fullscreen .modal-footer { + border-radius: 0; +} + +@media (max-width: 575.98px) { + .modal-fullscreen-sm-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-sm-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-sm-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-sm-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 767.98px) { + .modal-fullscreen-md-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-md-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-md-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-md-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-md-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 991.98px) { + .modal-fullscreen-lg-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-lg-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-lg-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-lg-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 1199.98px) { + .modal-fullscreen-xl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-xl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-xl-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-xl-down .modal-footer { + border-radius: 0; + } +} + +@media (max-width: 1399.98px) { + .modal-fullscreen-xxl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + + .modal-fullscreen-xxl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + + .modal-fullscreen-xxl-down .modal-header { + border-radius: 0; + } + + .modal-fullscreen-xxl-down .modal-body { + overflow-y: auto; + } + + .modal-fullscreen-xxl-down .modal-footer { + border-radius: 0; + } +} + +.tooltip { + position: absolute; + z-index: 1080; + display: block; + margin: 0; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + opacity: 0; +} + +.tooltip.show { + opacity: 0.9; +} + +.tooltip .tooltip-arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.4rem; +} + +.tooltip .tooltip-arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-tooltip-top, +.bs-tooltip-auto[data-popper-placement^=top] { + padding: 0.4rem 0; +} + +.bs-tooltip-top .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow { + bottom: 0; +} + +.bs-tooltip-top .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before { + top: -1px; + border-width: 0.4rem 0.4rem 0; + border-top-color: #000; +} + +.bs-tooltip-end, +.bs-tooltip-auto[data-popper-placement^=right] { + padding: 0 0.4rem; +} + +.bs-tooltip-end .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-end .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { + right: -1px; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; +} + +.bs-tooltip-bottom, +.bs-tooltip-auto[data-popper-placement^=bottom] { + padding: 0.4rem 0; +} + +.bs-tooltip-bottom .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow { + top: 0; +} + +.bs-tooltip-bottom .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before { + bottom: -1px; + border-width: 0 0.4rem 0.4rem; + border-bottom-color: #000; +} + +.bs-tooltip-start, +.bs-tooltip-auto[data-popper-placement^=left] { + padding: 0 0.4rem; +} + +.bs-tooltip-start .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; +} + +.bs-tooltip-start .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { + left: -1px; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; +} + +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 0.25rem; +} + +.popover { + position: absolute; + top: 0; + left: 0 + /* rtl:ignore */ + ; + z-index: 1070; + display: block; + max-width: 276px; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; +} + +.popover .popover-arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.5rem; +} + +.popover .popover-arrow::before, +.popover .popover-arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-popover-top>.popover-arrow, +.bs-popover-auto[data-popper-placement^=top]>.popover-arrow { + bottom: calc(-0.5rem - 1px); +} + +.bs-popover-top>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before { + bottom: 0; + border-width: 0.5rem 0.5rem 0; + border-top-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-top>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after { + bottom: 1px; + border-width: 0.5rem 0.5rem 0; + border-top-color: #fff; +} + +.bs-popover-end>.popover-arrow, +.bs-popover-auto[data-popper-placement^=right]>.popover-arrow { + left: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; +} + +.bs-popover-end>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before { + left: 0; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-end>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after { + left: 1px; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: #fff; +} + +.bs-popover-bottom>.popover-arrow, +.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow { + top: calc(-0.5rem - 1px); +} + +.bs-popover-bottom>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before { + top: 0; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-bottom>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after { + top: 1px; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: #fff; +} + +.bs-popover-bottom .popover-header::before, +.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -0.5rem; + content: ""; + border-bottom: 1px solid #f0f0f0; +} + +.bs-popover-start>.popover-arrow, +.bs-popover-auto[data-popper-placement^=left]>.popover-arrow { + right: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; +} + +.bs-popover-start>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before { + right: 0; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: rgba(0, 0, 0, 0.25); +} + +.bs-popover-start>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after { + right: 1px; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: #fff; +} + +.popover-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 1rem; + background-color: #f0f0f0; + border-bottom: 1px solid #d8d8d8; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} + +.popover-header:empty { + display: none; +} + +.popover-body { + padding: 1rem 1rem; + color: #212529; +} + +.carousel { + position: relative; +} + +.carousel.pointer-event { + touch-action: pan-y; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} + +.carousel-inner::after { + display: block; + clear: both; + content: ""; +} + +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transition: transform 0.6s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none; + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +/* rtl:begin:ignore */ +.carousel-item-next:not(.carousel-item-start), +.active.carousel-item-end { + transform: translateX(100%); +} + +.carousel-item-prev:not(.carousel-item-end), +.active.carousel-item-start { + transform: translateX(-100%); +} + +/* rtl:end:ignore */ +.carousel-fade .carousel-item { + opacity: 0; + transition-property: opacity; + transform: none; +} + +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-start, +.carousel-fade .carousel-item-prev.carousel-item-end { + z-index: 1; + opacity: 1; +} + +.carousel-fade .active.carousel-item-start, +.carousel-fade .active.carousel-item-end { + z-index: 0; + opacity: 0; + transition: opacity 0s 0.6s; +} + +@media (prefers-reduced-motion: reduce) { + + .carousel-fade .active.carousel-item-start, + .carousel-fade .active.carousel-item-end { + transition: none; + } +} + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + z-index: 1; + display: flex; + align-items: center; + justify-content: center; + width: 15%; + padding: 0; + color: #fff; + text-align: center; + background: none; + border: 0; + opacity: 0.5; + transition: opacity 0.15s ease; +} + +@media (prefers-reduced-motion: reduce) { + + .carousel-control-prev, + .carousel-control-next { + transition: none; + } +} + +.carousel-control-prev:hover, +.carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: 0.9; +} + +.carousel-control-prev { + left: 0; +} + +.carousel-control-next { + right: 0; +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 2rem; + height: 2rem; + background-repeat: no-repeat; + background-position: 50%; + background-size: 100% 100%; +} + +/* rtl:options: { + "autoRename": true, + "stringMap":[ { + "name" : "prev-next", + "search" : "prev", + "replace" : "next" + } ] +} */ +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e"); +} + +.carousel-control-next-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); +} + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + display: flex; + justify-content: center; + padding: 0; + margin-right: 15%; + margin-bottom: 1rem; + margin-left: 15%; + list-style: none; +} + +.carousel-indicators [data-bs-target] { + box-sizing: content-box; + flex: 0 1 auto; + width: 30px; + height: 3px; + padding: 0; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border: 0; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: 0.5; + transition: opacity 0.6s ease; +} + +@media (prefers-reduced-motion: reduce) { + .carousel-indicators [data-bs-target] { + transition: none; + } +} + +.carousel-indicators .active { + opacity: 1; +} + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 1.25rem; + left: 15%; + padding-top: 1.25rem; + padding-bottom: 1.25rem; + color: #fff; + text-align: center; +} + +.carousel-dark .carousel-control-prev-icon, +.carousel-dark .carousel-control-next-icon { + filter: invert(1) grayscale(100); +} + +.carousel-dark .carousel-indicators [data-bs-target] { + background-color: #000; +} + +.carousel-dark .carousel-caption { + color: #000; +} + +@-webkit-keyframes spinner-border { + to { + transform: rotate(360deg) + /* rtl:ignore */ + ; + } +} + +@keyframes spinner-border { + to { + transform: rotate(360deg) + /* rtl:ignore */ + ; + } +} + +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + border: 0.25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + -webkit-animation: 0.75s linear infinite spinner-border; + animation: 0.75s linear infinite spinner-border; +} + +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: 0.2em; +} + +@-webkit-keyframes spinner-grow { + 0% { + transform: scale(0); + } + + 50% { + opacity: 1; + transform: none; + } +} + +@keyframes spinner-grow { + 0% { + transform: scale(0); + } + + 50% { + opacity: 1; + transform: none; + } +} + +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + -webkit-animation: 0.75s linear infinite spinner-grow; + animation: 0.75s linear infinite spinner-grow; +} + +.spinner-grow-sm { + width: 1rem; + height: 1rem; +} + +@media (prefers-reduced-motion: reduce) { + + .spinner-border, + .spinner-grow { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; + } +} + +.offcanvas { + position: fixed; + bottom: 0; + z-index: 1050; + display: flex; + flex-direction: column; + max-width: 100%; + visibility: hidden; + background-color: #fff; + background-clip: padding-box; + outline: 0; + transition: transform 0.3s ease-in-out; +} + +@media (prefers-reduced-motion: reduce) { + .offcanvas { + transition: none; + } +} + +.offcanvas-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; +} + +.offcanvas-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.offcanvas-title { + margin-bottom: 0; + line-height: 1.5; +} + +.offcanvas-body { + flex-grow: 1; + padding: 1rem 1rem; + overflow-y: auto; +} + +.offcanvas-start { + top: 0; + left: 0; + width: 400px; + border-right: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(-100%); +} + +.offcanvas-end { + top: 0; + right: 0; + width: 400px; + border-left: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(100%); +} + +.offcanvas-top { + top: 0; + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(-100%); +} + +.offcanvas-bottom { + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-top: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(100%); +} + +.offcanvas.show { + transform: none; +} + +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.link-primary { + color: #0d6efd; +} + +.link-primary:hover, +.link-primary:focus { + color: #0a58ca; +} + +.link-secondary { + color: #6c757d; +} + +.link-secondary:hover, +.link-secondary:focus { + color: #565e64; +} + +.link-success { + color: #198754; +} + +.link-success:hover, +.link-success:focus { + color: #146c43; +} + +.link-info { + color: #0dcaf0; +} + +.link-info:hover, +.link-info:focus { + color: #3dd5f3; +} + +.link-warning { + color: #ffc107; +} + +.link-warning:hover, +.link-warning:focus { + color: #ffcd39; +} + +.link-danger { + color: #dc3545; +} + +.link-danger:hover, +.link-danger:focus { + color: #b02a37; +} + +.link-light { + color: #f8f9fa; +} + +.link-light:hover, +.link-light:focus { + color: #f9fafb; +} + +.link-dark { + color: #212529; +} + +.link-dark:hover, +.link-dark:focus { + color: #1a1e21; +} + +.ratio { + position: relative; + width: 100%; +} + +.ratio::before { + display: block; + padding-top: var(--bs-aspect-ratio); + content: ""; +} + +.ratio>* { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} + +.ratio-1x1 { + --bs-aspect-ratio: 100%; +} + +.ratio-4x3 { + --bs-aspect-ratio: calc(3 / 4 * 100%); +} + +.ratio-16x9 { + --bs-aspect-ratio: calc(9 / 16 * 100%); +} + +.ratio-21x9 { + --bs-aspect-ratio: calc(9 / 21 * 100%); +} + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; +} + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; +} + +.sticky-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; +} + +@media (min-width: 576px) { + .sticky-sm-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 768px) { + .sticky-md-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 992px) { + .sticky-lg-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 1200px) { + .sticky-xl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +@media (min-width: 1400px) { + .sticky-xxl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} + +.visually-hidden, +.visually-hidden-focusable:not(:focus):not(:focus-within) { + position: absolute !important; + width: 1px !important; + height: 1px !important; + padding: 0 !important; + margin: -1px !important; + overflow: hidden !important; + clip: rect(0, 0, 0, 0) !important; + white-space: nowrap !important; + border: 0 !important; +} + +.stretched-link::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1; + content: ""; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.float-start { + float: left !important; +} + +.float-end { + float: right !important; +} + +.float-none { + float: none !important; +} + +.overflow-auto { + overflow: auto !important; +} + +.overflow-hidden { + overflow: hidden !important; +} + +.overflow-visible { + overflow: visible !important; +} + +.overflow-scroll { + overflow: scroll !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-grid { + display: grid !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: flex !important; +} + +.d-inline-flex { + display: inline-flex !important; +} + +.d-none { + display: none !important; +} + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; +} + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; +} + +.shadow-none { + box-shadow: none !important; +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important; +} + +.top-0 { + top: 0 !important; +} + +.top-50 { + top: 50% !important; +} + +.top-100 { + top: 100% !important; +} + +.bottom-0 { + bottom: 0 !important; +} + +.bottom-50 { + bottom: 50% !important; +} + +.bottom-100 { + bottom: 100% !important; +} + +.start-0 { + left: 0 !important; +} + +.start-50 { + left: 50% !important; +} + +.start-100 { + left: 100% !important; +} + +.end-0 { + right: 0 !important; +} + +.end-50 { + right: 50% !important; +} + +.end-100 { + right: 100% !important; +} + +.translate-middle { + transform: translate(-50%, -50%) !important; +} + +.translate-middle-x { + transform: translateX(-50%) !important; +} + +.translate-middle-y { + transform: translateY(-50%) !important; +} + +.border { + border: 1px solid #dee2e6 !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top { + border-top: 1px solid #dee2e6 !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-end { + border-right: 1px solid #dee2e6 !important; +} + +.border-end-0 { + border-right: 0 !important; +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-start { + border-left: 1px solid #dee2e6 !important; +} + +.border-start-0 { + border-left: 0 !important; +} + +.border-primary { + border-color: #0d6efd !important; +} + +.border-secondary { + border-color: #6c757d !important; +} + +.border-success { + border-color: #198754 !important; +} + +.border-info { + border-color: #0dcaf0 !important; +} + +.border-warning { + border-color: #ffc107 !important; +} + +.border-danger { + border-color: #dc3545 !important; +} + +.border-light { + border-color: #f8f9fa !important; +} + +.border-dark { + border-color: #212529 !important; +} + +.border-white { + border-color: #fff !important; +} + +.border-1 { + border-width: 1px !important; +} + +.border-2 { + border-width: 2px !important; +} + +.border-3 { + border-width: 3px !important; +} + +.border-4 { + border-width: 4px !important; +} + +.border-5 { + border-width: 5px !important; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.vw-100 { + width: 100vw !important; +} + +.min-vw-100 { + min-width: 100vw !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.vh-100 { + height: 100vh !important; +} + +.min-vh-100 { + min-height: 100vh !important; +} + +.flex-fill { + flex: 1 1 auto !important; +} + +.flex-row { + flex-direction: row !important; +} + +.flex-column { + flex-direction: column !important; +} + +.flex-row-reverse { + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + flex-direction: column-reverse !important; +} + +.flex-grow-0 { + flex-grow: 0 !important; +} + +.flex-grow-1 { + flex-grow: 1 !important; +} + +.flex-shrink-0 { + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + flex-shrink: 1 !important; +} + +.flex-wrap { + flex-wrap: wrap !important; +} + +.flex-nowrap { + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important; +} + +.gap-0 { + gap: 0 !important; +} + +.gap-1 { + gap: 0.25rem !important; +} + +.gap-2 { + gap: 0.5rem !important; +} + +.gap-3 { + gap: 1rem !important; +} + +.gap-4 { + gap: 1.5rem !important; +} + +.gap-5 { + gap: 3rem !important; +} + +.justify-content-start { + justify-content: flex-start !important; +} + +.justify-content-end { + justify-content: flex-end !important; +} + +.justify-content-center { + justify-content: center !important; +} + +.justify-content-between { + justify-content: space-between !important; +} + +.justify-content-around { + justify-content: space-around !important; +} + +.justify-content-evenly { + justify-content: space-evenly !important; +} + +.align-items-start { + align-items: flex-start !important; +} + +.align-items-end { + align-items: flex-end !important; +} + +.align-items-center { + align-items: center !important; +} + +.align-items-baseline { + align-items: baseline !important; +} + +.align-items-stretch { + align-items: stretch !important; +} + +.align-content-start { + align-content: flex-start !important; +} + +.align-content-end { + align-content: flex-end !important; +} + +.align-content-center { + align-content: center !important; +} + +.align-content-between { + align-content: space-between !important; +} + +.align-content-around { + align-content: space-around !important; +} + +.align-content-stretch { + align-content: stretch !important; +} + +.align-self-auto { + align-self: auto !important; +} + +.align-self-start { + align-self: flex-start !important; +} + +.align-self-end { + align-self: flex-end !important; +} + +.align-self-center { + align-self: center !important; +} + +.align-self-baseline { + align-self: baseline !important; +} + +.align-self-stretch { + align-self: stretch !important; +} + +.order-first { + order: -1 !important; +} + +.order-0 { + order: 0 !important; +} + +.order-1 { + order: 1 !important; +} + +.order-2 { + order: 2 !important; +} + +.order-3 { + order: 3 !important; +} + +.order-4 { + order: 4 !important; +} + +.order-5 { + order: 5 !important; +} + +.order-last { + order: 6 !important; +} + +.m-0 { + margin: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.m-3 { + margin: 1rem !important; +} + +.m-4 { + margin: 1.5rem !important; +} + +.m-5 { + margin: 3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mx-0 { + margin-right: 0 !important; + margin-left: 0 !important; +} + +.mx-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; +} + +.mx-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; +} + +.mx-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; +} + +.mx-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; +} + +.mx-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; +} + +.mx-auto { + margin-right: auto !important; + margin-left: auto !important; +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.my-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; +} + +.my-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; +} + +.my-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; +} + +.my-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; +} + +.my-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; +} + +.mt-0 { + margin-top: 0 !important; +} + +.mt-1 { + margin-top: 0.25rem !important; +} + +.mt-2 { + margin-top: 0.5rem !important; +} + +.mt-3 { + margin-top: 1rem !important; +} + +.mt-4 { + margin-top: 1.5rem !important; +} + +.mt-5 { + margin-top: 3rem !important; +} + +.mt-auto { + margin-top: auto !important; +} + +.me-0 { + margin-right: 0 !important; +} + +.me-1 { + margin-right: 0.25rem !important; +} + +.me-2 { + margin-right: 0.5rem !important; +} + +.me-3 { + margin-right: 1rem !important; +} + +.me-4 { + margin-right: 1.5rem !important; +} + +.me-5 { + margin-right: 3rem !important; +} + +.me-auto { + margin-right: auto !important; +} + +.mb-0 { + margin-bottom: 0 !important; +} + +.mb-1 { + margin-bottom: 0.25rem !important; +} + +.mb-2 { + margin-bottom: 0.5rem !important; +} + +.mb-3 { + margin-bottom: 1rem !important; +} + +.mb-4 { + margin-bottom: 1.5rem !important; +} + +.mb-5 { + margin-bottom: 3rem !important; +} + +.mb-auto { + margin-bottom: auto !important; +} + +.ms-0 { + margin-left: 0 !important; +} + +.ms-1 { + margin-left: 0.25rem !important; +} + +.ms-2 { + margin-left: 0.5rem !important; +} + +.ms-3 { + margin-left: 1rem !important; +} + +.ms-4 { + margin-left: 1.5rem !important; +} + +.ms-5 { + margin-left: 3rem !important; +} + +.ms-auto { + margin-left: auto !important; +} + +.p-0 { + padding: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.p-3 { + padding: 1rem !important; +} + +.p-4 { + padding: 1.5rem !important; +} + +.p-5 { + padding: 3rem !important; +} + +.px-0 { + padding-right: 0 !important; + padding-left: 0 !important; +} + +.px-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; +} + +.px-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; +} + +.px-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; +} + +.px-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; +} + +.px-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; +} + +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + +.py-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; +} + +.py-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; +} + +.py-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; +} + +.py-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; +} + +.py-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; +} + +.pt-0 { + padding-top: 0 !important; +} + +.pt-1 { + padding-top: 0.25rem !important; +} + +.pt-2 { + padding-top: 0.5rem !important; +} + +.pt-3 { + padding-top: 1rem !important; +} + +.pt-4 { + padding-top: 1.5rem !important; +} + +.pt-5 { + padding-top: 3rem !important; +} + +.pe-0 { + padding-right: 0 !important; +} + +.pe-1 { + padding-right: 0.25rem !important; +} + +.pe-2 { + padding-right: 0.5rem !important; +} + +.pe-3 { + padding-right: 1rem !important; +} + +.pe-4 { + padding-right: 1.5rem !important; +} + +.pe-5 { + padding-right: 3rem !important; +} + +.pb-0 { + padding-bottom: 0 !important; +} + +.pb-1 { + padding-bottom: 0.25rem !important; +} + +.pb-2 { + padding-bottom: 0.5rem !important; +} + +.pb-3 { + padding-bottom: 1rem !important; +} + +.pb-4 { + padding-bottom: 1.5rem !important; +} + +.pb-5 { + padding-bottom: 3rem !important; +} + +.ps-0 { + padding-left: 0 !important; +} + +.ps-1 { + padding-left: 0.25rem !important; +} + +.ps-2 { + padding-left: 0.5rem !important; +} + +.ps-3 { + padding-left: 1rem !important; +} + +.ps-4 { + padding-left: 1.5rem !important; +} + +.ps-5 { + padding-left: 3rem !important; +} + +.font-monospace { + font-family: var(--bs-font-monospace) !important; +} + +.fs-1 { + font-size: calc(1.375rem + 1.5vw) !important; +} + +.fs-2 { + font-size: calc(1.325rem + 0.9vw) !important; +} + +.fs-3 { + font-size: calc(1.3rem + 0.6vw) !important; +} + +.fs-4 { + font-size: calc(1.275rem + 0.3vw) !important; +} + +.fs-5 { + font-size: 1.25rem !important; +} + +.fs-6 { + font-size: 1rem !important; +} + +.fst-italic { + font-style: italic !important; +} + +.fst-normal { + font-style: normal !important; +} + +.fw-light { + font-weight: 300 !important; +} + +.fw-lighter { + font-weight: lighter !important; +} + +.fw-normal { + font-weight: 400 !important; +} + +.fw-bold { + font-weight: 700 !important; +} + +.fw-bolder { + font-weight: bolder !important; +} + +.lh-1 { + line-height: 1 !important; +} + +.lh-sm { + line-height: 1.25 !important; +} + +.lh-base { + line-height: 1.5 !important; +} + +.lh-lg { + line-height: 2 !important; +} + +.text-start { + text-align: left !important; +} + +.text-end { + text-align: right !important; +} + +.text-center { + text-align: center !important; +} + +.text-decoration-none { + text-decoration: none !important; +} + +.text-decoration-underline { + text-decoration: underline !important; +} + +.text-decoration-line-through { + text-decoration: line-through !important; +} + +.text-lowercase { + text-transform: lowercase !important; +} + +.text-uppercase { + text-transform: uppercase !important; +} + +.text-capitalize { + text-transform: capitalize !important; +} + +.text-wrap { + white-space: normal !important; +} + +.text-nowrap { + white-space: nowrap !important; +} + +/* rtl:begin:remove */ +.text-break { + word-wrap: break-word !important; + word-break: break-word !important; +} + +/* rtl:end:remove */ +.text-primary { + color: #0d6efd !important; +} + +.text-secondary { + color: #6c757d !important; +} + +.text-success { + color: #198754 !important; +} + +.text-info { + color: #0dcaf0 !important; +} + +.text-warning { + color: #ffc107 !important; +} + +.text-danger { + color: #dc3545 !important; +} + +.text-light { + color: #f8f9fa !important; +} + +.text-dark { + color: #212529 !important; +} + +.text-white { + color: #fff !important; +} + +.text-body { + color: #212529 !important; +} + +.text-muted { + color: #6c757d !important; +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-reset { + color: inherit !important; +} + +.bg-primary { + background-color: #0d6efd !important; +} + +.bg-secondary { + background-color: #6c757d !important; +} + +.bg-success { + background-color: #198754 !important; +} + +.bg-info { + background-color: #0dcaf0 !important; +} + +.bg-warning { + background-color: #ffc107 !important; +} + +.bg-danger { + background-color: #dc3545 !important; +} + +.bg-light { + background-color: #f8f9fa !important; +} + +.bg-dark { + background-color: #212529 !important; +} + +.bg-body { + background-color: #fff !important; +} + +.bg-white { + background-color: #fff !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.bg-gradient { + background-image: var(--bs-gradient) !important; +} + +.user-select-all { + -webkit-user-select: all !important; + -moz-user-select: all !important; + user-select: all !important; +} + +.user-select-auto { + -webkit-user-select: auto !important; + -moz-user-select: auto !important; + user-select: auto !important; +} + +.user-select-none { + -webkit-user-select: none !important; + -moz-user-select: none !important; + user-select: none !important; +} + +.pe-none { + pointer-events: none !important; +} + +.pe-auto { + pointer-events: auto !important; +} + +.rounded { + border-radius: 0.25rem !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.rounded-1 { + border-radius: 0.2rem !important; +} + +.rounded-2 { + border-radius: 0.25rem !important; +} + +.rounded-3 { + border-radius: 0.3rem !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-pill { + border-radius: 50rem !important; +} + +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} + +.rounded-end { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} + +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-start { + border-bottom-left-radius: 0.25rem !important; + border-top-left-radius: 0.25rem !important; +} + +.visible { + visibility: visible !important; +} + +.invisible { + visibility: hidden !important; +} + +@media (min-width: 576px) { + .float-sm-start { + float: left !important; + } + + .float-sm-end { + float: right !important; + } + + .float-sm-none { + float: none !important; + } + + .d-sm-inline { + display: inline !important; + } + + .d-sm-inline-block { + display: inline-block !important; + } + + .d-sm-block { + display: block !important; + } + + .d-sm-grid { + display: grid !important; + } + + .d-sm-table { + display: table !important; + } + + .d-sm-table-row { + display: table-row !important; + } + + .d-sm-table-cell { + display: table-cell !important; + } + + .d-sm-flex { + display: flex !important; + } + + .d-sm-inline-flex { + display: inline-flex !important; + } + + .d-sm-none { + display: none !important; + } + + .flex-sm-fill { + flex: 1 1 auto !important; + } + + .flex-sm-row { + flex-direction: row !important; + } + + .flex-sm-column { + flex-direction: column !important; + } + + .flex-sm-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-sm-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-sm-grow-0 { + flex-grow: 0 !important; + } + + .flex-sm-grow-1 { + flex-grow: 1 !important; + } + + .flex-sm-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-sm-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-sm-wrap { + flex-wrap: wrap !important; + } + + .flex-sm-nowrap { + flex-wrap: nowrap !important; + } + + .flex-sm-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-sm-0 { + gap: 0 !important; + } + + .gap-sm-1 { + gap: 0.25rem !important; + } + + .gap-sm-2 { + gap: 0.5rem !important; + } + + .gap-sm-3 { + gap: 1rem !important; + } + + .gap-sm-4 { + gap: 1.5rem !important; + } + + .gap-sm-5 { + gap: 3rem !important; + } + + .justify-content-sm-start { + justify-content: flex-start !important; + } + + .justify-content-sm-end { + justify-content: flex-end !important; + } + + .justify-content-sm-center { + justify-content: center !important; + } + + .justify-content-sm-between { + justify-content: space-between !important; + } + + .justify-content-sm-around { + justify-content: space-around !important; + } + + .justify-content-sm-evenly { + justify-content: space-evenly !important; + } + + .align-items-sm-start { + align-items: flex-start !important; + } + + .align-items-sm-end { + align-items: flex-end !important; + } + + .align-items-sm-center { + align-items: center !important; + } + + .align-items-sm-baseline { + align-items: baseline !important; + } + + .align-items-sm-stretch { + align-items: stretch !important; + } + + .align-content-sm-start { + align-content: flex-start !important; + } + + .align-content-sm-end { + align-content: flex-end !important; + } + + .align-content-sm-center { + align-content: center !important; + } + + .align-content-sm-between { + align-content: space-between !important; + } + + .align-content-sm-around { + align-content: space-around !important; + } + + .align-content-sm-stretch { + align-content: stretch !important; + } + + .align-self-sm-auto { + align-self: auto !important; + } + + .align-self-sm-start { + align-self: flex-start !important; + } + + .align-self-sm-end { + align-self: flex-end !important; + } + + .align-self-sm-center { + align-self: center !important; + } + + .align-self-sm-baseline { + align-self: baseline !important; + } + + .align-self-sm-stretch { + align-self: stretch !important; + } + + .order-sm-first { + order: -1 !important; + } + + .order-sm-0 { + order: 0 !important; + } + + .order-sm-1 { + order: 1 !important; + } + + .order-sm-2 { + order: 2 !important; + } + + .order-sm-3 { + order: 3 !important; + } + + .order-sm-4 { + order: 4 !important; + } + + .order-sm-5 { + order: 5 !important; + } + + .order-sm-last { + order: 6 !important; + } + + .m-sm-0 { + margin: 0 !important; + } + + .m-sm-1 { + margin: 0.25rem !important; + } + + .m-sm-2 { + margin: 0.5rem !important; + } + + .m-sm-3 { + margin: 1rem !important; + } + + .m-sm-4 { + margin: 1.5rem !important; + } + + .m-sm-5 { + margin: 3rem !important; + } + + .m-sm-auto { + margin: auto !important; + } + + .mx-sm-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-sm-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-sm-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-sm-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-sm-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-sm-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-sm-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-sm-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-sm-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-sm-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-sm-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-sm-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-sm-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-sm-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-sm-0 { + margin-top: 0 !important; + } + + .mt-sm-1 { + margin-top: 0.25rem !important; + } + + .mt-sm-2 { + margin-top: 0.5rem !important; + } + + .mt-sm-3 { + margin-top: 1rem !important; + } + + .mt-sm-4 { + margin-top: 1.5rem !important; + } + + .mt-sm-5 { + margin-top: 3rem !important; + } + + .mt-sm-auto { + margin-top: auto !important; + } + + .me-sm-0 { + margin-right: 0 !important; + } + + .me-sm-1 { + margin-right: 0.25rem !important; + } + + .me-sm-2 { + margin-right: 0.5rem !important; + } + + .me-sm-3 { + margin-right: 1rem !important; + } + + .me-sm-4 { + margin-right: 1.5rem !important; + } + + .me-sm-5 { + margin-right: 3rem !important; + } + + .me-sm-auto { + margin-right: auto !important; + } + + .mb-sm-0 { + margin-bottom: 0 !important; + } + + .mb-sm-1 { + margin-bottom: 0.25rem !important; + } + + .mb-sm-2 { + margin-bottom: 0.5rem !important; + } + + .mb-sm-3 { + margin-bottom: 1rem !important; + } + + .mb-sm-4 { + margin-bottom: 1.5rem !important; + } + + .mb-sm-5 { + margin-bottom: 3rem !important; + } + + .mb-sm-auto { + margin-bottom: auto !important; + } + + .ms-sm-0 { + margin-left: 0 !important; + } + + .ms-sm-1 { + margin-left: 0.25rem !important; + } + + .ms-sm-2 { + margin-left: 0.5rem !important; + } + + .ms-sm-3 { + margin-left: 1rem !important; + } + + .ms-sm-4 { + margin-left: 1.5rem !important; + } + + .ms-sm-5 { + margin-left: 3rem !important; + } + + .ms-sm-auto { + margin-left: auto !important; + } + + .p-sm-0 { + padding: 0 !important; + } + + .p-sm-1 { + padding: 0.25rem !important; + } + + .p-sm-2 { + padding: 0.5rem !important; + } + + .p-sm-3 { + padding: 1rem !important; + } + + .p-sm-4 { + padding: 1.5rem !important; + } + + .p-sm-5 { + padding: 3rem !important; + } + + .px-sm-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-sm-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-sm-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-sm-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-sm-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-sm-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-sm-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-sm-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-sm-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-sm-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-sm-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-sm-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-sm-0 { + padding-top: 0 !important; + } + + .pt-sm-1 { + padding-top: 0.25rem !important; + } + + .pt-sm-2 { + padding-top: 0.5rem !important; + } + + .pt-sm-3 { + padding-top: 1rem !important; + } + + .pt-sm-4 { + padding-top: 1.5rem !important; + } + + .pt-sm-5 { + padding-top: 3rem !important; + } + + .pe-sm-0 { + padding-right: 0 !important; + } + + .pe-sm-1 { + padding-right: 0.25rem !important; + } + + .pe-sm-2 { + padding-right: 0.5rem !important; + } + + .pe-sm-3 { + padding-right: 1rem !important; + } + + .pe-sm-4 { + padding-right: 1.5rem !important; + } + + .pe-sm-5 { + padding-right: 3rem !important; + } + + .pb-sm-0 { + padding-bottom: 0 !important; + } + + .pb-sm-1 { + padding-bottom: 0.25rem !important; + } + + .pb-sm-2 { + padding-bottom: 0.5rem !important; + } + + .pb-sm-3 { + padding-bottom: 1rem !important; + } + + .pb-sm-4 { + padding-bottom: 1.5rem !important; + } + + .pb-sm-5 { + padding-bottom: 3rem !important; + } + + .ps-sm-0 { + padding-left: 0 !important; + } + + .ps-sm-1 { + padding-left: 0.25rem !important; + } + + .ps-sm-2 { + padding-left: 0.5rem !important; + } + + .ps-sm-3 { + padding-left: 1rem !important; + } + + .ps-sm-4 { + padding-left: 1.5rem !important; + } + + .ps-sm-5 { + padding-left: 3rem !important; + } + + .text-sm-start { + text-align: left !important; + } + + .text-sm-end { + text-align: right !important; + } + + .text-sm-center { + text-align: center !important; + } +} + +@media (min-width: 768px) { + .float-md-start { + float: left !important; + } + + .float-md-end { + float: right !important; + } + + .float-md-none { + float: none !important; + } + + .d-md-inline { + display: inline !important; + } + + .d-md-inline-block { + display: inline-block !important; + } + + .d-md-block { + display: block !important; + } + + .d-md-grid { + display: grid !important; + } + + .d-md-table { + display: table !important; + } + + .d-md-table-row { + display: table-row !important; + } + + .d-md-table-cell { + display: table-cell !important; + } + + .d-md-flex { + display: flex !important; + } + + .d-md-inline-flex { + display: inline-flex !important; + } + + .d-md-none { + display: none !important; + } + + .flex-md-fill { + flex: 1 1 auto !important; + } + + .flex-md-row { + flex-direction: row !important; + } + + .flex-md-column { + flex-direction: column !important; + } + + .flex-md-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-md-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-md-grow-0 { + flex-grow: 0 !important; + } + + .flex-md-grow-1 { + flex-grow: 1 !important; + } + + .flex-md-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-md-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-md-wrap { + flex-wrap: wrap !important; + } + + .flex-md-nowrap { + flex-wrap: nowrap !important; + } + + .flex-md-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-md-0 { + gap: 0 !important; + } + + .gap-md-1 { + gap: 0.25rem !important; + } + + .gap-md-2 { + gap: 0.5rem !important; + } + + .gap-md-3 { + gap: 1rem !important; + } + + .gap-md-4 { + gap: 1.5rem !important; + } + + .gap-md-5 { + gap: 3rem !important; + } + + .justify-content-md-start { + justify-content: flex-start !important; + } + + .justify-content-md-end { + justify-content: flex-end !important; + } + + .justify-content-md-center { + justify-content: center !important; + } + + .justify-content-md-between { + justify-content: space-between !important; + } + + .justify-content-md-around { + justify-content: space-around !important; + } + + .justify-content-md-evenly { + justify-content: space-evenly !important; + } + + .align-items-md-start { + align-items: flex-start !important; + } + + .align-items-md-end { + align-items: flex-end !important; + } + + .align-items-md-center { + align-items: center !important; + } + + .align-items-md-baseline { + align-items: baseline !important; + } + + .align-items-md-stretch { + align-items: stretch !important; + } + + .align-content-md-start { + align-content: flex-start !important; + } + + .align-content-md-end { + align-content: flex-end !important; + } + + .align-content-md-center { + align-content: center !important; + } + + .align-content-md-between { + align-content: space-between !important; + } + + .align-content-md-around { + align-content: space-around !important; + } + + .align-content-md-stretch { + align-content: stretch !important; + } + + .align-self-md-auto { + align-self: auto !important; + } + + .align-self-md-start { + align-self: flex-start !important; + } + + .align-self-md-end { + align-self: flex-end !important; + } + + .align-self-md-center { + align-self: center !important; + } + + .align-self-md-baseline { + align-self: baseline !important; + } + + .align-self-md-stretch { + align-self: stretch !important; + } + + .order-md-first { + order: -1 !important; + } + + .order-md-0 { + order: 0 !important; + } + + .order-md-1 { + order: 1 !important; + } + + .order-md-2 { + order: 2 !important; + } + + .order-md-3 { + order: 3 !important; + } + + .order-md-4 { + order: 4 !important; + } + + .order-md-5 { + order: 5 !important; + } + + .order-md-last { + order: 6 !important; + } + + .m-md-0 { + margin: 0 !important; + } + + .m-md-1 { + margin: 0.25rem !important; + } + + .m-md-2 { + margin: 0.5rem !important; + } + + .m-md-3 { + margin: 1rem !important; + } + + .m-md-4 { + margin: 1.5rem !important; + } + + .m-md-5 { + margin: 3rem !important; + } + + .m-md-auto { + margin: auto !important; + } + + .mx-md-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-md-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-md-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-md-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-md-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-md-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-md-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-md-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-md-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-md-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-md-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-md-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-md-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-md-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-md-0 { + margin-top: 0 !important; + } + + .mt-md-1 { + margin-top: 0.25rem !important; + } + + .mt-md-2 { + margin-top: 0.5rem !important; + } + + .mt-md-3 { + margin-top: 1rem !important; + } + + .mt-md-4 { + margin-top: 1.5rem !important; + } + + .mt-md-5 { + margin-top: 3rem !important; + } + + .mt-md-auto { + margin-top: auto !important; + } + + .me-md-0 { + margin-right: 0 !important; + } + + .me-md-1 { + margin-right: 0.25rem !important; + } + + .me-md-2 { + margin-right: 0.5rem !important; + } + + .me-md-3 { + margin-right: 1rem !important; + } + + .me-md-4 { + margin-right: 1.5rem !important; + } + + .me-md-5 { + margin-right: 3rem !important; + } + + .me-md-auto { + margin-right: auto !important; + } + + .mb-md-0 { + margin-bottom: 0 !important; + } + + .mb-md-1 { + margin-bottom: 0.25rem !important; + } + + .mb-md-2 { + margin-bottom: 0.5rem !important; + } + + .mb-md-3 { + margin-bottom: 1rem !important; + } + + .mb-md-4 { + margin-bottom: 1.5rem !important; + } + + .mb-md-5 { + margin-bottom: 3rem !important; + } + + .mb-md-auto { + margin-bottom: auto !important; + } + + .ms-md-0 { + margin-left: 0 !important; + } + + .ms-md-1 { + margin-left: 0.25rem !important; + } + + .ms-md-2 { + margin-left: 0.5rem !important; + } + + .ms-md-3 { + margin-left: 1rem !important; + } + + .ms-md-4 { + margin-left: 1.5rem !important; + } + + .ms-md-5 { + margin-left: 3rem !important; + } + + .ms-md-auto { + margin-left: auto !important; + } + + .p-md-0 { + padding: 0 !important; + } + + .p-md-1 { + padding: 0.25rem !important; + } + + .p-md-2 { + padding: 0.5rem !important; + } + + .p-md-3 { + padding: 1rem !important; + } + + .p-md-4 { + padding: 1.5rem !important; + } + + .p-md-5 { + padding: 3rem !important; + } + + .px-md-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-md-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-md-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-md-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-md-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-md-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-md-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-md-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-md-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-md-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-md-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-md-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-md-0 { + padding-top: 0 !important; + } + + .pt-md-1 { + padding-top: 0.25rem !important; + } + + .pt-md-2 { + padding-top: 0.5rem !important; + } + + .pt-md-3 { + padding-top: 1rem !important; + } + + .pt-md-4 { + padding-top: 1.5rem !important; + } + + .pt-md-5 { + padding-top: 3rem !important; + } + + .pe-md-0 { + padding-right: 0 !important; + } + + .pe-md-1 { + padding-right: 0.25rem !important; + } + + .pe-md-2 { + padding-right: 0.5rem !important; + } + + .pe-md-3 { + padding-right: 1rem !important; + } + + .pe-md-4 { + padding-right: 1.5rem !important; + } + + .pe-md-5 { + padding-right: 3rem !important; + } + + .pb-md-0 { + padding-bottom: 0 !important; + } + + .pb-md-1 { + padding-bottom: 0.25rem !important; + } + + .pb-md-2 { + padding-bottom: 0.5rem !important; + } + + .pb-md-3 { + padding-bottom: 1rem !important; + } + + .pb-md-4 { + padding-bottom: 1.5rem !important; + } + + .pb-md-5 { + padding-bottom: 3rem !important; + } + + .ps-md-0 { + padding-left: 0 !important; + } + + .ps-md-1 { + padding-left: 0.25rem !important; + } + + .ps-md-2 { + padding-left: 0.5rem !important; + } + + .ps-md-3 { + padding-left: 1rem !important; + } + + .ps-md-4 { + padding-left: 1.5rem !important; + } + + .ps-md-5 { + padding-left: 3rem !important; + } + + .text-md-start { + text-align: left !important; + } + + .text-md-end { + text-align: right !important; + } + + .text-md-center { + text-align: center !important; + } +} + +@media (min-width: 992px) { + .float-lg-start { + float: left !important; + } + + .float-lg-end { + float: right !important; + } + + .float-lg-none { + float: none !important; + } + + .d-lg-inline { + display: inline !important; + } + + .d-lg-inline-block { + display: inline-block !important; + } + + .d-lg-block { + display: block !important; + } + + .d-lg-grid { + display: grid !important; + } + + .d-lg-table { + display: table !important; + } + + .d-lg-table-row { + display: table-row !important; + } + + .d-lg-table-cell { + display: table-cell !important; + } + + .d-lg-flex { + display: flex !important; + } + + .d-lg-inline-flex { + display: inline-flex !important; + } + + .d-lg-none { + display: none !important; + } + + .flex-lg-fill { + flex: 1 1 auto !important; + } + + .flex-lg-row { + flex-direction: row !important; + } + + .flex-lg-column { + flex-direction: column !important; + } + + .flex-lg-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-lg-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-lg-grow-0 { + flex-grow: 0 !important; + } + + .flex-lg-grow-1 { + flex-grow: 1 !important; + } + + .flex-lg-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-lg-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-lg-wrap { + flex-wrap: wrap !important; + } + + .flex-lg-nowrap { + flex-wrap: nowrap !important; + } + + .flex-lg-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-lg-0 { + gap: 0 !important; + } + + .gap-lg-1 { + gap: 0.25rem !important; + } + + .gap-lg-2 { + gap: 0.5rem !important; + } + + .gap-lg-3 { + gap: 1rem !important; + } + + .gap-lg-4 { + gap: 1.5rem !important; + } + + .gap-lg-5 { + gap: 3rem !important; + } + + .justify-content-lg-start { + justify-content: flex-start !important; + } + + .justify-content-lg-end { + justify-content: flex-end !important; + } + + .justify-content-lg-center { + justify-content: center !important; + } + + .justify-content-lg-between { + justify-content: space-between !important; + } + + .justify-content-lg-around { + justify-content: space-around !important; + } + + .justify-content-lg-evenly { + justify-content: space-evenly !important; + } + + .align-items-lg-start { + align-items: flex-start !important; + } + + .align-items-lg-end { + align-items: flex-end !important; + } + + .align-items-lg-center { + align-items: center !important; + } + + .align-items-lg-baseline { + align-items: baseline !important; + } + + .align-items-lg-stretch { + align-items: stretch !important; + } + + .align-content-lg-start { + align-content: flex-start !important; + } + + .align-content-lg-end { + align-content: flex-end !important; + } + + .align-content-lg-center { + align-content: center !important; + } + + .align-content-lg-between { + align-content: space-between !important; + } + + .align-content-lg-around { + align-content: space-around !important; + } + + .align-content-lg-stretch { + align-content: stretch !important; + } + + .align-self-lg-auto { + align-self: auto !important; + } + + .align-self-lg-start { + align-self: flex-start !important; + } + + .align-self-lg-end { + align-self: flex-end !important; + } + + .align-self-lg-center { + align-self: center !important; + } + + .align-self-lg-baseline { + align-self: baseline !important; + } + + .align-self-lg-stretch { + align-self: stretch !important; + } + + .order-lg-first { + order: -1 !important; + } + + .order-lg-0 { + order: 0 !important; + } + + .order-lg-1 { + order: 1 !important; + } + + .order-lg-2 { + order: 2 !important; + } + + .order-lg-3 { + order: 3 !important; + } + + .order-lg-4 { + order: 4 !important; + } + + .order-lg-5 { + order: 5 !important; + } + + .order-lg-last { + order: 6 !important; + } + + .m-lg-0 { + margin: 0 !important; + } + + .m-lg-1 { + margin: 0.25rem !important; + } + + .m-lg-2 { + margin: 0.5rem !important; + } + + .m-lg-3 { + margin: 1rem !important; + } + + .m-lg-4 { + margin: 1.5rem !important; + } + + .m-lg-5 { + margin: 3rem !important; + } + + .m-lg-auto { + margin: auto !important; + } + + .mx-lg-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-lg-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-lg-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-lg-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-lg-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-lg-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-lg-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-lg-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-lg-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-lg-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-lg-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-lg-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-lg-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-lg-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-lg-0 { + margin-top: 0 !important; + } + + .mt-lg-1 { + margin-top: 0.25rem !important; + } + + .mt-lg-2 { + margin-top: 0.5rem !important; + } + + .mt-lg-3 { + margin-top: 1rem !important; + } + + .mt-lg-4 { + margin-top: 1.5rem !important; + } + + .mt-lg-5 { + margin-top: 3rem !important; + } + + .mt-lg-auto { + margin-top: auto !important; + } + + .me-lg-0 { + margin-right: 0 !important; + } + + .me-lg-1 { + margin-right: 0.25rem !important; + } + + .me-lg-2 { + margin-right: 0.5rem !important; + } + + .me-lg-3 { + margin-right: 1rem !important; + } + + .me-lg-4 { + margin-right: 1.5rem !important; + } + + .me-lg-5 { + margin-right: 3rem !important; + } + + .me-lg-auto { + margin-right: auto !important; + } + + .mb-lg-0 { + margin-bottom: 0 !important; + } + + .mb-lg-1 { + margin-bottom: 0.25rem !important; + } + + .mb-lg-2 { + margin-bottom: 0.5rem !important; + } + + .mb-lg-3 { + margin-bottom: 1rem !important; + } + + .mb-lg-4 { + margin-bottom: 1.5rem !important; + } + + .mb-lg-5 { + margin-bottom: 3rem !important; + } + + .mb-lg-auto { + margin-bottom: auto !important; + } + + .ms-lg-0 { + margin-left: 0 !important; + } + + .ms-lg-1 { + margin-left: 0.25rem !important; + } + + .ms-lg-2 { + margin-left: 0.5rem !important; + } + + .ms-lg-3 { + margin-left: 1rem !important; + } + + .ms-lg-4 { + margin-left: 1.5rem !important; + } + + .ms-lg-5 { + margin-left: 3rem !important; + } + + .ms-lg-auto { + margin-left: auto !important; + } + + .p-lg-0 { + padding: 0 !important; + } + + .p-lg-1 { + padding: 0.25rem !important; + } + + .p-lg-2 { + padding: 0.5rem !important; + } + + .p-lg-3 { + padding: 1rem !important; + } + + .p-lg-4 { + padding: 1.5rem !important; + } + + .p-lg-5 { + padding: 3rem !important; + } + + .px-lg-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-lg-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-lg-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-lg-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-lg-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-lg-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-lg-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-lg-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-lg-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-lg-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-lg-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-lg-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-lg-0 { + padding-top: 0 !important; + } + + .pt-lg-1 { + padding-top: 0.25rem !important; + } + + .pt-lg-2 { + padding-top: 0.5rem !important; + } + + .pt-lg-3 { + padding-top: 1rem !important; + } + + .pt-lg-4 { + padding-top: 1.5rem !important; + } + + .pt-lg-5 { + padding-top: 3rem !important; + } + + .pe-lg-0 { + padding-right: 0 !important; + } + + .pe-lg-1 { + padding-right: 0.25rem !important; + } + + .pe-lg-2 { + padding-right: 0.5rem !important; + } + + .pe-lg-3 { + padding-right: 1rem !important; + } + + .pe-lg-4 { + padding-right: 1.5rem !important; + } + + .pe-lg-5 { + padding-right: 3rem !important; + } + + .pb-lg-0 { + padding-bottom: 0 !important; + } + + .pb-lg-1 { + padding-bottom: 0.25rem !important; + } + + .pb-lg-2 { + padding-bottom: 0.5rem !important; + } + + .pb-lg-3 { + padding-bottom: 1rem !important; + } + + .pb-lg-4 { + padding-bottom: 1.5rem !important; + } + + .pb-lg-5 { + padding-bottom: 3rem !important; + } + + .ps-lg-0 { + padding-left: 0 !important; + } + + .ps-lg-1 { + padding-left: 0.25rem !important; + } + + .ps-lg-2 { + padding-left: 0.5rem !important; + } + + .ps-lg-3 { + padding-left: 1rem !important; + } + + .ps-lg-4 { + padding-left: 1.5rem !important; + } + + .ps-lg-5 { + padding-left: 3rem !important; + } + + .text-lg-start { + text-align: left !important; + } + + .text-lg-end { + text-align: right !important; + } + + .text-lg-center { + text-align: center !important; + } +} + +@media (min-width: 1200px) { + .float-xl-start { + float: left !important; + } + + .float-xl-end { + float: right !important; + } + + .float-xl-none { + float: none !important; + } + + .d-xl-inline { + display: inline !important; + } + + .d-xl-inline-block { + display: inline-block !important; + } + + .d-xl-block { + display: block !important; + } + + .d-xl-grid { + display: grid !important; + } + + .d-xl-table { + display: table !important; + } + + .d-xl-table-row { + display: table-row !important; + } + + .d-xl-table-cell { + display: table-cell !important; + } + + .d-xl-flex { + display: flex !important; + } + + .d-xl-inline-flex { + display: inline-flex !important; + } + + .d-xl-none { + display: none !important; + } + + .flex-xl-fill { + flex: 1 1 auto !important; + } + + .flex-xl-row { + flex-direction: row !important; + } + + .flex-xl-column { + flex-direction: column !important; + } + + .flex-xl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xl-wrap { + flex-wrap: wrap !important; + } + + .flex-xl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xl-0 { + gap: 0 !important; + } + + .gap-xl-1 { + gap: 0.25rem !important; + } + + .gap-xl-2 { + gap: 0.5rem !important; + } + + .gap-xl-3 { + gap: 1rem !important; + } + + .gap-xl-4 { + gap: 1.5rem !important; + } + + .gap-xl-5 { + gap: 3rem !important; + } + + .justify-content-xl-start { + justify-content: flex-start !important; + } + + .justify-content-xl-end { + justify-content: flex-end !important; + } + + .justify-content-xl-center { + justify-content: center !important; + } + + .justify-content-xl-between { + justify-content: space-between !important; + } + + .justify-content-xl-around { + justify-content: space-around !important; + } + + .justify-content-xl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xl-start { + align-items: flex-start !important; + } + + .align-items-xl-end { + align-items: flex-end !important; + } + + .align-items-xl-center { + align-items: center !important; + } + + .align-items-xl-baseline { + align-items: baseline !important; + } + + .align-items-xl-stretch { + align-items: stretch !important; + } + + .align-content-xl-start { + align-content: flex-start !important; + } + + .align-content-xl-end { + align-content: flex-end !important; + } + + .align-content-xl-center { + align-content: center !important; + } + + .align-content-xl-between { + align-content: space-between !important; + } + + .align-content-xl-around { + align-content: space-around !important; + } + + .align-content-xl-stretch { + align-content: stretch !important; + } + + .align-self-xl-auto { + align-self: auto !important; + } + + .align-self-xl-start { + align-self: flex-start !important; + } + + .align-self-xl-end { + align-self: flex-end !important; + } + + .align-self-xl-center { + align-self: center !important; + } + + .align-self-xl-baseline { + align-self: baseline !important; + } + + .align-self-xl-stretch { + align-self: stretch !important; + } + + .order-xl-first { + order: -1 !important; + } + + .order-xl-0 { + order: 0 !important; + } + + .order-xl-1 { + order: 1 !important; + } + + .order-xl-2 { + order: 2 !important; + } + + .order-xl-3 { + order: 3 !important; + } + + .order-xl-4 { + order: 4 !important; + } + + .order-xl-5 { + order: 5 !important; + } + + .order-xl-last { + order: 6 !important; + } + + .m-xl-0 { + margin: 0 !important; + } + + .m-xl-1 { + margin: 0.25rem !important; + } + + .m-xl-2 { + margin: 0.5rem !important; + } + + .m-xl-3 { + margin: 1rem !important; + } + + .m-xl-4 { + margin: 1.5rem !important; + } + + .m-xl-5 { + margin: 3rem !important; + } + + .m-xl-auto { + margin: auto !important; + } + + .mx-xl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xl-0 { + margin-top: 0 !important; + } + + .mt-xl-1 { + margin-top: 0.25rem !important; + } + + .mt-xl-2 { + margin-top: 0.5rem !important; + } + + .mt-xl-3 { + margin-top: 1rem !important; + } + + .mt-xl-4 { + margin-top: 1.5rem !important; + } + + .mt-xl-5 { + margin-top: 3rem !important; + } + + .mt-xl-auto { + margin-top: auto !important; + } + + .me-xl-0 { + margin-right: 0 !important; + } + + .me-xl-1 { + margin-right: 0.25rem !important; + } + + .me-xl-2 { + margin-right: 0.5rem !important; + } + + .me-xl-3 { + margin-right: 1rem !important; + } + + .me-xl-4 { + margin-right: 1.5rem !important; + } + + .me-xl-5 { + margin-right: 3rem !important; + } + + .me-xl-auto { + margin-right: auto !important; + } + + .mb-xl-0 { + margin-bottom: 0 !important; + } + + .mb-xl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xl-3 { + margin-bottom: 1rem !important; + } + + .mb-xl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xl-5 { + margin-bottom: 3rem !important; + } + + .mb-xl-auto { + margin-bottom: auto !important; + } + + .ms-xl-0 { + margin-left: 0 !important; + } + + .ms-xl-1 { + margin-left: 0.25rem !important; + } + + .ms-xl-2 { + margin-left: 0.5rem !important; + } + + .ms-xl-3 { + margin-left: 1rem !important; + } + + .ms-xl-4 { + margin-left: 1.5rem !important; + } + + .ms-xl-5 { + margin-left: 3rem !important; + } + + .ms-xl-auto { + margin-left: auto !important; + } + + .p-xl-0 { + padding: 0 !important; + } + + .p-xl-1 { + padding: 0.25rem !important; + } + + .p-xl-2 { + padding: 0.5rem !important; + } + + .p-xl-3 { + padding: 1rem !important; + } + + .p-xl-4 { + padding: 1.5rem !important; + } + + .p-xl-5 { + padding: 3rem !important; + } + + .px-xl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xl-0 { + padding-top: 0 !important; + } + + .pt-xl-1 { + padding-top: 0.25rem !important; + } + + .pt-xl-2 { + padding-top: 0.5rem !important; + } + + .pt-xl-3 { + padding-top: 1rem !important; + } + + .pt-xl-4 { + padding-top: 1.5rem !important; + } + + .pt-xl-5 { + padding-top: 3rem !important; + } + + .pe-xl-0 { + padding-right: 0 !important; + } + + .pe-xl-1 { + padding-right: 0.25rem !important; + } + + .pe-xl-2 { + padding-right: 0.5rem !important; + } + + .pe-xl-3 { + padding-right: 1rem !important; + } + + .pe-xl-4 { + padding-right: 1.5rem !important; + } + + .pe-xl-5 { + padding-right: 3rem !important; + } + + .pb-xl-0 { + padding-bottom: 0 !important; + } + + .pb-xl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xl-3 { + padding-bottom: 1rem !important; + } + + .pb-xl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xl-5 { + padding-bottom: 3rem !important; + } + + .ps-xl-0 { + padding-left: 0 !important; + } + + .ps-xl-1 { + padding-left: 0.25rem !important; + } + + .ps-xl-2 { + padding-left: 0.5rem !important; + } + + .ps-xl-3 { + padding-left: 1rem !important; + } + + .ps-xl-4 { + padding-left: 1.5rem !important; + } + + .ps-xl-5 { + padding-left: 3rem !important; + } + + .text-xl-start { + text-align: left !important; + } + + .text-xl-end { + text-align: right !important; + } + + .text-xl-center { + text-align: center !important; + } +} + +@media (min-width: 1400px) { + .float-xxl-start { + float: left !important; + } + + .float-xxl-end { + float: right !important; + } + + .float-xxl-none { + float: none !important; + } + + .d-xxl-inline { + display: inline !important; + } + + .d-xxl-inline-block { + display: inline-block !important; + } + + .d-xxl-block { + display: block !important; + } + + .d-xxl-grid { + display: grid !important; + } + + .d-xxl-table { + display: table !important; + } + + .d-xxl-table-row { + display: table-row !important; + } + + .d-xxl-table-cell { + display: table-cell !important; + } + + .d-xxl-flex { + display: flex !important; + } + + .d-xxl-inline-flex { + display: inline-flex !important; + } + + .d-xxl-none { + display: none !important; + } + + .flex-xxl-fill { + flex: 1 1 auto !important; + } + + .flex-xxl-row { + flex-direction: row !important; + } + + .flex-xxl-column { + flex-direction: column !important; + } + + .flex-xxl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xxl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xxl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xxl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xxl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xxl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xxl-wrap { + flex-wrap: wrap !important; + } + + .flex-xxl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xxl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xxl-0 { + gap: 0 !important; + } + + .gap-xxl-1 { + gap: 0.25rem !important; + } + + .gap-xxl-2 { + gap: 0.5rem !important; + } + + .gap-xxl-3 { + gap: 1rem !important; + } + + .gap-xxl-4 { + gap: 1.5rem !important; + } + + .gap-xxl-5 { + gap: 3rem !important; + } + + .justify-content-xxl-start { + justify-content: flex-start !important; + } + + .justify-content-xxl-end { + justify-content: flex-end !important; + } + + .justify-content-xxl-center { + justify-content: center !important; + } + + .justify-content-xxl-between { + justify-content: space-between !important; + } + + .justify-content-xxl-around { + justify-content: space-around !important; + } + + .justify-content-xxl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xxl-start { + align-items: flex-start !important; + } + + .align-items-xxl-end { + align-items: flex-end !important; + } + + .align-items-xxl-center { + align-items: center !important; + } + + .align-items-xxl-baseline { + align-items: baseline !important; + } + + .align-items-xxl-stretch { + align-items: stretch !important; + } + + .align-content-xxl-start { + align-content: flex-start !important; + } + + .align-content-xxl-end { + align-content: flex-end !important; + } + + .align-content-xxl-center { + align-content: center !important; + } + + .align-content-xxl-between { + align-content: space-between !important; + } + + .align-content-xxl-around { + align-content: space-around !important; + } + + .align-content-xxl-stretch { + align-content: stretch !important; + } + + .align-self-xxl-auto { + align-self: auto !important; + } + + .align-self-xxl-start { + align-self: flex-start !important; + } + + .align-self-xxl-end { + align-self: flex-end !important; + } + + .align-self-xxl-center { + align-self: center !important; + } + + .align-self-xxl-baseline { + align-self: baseline !important; + } + + .align-self-xxl-stretch { + align-self: stretch !important; + } + + .order-xxl-first { + order: -1 !important; + } + + .order-xxl-0 { + order: 0 !important; + } + + .order-xxl-1 { + order: 1 !important; + } + + .order-xxl-2 { + order: 2 !important; + } + + .order-xxl-3 { + order: 3 !important; + } + + .order-xxl-4 { + order: 4 !important; + } + + .order-xxl-5 { + order: 5 !important; + } + + .order-xxl-last { + order: 6 !important; + } + + .m-xxl-0 { + margin: 0 !important; + } + + .m-xxl-1 { + margin: 0.25rem !important; + } + + .m-xxl-2 { + margin: 0.5rem !important; + } + + .m-xxl-3 { + margin: 1rem !important; + } + + .m-xxl-4 { + margin: 1.5rem !important; + } + + .m-xxl-5 { + margin: 3rem !important; + } + + .m-xxl-auto { + margin: auto !important; + } + + .mx-xxl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xxl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xxl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xxl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xxl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xxl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xxl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xxl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xxl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xxl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xxl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xxl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xxl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xxl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xxl-0 { + margin-top: 0 !important; + } + + .mt-xxl-1 { + margin-top: 0.25rem !important; + } + + .mt-xxl-2 { + margin-top: 0.5rem !important; + } + + .mt-xxl-3 { + margin-top: 1rem !important; + } + + .mt-xxl-4 { + margin-top: 1.5rem !important; + } + + .mt-xxl-5 { + margin-top: 3rem !important; + } + + .mt-xxl-auto { + margin-top: auto !important; + } + + .me-xxl-0 { + margin-right: 0 !important; + } + + .me-xxl-1 { + margin-right: 0.25rem !important; + } + + .me-xxl-2 { + margin-right: 0.5rem !important; + } + + .me-xxl-3 { + margin-right: 1rem !important; + } + + .me-xxl-4 { + margin-right: 1.5rem !important; + } + + .me-xxl-5 { + margin-right: 3rem !important; + } + + .me-xxl-auto { + margin-right: auto !important; + } + + .mb-xxl-0 { + margin-bottom: 0 !important; + } + + .mb-xxl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xxl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xxl-3 { + margin-bottom: 1rem !important; + } + + .mb-xxl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xxl-5 { + margin-bottom: 3rem !important; + } + + .mb-xxl-auto { + margin-bottom: auto !important; + } + + .ms-xxl-0 { + margin-left: 0 !important; + } + + .ms-xxl-1 { + margin-left: 0.25rem !important; + } + + .ms-xxl-2 { + margin-left: 0.5rem !important; + } + + .ms-xxl-3 { + margin-left: 1rem !important; + } + + .ms-xxl-4 { + margin-left: 1.5rem !important; + } + + .ms-xxl-5 { + margin-left: 3rem !important; + } + + .ms-xxl-auto { + margin-left: auto !important; + } + + .p-xxl-0 { + padding: 0 !important; + } + + .p-xxl-1 { + padding: 0.25rem !important; + } + + .p-xxl-2 { + padding: 0.5rem !important; + } + + .p-xxl-3 { + padding: 1rem !important; + } + + .p-xxl-4 { + padding: 1.5rem !important; + } + + .p-xxl-5 { + padding: 3rem !important; + } + + .px-xxl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xxl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xxl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xxl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xxl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xxl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xxl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xxl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xxl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xxl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xxl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xxl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xxl-0 { + padding-top: 0 !important; + } + + .pt-xxl-1 { + padding-top: 0.25rem !important; + } + + .pt-xxl-2 { + padding-top: 0.5rem !important; + } + + .pt-xxl-3 { + padding-top: 1rem !important; + } + + .pt-xxl-4 { + padding-top: 1.5rem !important; + } + + .pt-xxl-5 { + padding-top: 3rem !important; + } + + .pe-xxl-0 { + padding-right: 0 !important; + } + + .pe-xxl-1 { + padding-right: 0.25rem !important; + } + + .pe-xxl-2 { + padding-right: 0.5rem !important; + } + + .pe-xxl-3 { + padding-right: 1rem !important; + } + + .pe-xxl-4 { + padding-right: 1.5rem !important; + } + + .pe-xxl-5 { + padding-right: 3rem !important; + } + + .pb-xxl-0 { + padding-bottom: 0 !important; + } + + .pb-xxl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xxl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xxl-3 { + padding-bottom: 1rem !important; + } + + .pb-xxl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xxl-5 { + padding-bottom: 3rem !important; + } + + .ps-xxl-0 { + padding-left: 0 !important; + } + + .ps-xxl-1 { + padding-left: 0.25rem !important; + } + + .ps-xxl-2 { + padding-left: 0.5rem !important; + } + + .ps-xxl-3 { + padding-left: 1rem !important; + } + + .ps-xxl-4 { + padding-left: 1.5rem !important; + } + + .ps-xxl-5 { + padding-left: 3rem !important; + } + + .text-xxl-start { + text-align: left !important; + } + + .text-xxl-end { + text-align: right !important; + } + + .text-xxl-center { + text-align: center !important; + } +} + +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.5rem !important; + } + + .fs-2 { + font-size: 2rem !important; + } + + .fs-3 { + font-size: 1.75rem !important; + } + + .fs-4 { + font-size: 1.5rem !important; + } +} + +@media print { + .d-print-inline { + display: inline !important; + } + + .d-print-inline-block { + display: inline-block !important; + } + + .d-print-block { + display: block !important; + } + + .d-print-grid { + display: grid !important; + } + + .d-print-table { + display: table !important; + } + + .d-print-table-row { + display: table-row !important; + } + + .d-print-table-cell { + display: table-cell !important; + } + + .d-print-flex { + display: flex !important; + } + + .d-print-inline-flex { + display: inline-flex !important; + } + + .d-print-none { + display: none !important; + } +} + +/*# sourceMappingURL=bootstrap.css.map */ +/* //bootstrap */ + +/* css style */ +:root { + --primary-color: #fbb034; + --secondary-color: #00a4f5; + --bg-color: #fff; + --heading-color: #060606; + --font-color: #6f6f6f; + --border-radius: 8px; + --border-radius-full: 30px; + --border-color-light: #eee; + --iframe-filter: grayscale(0%); + --bg-grey: #f4f4f4; + --bg-light: #fbfbfb; + --box-shadow: 0 0.5rem 1rem rgb(12 12 12 / 5%); + --banner-layer: rgb(255 255 255 / 90%); + --gradient-color: linear-gradient(to left, #11d5ff 0%, #0089cd 100%); + --gradient-color-banner: linear-gradient(to left, #00c9f5 0%, #00a4f5 100%); + --layer: rgb(1 121 179 / 75%); + --subscribe-footer-input: #fff; +} + +[data-theme="dark"] { + --primary-color: #fbb034; + --secondary-color: #00a4f5; + --bg-color: #08171e; + --heading-color: #fdfffc; + --font-color: #b7b7b7; + --border-color-light: rgba(255, 255, 255, 0.2); + --iframe-filter: grayscale(100%); + --bg-grey: #040b0e; + --bg-light: #131917; + --box-shadow: 0 0.5rem 1rem rgb(5 14 18); + --banner-layer: rgb(8 23 30 / 85%); + --subscribe-footer-input: #040b0e; +} + +* { + box-sizing: border-box; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; + font-family: 'Ubuntu', sans-serif; +} + +.noscroll { + min-height: 100vh; + overflow: hidden; +} + +html { + scroll-behavior: smooth; +} + +body, +html { + margin: 0; + padding: 0; + background: var(--bg-color); + color: var(--heading-color); +} + +body a, +button, +.btn { + cursor: pointer !important; +} + +a { + color: var(--heading-color); + text-decoration: none; + background-color: transparent; +} + +a:hover { + color: var(--primary-color); + text-decoration: underline; +} + +a, +a:hover, +button, +button:hover { + text-decoration: none; + transition: .5s all; + -moz-transition: .5s all; +} + +.clear { + clear: both; +} + +.img-responsive { + max-width: 100%; + display: block; + width: 100%; +} + +.d-grid { + display: grid; +} + +button, +input, +select, +label, +li, +span { + -webkit-appearance: none; + outline: none; +} + +a, +a:hover, +button, +button:hover { + text-decoration: none; + transition: .5s all; + -moz-transition: .5s all; +} + +iframe { + border: none; + display: block; +} + +ul { + margin: 0; + padding: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 0; + padding: 0; + color: var(--heading-color); +} + +p { + margin: 0; + padding: 0; + font-size: 16px; + line-height: 28px; + color: var(--heading-color); +} + +li { + list-style-type: none; +} + +.radius-image { + border-radius: var(--border-radius); +} + +.radius-image-full { + border-radius: var(--border-radius-full); +} + +/* container */ +.container { + width: 100%; + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 992px) { + .container { + max-width: 960px; + margin-right: auto; + margin-left: auto; + } +} + +@media (min-width: 1200px) { + .container { + max-width: 1140px; + margin-right: auto; + margin-left: auto; + } +} + +@media (min-width: 1280px) { + .container { + max-width: 1200px; + } +} + +/* //container */ + +/* toggle switch */ +.theme-switch-wrapper { + display: flex; + align-items: center; +} + +.theme-switch-wrapper em { + margin-left: 10px; + font-size: 1rem; +} + +.theme-switch { + display: inline-block; + position: relative; + margin: 0; +} + +.theme-switch input { + display: none; +} + +/* //toggle switch */ +/* //css style */ + +/* font awesome css */ +/*! + * Font Awesome Free 5.15.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa, +.fas, +.far, +.fal, +.fad, +.fab { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; +} + +.fa-lg { + font-size: 1.33333em; + line-height: 0.75em; + vertical-align: -.0667em; +} + +.fa-xs { + font-size: .75em; +} + +.fa-sm { + font-size: .875em; +} + +.fa-1x { + font-size: 1em; +} + +.fa-2x { + font-size: 2em; +} + +.fa-3x { + font-size: 3em; +} + +.fa-4x { + font-size: 4em; +} + +.fa-5x { + font-size: 5em; +} + +.fa-6x { + font-size: 6em; +} + +.fa-7x { + font-size: 7em; +} + +.fa-8x { + font-size: 8em; +} + +.fa-9x { + font-size: 9em; +} + +.fa-10x { + font-size: 10em; +} + +.fa-fw { + text-align: center; + width: 1.25em; +} + +.fa-ul { + list-style-type: none; + margin-left: 2.5em; + padding-left: 0; +} + +.fa-ul>li { + position: relative; +} + +.fa-li { + left: -2em; + position: absolute; + text-align: center; + width: 2em; + line-height: inherit; +} + +.fa-border { + border: solid 0.08em #eee; + border-radius: .1em; + padding: .2em .25em .15em; +} + +.fa-pull-left { + float: left; +} + +.fa-pull-right { + float: right; +} + +.fa.fa-pull-left, +.fas.fa-pull-left, +.far.fa-pull-left, +.fal.fa-pull-left, +.fab.fa-pull-left { + margin-right: .3em; +} + +.fa.fa-pull-right, +.fas.fa-pull-right, +.far.fa-pull-right, +.fal.fa-pull-right, +.fab.fa-pull-right { + margin-left: .3em; +} + +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; +} + +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); +} + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +.fa-rotate-90 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); +} + +.fa-rotate-180 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; + -webkit-transform: rotate(180deg); + transform: rotate(180deg); +} + +.fa-rotate-270 { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; + -webkit-transform: rotate(270deg); + transform: rotate(270deg); +} + +.fa-flip-horizontal { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); +} + +.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(1, -1); + transform: scale(1, -1); +} + +.fa-flip-both, +.fa-flip-horizontal.fa-flip-vertical { + -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); +} + +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical, +:root .fa-flip-both { + -webkit-filter: none; + filter: none; +} + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; +} + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; +} + +.fa-stack-1x { + line-height: inherit; +} + +.fa-stack-2x { + font-size: 2em; +} + +.fa-inverse { + color: #fff; +} + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ +.fa-500px:before { + content: "\f26e"; +} + +.fa-accessible-icon:before { + content: "\f368"; +} + +.fa-accusoft:before { + content: "\f369"; +} + +.fa-acquisitions-incorporated:before { + content: "\f6af"; +} + +.fa-ad:before { + content: "\f641"; +} + +.fa-address-book:before { + content: "\f2b9"; +} + +.fa-address-card:before { + content: "\f2bb"; +} + +.fa-adjust:before { + content: "\f042"; +} + +.fa-adn:before { + content: "\f170"; +} + +.fa-adversal:before { + content: "\f36a"; +} + +.fa-affiliatetheme:before { + content: "\f36b"; +} + +.fa-air-freshener:before { + content: "\f5d0"; +} + +.fa-airbnb:before { + content: "\f834"; +} + +.fa-algolia:before { + content: "\f36c"; +} + +.fa-align-center:before { + content: "\f037"; +} + +.fa-align-justify:before { + content: "\f039"; +} + +.fa-align-left:before { + content: "\f036"; +} + +.fa-align-right:before { + content: "\f038"; +} + +.fa-alipay:before { + content: "\f642"; +} + +.fa-allergies:before { + content: "\f461"; +} + +.fa-amazon:before { + content: "\f270"; +} + +.fa-amazon-pay:before { + content: "\f42c"; +} + +.fa-ambulance:before { + content: "\f0f9"; +} + +.fa-american-sign-language-interpreting:before { + content: "\f2a3"; +} + +.fa-amilia:before { + content: "\f36d"; +} + +.fa-anchor:before { + content: "\f13d"; +} + +.fa-android:before { + content: "\f17b"; +} + +.fa-angellist:before { + content: "\f209"; +} + +.fa-angle-double-down:before { + content: "\f103"; +} + +.fa-angle-double-left:before { + content: "\f100"; +} + +.fa-angle-double-right:before { + content: "\f101"; +} + +.fa-angle-double-up:before { + content: "\f102"; +} + +.fa-angle-down:before { + content: "\f107"; +} + +.fa-angle-left:before { + content: "\f104"; +} + +.fa-angle-right:before { + content: "\f105"; +} + +.fa-angle-up:before { + content: "\f106"; +} + +.fa-angry:before { + content: "\f556"; +} + +.fa-angrycreative:before { + content: "\f36e"; +} + +.fa-angular:before { + content: "\f420"; +} + +.fa-ankh:before { + content: "\f644"; +} + +.fa-app-store:before { + content: "\f36f"; +} + +.fa-app-store-ios:before { + content: "\f370"; +} + +.fa-apper:before { + content: "\f371"; +} + +.fa-apple:before { + content: "\f179"; +} + +.fa-apple-alt:before { + content: "\f5d1"; +} + +.fa-apple-pay:before { + content: "\f415"; +} + +.fa-archive:before { + content: "\f187"; +} + +.fa-archway:before { + content: "\f557"; +} + +.fa-arrow-alt-circle-down:before { + content: "\f358"; +} + +.fa-arrow-alt-circle-left:before { + content: "\f359"; +} + +.fa-arrow-alt-circle-right:before { + content: "\f35a"; +} + +.fa-arrow-alt-circle-up:before { + content: "\f35b"; +} + +.fa-arrow-circle-down:before { + content: "\f0ab"; +} + +.fa-arrow-circle-left:before { + content: "\f0a8"; +} + +.fa-arrow-circle-right:before { + content: "\f0a9"; +} + +.fa-arrow-circle-up:before { + content: "\f0aa"; +} + +.fa-arrow-down:before { + content: "\f063"; +} + +.fa-arrow-left:before { + content: "\f060"; +} + +.fa-arrow-right:before { + content: "\f061"; +} + +.fa-arrow-up:before { + content: "\f062"; +} + +.fa-arrows-alt:before { + content: "\f0b2"; +} + +.fa-arrows-alt-h:before { + content: "\f337"; +} + +.fa-arrows-alt-v:before { + content: "\f338"; +} + +.fa-artstation:before { + content: "\f77a"; +} + +.fa-assistive-listening-systems:before { + content: "\f2a2"; +} + +.fa-asterisk:before { + content: "\f069"; +} + +.fa-asymmetrik:before { + content: "\f372"; +} + +.fa-at:before { + content: "\f1fa"; +} + +.fa-atlas:before { + content: "\f558"; +} + +.fa-atlassian:before { + content: "\f77b"; +} + +.fa-atom:before { + content: "\f5d2"; +} + +.fa-audible:before { + content: "\f373"; +} + +.fa-audio-description:before { + content: "\f29e"; +} + +.fa-autoprefixer:before { + content: "\f41c"; +} + +.fa-avianex:before { + content: "\f374"; +} + +.fa-aviato:before { + content: "\f421"; +} + +.fa-award:before { + content: "\f559"; +} + +.fa-aws:before { + content: "\f375"; +} + +.fa-baby:before { + content: "\f77c"; +} + +.fa-baby-carriage:before { + content: "\f77d"; +} + +.fa-backspace:before { + content: "\f55a"; +} + +.fa-backward:before { + content: "\f04a"; +} + +.fa-bacon:before { + content: "\f7e5"; +} + +.fa-bacteria:before { + content: "\e059"; +} + +.fa-bacterium:before { + content: "\e05a"; +} + +.fa-bahai:before { + content: "\f666"; +} + +.fa-balance-scale:before { + content: "\f24e"; +} + +.fa-balance-scale-left:before { + content: "\f515"; +} + +.fa-balance-scale-right:before { + content: "\f516"; +} + +.fa-ban:before { + content: "\f05e"; +} + +.fa-band-aid:before { + content: "\f462"; +} + +.fa-bandcamp:before { + content: "\f2d5"; +} + +.fa-barcode:before { + content: "\f02a"; +} + +.fa-bars:before { + content: "\f0c9"; +} + +.fa-baseball-ball:before { + content: "\f433"; +} + +.fa-basketball-ball:before { + content: "\f434"; +} + +.fa-bath:before { + content: "\f2cd"; +} + +.fa-battery-empty:before { + content: "\f244"; +} + +.fa-battery-full:before { + content: "\f240"; +} + +.fa-battery-half:before { + content: "\f242"; +} + +.fa-battery-quarter:before { + content: "\f243"; +} + +.fa-battery-three-quarters:before { + content: "\f241"; +} + +.fa-battle-net:before { + content: "\f835"; +} + +.fa-bed:before { + content: "\f236"; +} + +.fa-beer:before { + content: "\f0fc"; +} + +.fa-behance:before { + content: "\f1b4"; +} + +.fa-behance-square:before { + content: "\f1b5"; +} + +.fa-bell:before { + content: "\f0f3"; +} + +.fa-bell-slash:before { + content: "\f1f6"; +} + +.fa-bezier-curve:before { + content: "\f55b"; +} + +.fa-bible:before { + content: "\f647"; +} + +.fa-bicycle:before { + content: "\f206"; +} + +.fa-biking:before { + content: "\f84a"; +} + +.fa-bimobject:before { + content: "\f378"; +} + +.fa-binoculars:before { + content: "\f1e5"; +} + +.fa-biohazard:before { + content: "\f780"; +} + +.fa-birthday-cake:before { + content: "\f1fd"; +} + +.fa-bitbucket:before { + content: "\f171"; +} + +.fa-bitcoin:before { + content: "\f379"; +} + +.fa-bity:before { + content: "\f37a"; +} + +.fa-black-tie:before { + content: "\f27e"; +} + +.fa-blackberry:before { + content: "\f37b"; +} + +.fa-blender:before { + content: "\f517"; +} + +.fa-blender-phone:before { + content: "\f6b6"; +} + +.fa-blind:before { + content: "\f29d"; +} + +.fa-blog:before { + content: "\f781"; +} + +.fa-blogger:before { + content: "\f37c"; +} + +.fa-blogger-b:before { + content: "\f37d"; +} + +.fa-bluetooth:before { + content: "\f293"; +} + +.fa-bluetooth-b:before { + content: "\f294"; +} + +.fa-bold:before { + content: "\f032"; +} + +.fa-bolt:before { + content: "\f0e7"; +} + +.fa-bomb:before { + content: "\f1e2"; +} + +.fa-bone:before { + content: "\f5d7"; +} + +.fa-bong:before { + content: "\f55c"; +} + +.fa-book:before { + content: "\f02d"; +} + +.fa-book-dead:before { + content: "\f6b7"; +} + +.fa-book-medical:before { + content: "\f7e6"; +} + +.fa-book-open:before { + content: "\f518"; +} + +.fa-book-reader:before { + content: "\f5da"; +} + +.fa-bookmark:before { + content: "\f02e"; +} + +.fa-bootstrap:before { + content: "\f836"; +} + +.fa-border-all:before { + content: "\f84c"; +} + +.fa-border-none:before { + content: "\f850"; +} + +.fa-border-style:before { + content: "\f853"; +} + +.fa-bowling-ball:before { + content: "\f436"; +} + +.fa-box:before { + content: "\f466"; +} + +.fa-box-open:before { + content: "\f49e"; +} + +.fa-box-tissue:before { + content: "\e05b"; +} + +.fa-boxes:before { + content: "\f468"; +} + +.fa-braille:before { + content: "\f2a1"; +} + +.fa-brain:before { + content: "\f5dc"; +} + +.fa-bread-slice:before { + content: "\f7ec"; +} + +.fa-briefcase:before { + content: "\f0b1"; +} + +.fa-briefcase-medical:before { + content: "\f469"; +} + +.fa-broadcast-tower:before { + content: "\f519"; +} + +.fa-broom:before { + content: "\f51a"; +} + +.fa-brush:before { + content: "\f55d"; +} + +.fa-btc:before { + content: "\f15a"; +} + +.fa-buffer:before { + content: "\f837"; +} + +.fa-bug:before { + content: "\f188"; +} + +.fa-building:before { + content: "\f1ad"; +} + +.fa-bullhorn:before { + content: "\f0a1"; +} + +.fa-bullseye:before { + content: "\f140"; +} + +.fa-burn:before { + content: "\f46a"; +} + +.fa-buromobelexperte:before { + content: "\f37f"; +} + +.fa-bus:before { + content: "\f207"; +} + +.fa-bus-alt:before { + content: "\f55e"; +} + +.fa-business-time:before { + content: "\f64a"; +} + +.fa-buy-n-large:before { + content: "\f8a6"; +} + +.fa-buysellads:before { + content: "\f20d"; +} + +.fa-calculator:before { + content: "\f1ec"; +} + +.fa-calendar:before { + content: "\f133"; +} + +.fa-calendar-alt:before { + content: "\f073"; +} + +.fa-calendar-check:before { + content: "\f274"; +} + +.fa-calendar-day:before { + content: "\f783"; +} + +.fa-calendar-minus:before { + content: "\f272"; +} + +.fa-calendar-plus:before { + content: "\f271"; +} + +.fa-calendar-times:before { + content: "\f273"; +} + +.fa-calendar-week:before { + content: "\f784"; +} + +.fa-camera:before { + content: "\f030"; +} + +.fa-camera-retro:before { + content: "\f083"; +} + +.fa-campground:before { + content: "\f6bb"; +} + +.fa-canadian-maple-leaf:before { + content: "\f785"; +} + +.fa-candy-cane:before { + content: "\f786"; +} + +.fa-cannabis:before { + content: "\f55f"; +} + +.fa-capsules:before { + content: "\f46b"; +} + +.fa-car:before { + content: "\f1b9"; +} + +.fa-car-alt:before { + content: "\f5de"; +} + +.fa-car-battery:before { + content: "\f5df"; +} + +.fa-car-crash:before { + content: "\f5e1"; +} + +.fa-car-side:before { + content: "\f5e4"; +} + +.fa-caravan:before { + content: "\f8ff"; +} + +.fa-caret-down:before { + content: "\f0d7"; +} + +.fa-caret-left:before { + content: "\f0d9"; +} + +.fa-caret-right:before { + content: "\f0da"; +} + +.fa-caret-square-down:before { + content: "\f150"; +} + +.fa-caret-square-left:before { + content: "\f191"; +} + +.fa-caret-square-right:before { + content: "\f152"; +} + +.fa-caret-square-up:before { + content: "\f151"; +} + +.fa-caret-up:before { + content: "\f0d8"; +} + +.fa-carrot:before { + content: "\f787"; +} + +.fa-cart-arrow-down:before { + content: "\f218"; +} + +.fa-cart-plus:before { + content: "\f217"; +} + +.fa-cash-register:before { + content: "\f788"; +} + +.fa-cat:before { + content: "\f6be"; +} + +.fa-cc-amazon-pay:before { + content: "\f42d"; +} + +.fa-cc-amex:before { + content: "\f1f3"; +} + +.fa-cc-apple-pay:before { + content: "\f416"; +} + +.fa-cc-diners-club:before { + content: "\f24c"; +} + +.fa-cc-discover:before { + content: "\f1f2"; +} + +.fa-cc-jcb:before { + content: "\f24b"; +} + +.fa-cc-mastercard:before { + content: "\f1f1"; +} + +.fa-cc-paypal:before { + content: "\f1f4"; +} + +.fa-cc-stripe:before { + content: "\f1f5"; +} + +.fa-cc-visa:before { + content: "\f1f0"; +} + +.fa-centercode:before { + content: "\f380"; +} + +.fa-centos:before { + content: "\f789"; +} + +.fa-certificate:before { + content: "\f0a3"; +} + +.fa-chair:before { + content: "\f6c0"; +} + +.fa-chalkboard:before { + content: "\f51b"; +} + +.fa-chalkboard-teacher:before { + content: "\f51c"; +} + +.fa-charging-station:before { + content: "\f5e7"; +} + +.fa-chart-area:before { + content: "\f1fe"; +} + +.fa-chart-bar:before { + content: "\f080"; +} + +.fa-chart-line:before { + content: "\f201"; +} + +.fa-chart-pie:before { + content: "\f200"; +} + +.fa-check:before { + content: "\f00c"; +} + +.fa-check-circle:before { + content: "\f058"; +} + +.fa-check-double:before { + content: "\f560"; +} + +.fa-check-square:before { + content: "\f14a"; +} + +.fa-cheese:before { + content: "\f7ef"; +} + +.fa-chess:before { + content: "\f439"; +} + +.fa-chess-bishop:before { + content: "\f43a"; +} + +.fa-chess-board:before { + content: "\f43c"; +} + +.fa-chess-king:before { + content: "\f43f"; +} + +.fa-chess-knight:before { + content: "\f441"; +} + +.fa-chess-pawn:before { + content: "\f443"; +} + +.fa-chess-queen:before { + content: "\f445"; +} + +.fa-chess-rook:before { + content: "\f447"; +} + +.fa-chevron-circle-down:before { + content: "\f13a"; +} + +.fa-chevron-circle-left:before { + content: "\f137"; +} + +.fa-chevron-circle-right:before { + content: "\f138"; +} + +.fa-chevron-circle-up:before { + content: "\f139"; +} + +.fa-chevron-down:before { + content: "\f078"; +} + +.fa-chevron-left:before { + content: "\f053"; +} + +.fa-chevron-right:before { + content: "\f054"; +} + +.fa-chevron-up:before { + content: "\f077"; +} + +.fa-child:before { + content: "\f1ae"; +} + +.fa-chrome:before { + content: "\f268"; +} + +.fa-chromecast:before { + content: "\f838"; +} + +.fa-church:before { + content: "\f51d"; +} + +.fa-circle:before { + content: "\f111"; +} + +.fa-circle-notch:before { + content: "\f1ce"; +} + +.fa-city:before { + content: "\f64f"; +} + +.fa-clinic-medical:before { + content: "\f7f2"; +} + +.fa-clipboard:before { + content: "\f328"; +} + +.fa-clipboard-check:before { + content: "\f46c"; +} + +.fa-clipboard-list:before { + content: "\f46d"; +} + +.fa-clock:before { + content: "\f017"; +} + +.fa-clone:before { + content: "\f24d"; +} + +.fa-closed-captioning:before { + content: "\f20a"; +} + +.fa-cloud:before { + content: "\f0c2"; +} + +.fa-cloud-download-alt:before { + content: "\f381"; +} + +.fa-cloud-meatball:before { + content: "\f73b"; +} + +.fa-cloud-moon:before { + content: "\f6c3"; +} + +.fa-cloud-moon-rain:before { + content: "\f73c"; +} + +.fa-cloud-rain:before { + content: "\f73d"; +} + +.fa-cloud-showers-heavy:before { + content: "\f740"; +} + +.fa-cloud-sun:before { + content: "\f6c4"; +} + +.fa-cloud-sun-rain:before { + content: "\f743"; +} + +.fa-cloud-upload-alt:before { + content: "\f382"; +} + +.fa-cloudflare:before { + content: "\e07d"; +} + +.fa-cloudscale:before { + content: "\f383"; +} + +.fa-cloudsmith:before { + content: "\f384"; +} + +.fa-cloudversify:before { + content: "\f385"; +} + +.fa-cocktail:before { + content: "\f561"; +} + +.fa-code:before { + content: "\f121"; +} + +.fa-code-branch:before { + content: "\f126"; +} + +.fa-codepen:before { + content: "\f1cb"; +} + +.fa-codiepie:before { + content: "\f284"; +} + +.fa-coffee:before { + content: "\f0f4"; +} + +.fa-cog:before { + content: "\f013"; +} + +.fa-cogs:before { + content: "\f085"; +} + +.fa-coins:before { + content: "\f51e"; +} + +.fa-columns:before { + content: "\f0db"; +} + +.fa-comment:before { + content: "\f075"; +} + +.fa-comment-alt:before { + content: "\f27a"; +} + +.fa-comment-dollar:before { + content: "\f651"; +} + +.fa-comment-dots:before { + content: "\f4ad"; +} + +.fa-comment-medical:before { + content: "\f7f5"; +} + +.fa-comment-slash:before { + content: "\f4b3"; +} + +.fa-comments:before { + content: "\f086"; +} + +.fa-comments-dollar:before { + content: "\f653"; +} + +.fa-compact-disc:before { + content: "\f51f"; +} + +.fa-compass:before { + content: "\f14e"; +} + +.fa-compress:before { + content: "\f066"; +} + +.fa-compress-alt:before { + content: "\f422"; +} + +.fa-compress-arrows-alt:before { + content: "\f78c"; +} + +.fa-concierge-bell:before { + content: "\f562"; +} + +.fa-confluence:before { + content: "\f78d"; +} + +.fa-connectdevelop:before { + content: "\f20e"; +} + +.fa-contao:before { + content: "\f26d"; +} + +.fa-cookie:before { + content: "\f563"; +} + +.fa-cookie-bite:before { + content: "\f564"; +} + +.fa-copy:before { + content: "\f0c5"; +} + +.fa-copyright:before { + content: "\f1f9"; +} + +.fa-cotton-bureau:before { + content: "\f89e"; +} + +.fa-couch:before { + content: "\f4b8"; +} + +.fa-cpanel:before { + content: "\f388"; +} + +.fa-creative-commons:before { + content: "\f25e"; +} + +.fa-creative-commons-by:before { + content: "\f4e7"; +} + +.fa-creative-commons-nc:before { + content: "\f4e8"; +} + +.fa-creative-commons-nc-eu:before { + content: "\f4e9"; +} + +.fa-creative-commons-nc-jp:before { + content: "\f4ea"; +} + +.fa-creative-commons-nd:before { + content: "\f4eb"; +} + +.fa-creative-commons-pd:before { + content: "\f4ec"; +} + +.fa-creative-commons-pd-alt:before { + content: "\f4ed"; +} + +.fa-creative-commons-remix:before { + content: "\f4ee"; +} + +.fa-creative-commons-sa:before { + content: "\f4ef"; +} + +.fa-creative-commons-sampling:before { + content: "\f4f0"; +} + +.fa-creative-commons-sampling-plus:before { + content: "\f4f1"; +} + +.fa-creative-commons-share:before { + content: "\f4f2"; +} + +.fa-creative-commons-zero:before { + content: "\f4f3"; +} + +.fa-credit-card:before { + content: "\f09d"; +} + +.fa-critical-role:before { + content: "\f6c9"; +} + +.fa-crop:before { + content: "\f125"; +} + +.fa-crop-alt:before { + content: "\f565"; +} + +.fa-cross:before { + content: "\f654"; +} + +.fa-crosshairs:before { + content: "\f05b"; +} + +.fa-crow:before { + content: "\f520"; +} + +.fa-crown:before { + content: "\f521"; +} + +.fa-crutch:before { + content: "\f7f7"; +} + +.fa-css3:before { + content: "\f13c"; +} + +.fa-css3-alt:before { + content: "\f38b"; +} + +.fa-cube:before { + content: "\f1b2"; +} + +.fa-cubes:before { + content: "\f1b3"; +} + +.fa-cut:before { + content: "\f0c4"; +} + +.fa-cuttlefish:before { + content: "\f38c"; +} + +.fa-d-and-d:before { + content: "\f38d"; +} + +.fa-d-and-d-beyond:before { + content: "\f6ca"; +} + +.fa-dailymotion:before { + content: "\e052"; +} + +.fa-dashcube:before { + content: "\f210"; +} + +.fa-database:before { + content: "\f1c0"; +} + +.fa-deaf:before { + content: "\f2a4"; +} + +.fa-deezer:before { + content: "\e077"; +} + +.fa-delicious:before { + content: "\f1a5"; +} + +.fa-democrat:before { + content: "\f747"; +} + +.fa-deploydog:before { + content: "\f38e"; +} + +.fa-deskpro:before { + content: "\f38f"; +} + +.fa-desktop:before { + content: "\f108"; +} + +.fa-dev:before { + content: "\f6cc"; +} + +.fa-deviantart:before { + content: "\f1bd"; +} + +.fa-dharmachakra:before { + content: "\f655"; +} + +.fa-dhl:before { + content: "\f790"; +} + +.fa-diagnoses:before { + content: "\f470"; +} + +.fa-diaspora:before { + content: "\f791"; +} + +.fa-dice:before { + content: "\f522"; +} + +.fa-dice-d20:before { + content: "\f6cf"; +} + +.fa-dice-d6:before { + content: "\f6d1"; +} + +.fa-dice-five:before { + content: "\f523"; +} + +.fa-dice-four:before { + content: "\f524"; +} + +.fa-dice-one:before { + content: "\f525"; +} + +.fa-dice-six:before { + content: "\f526"; +} + +.fa-dice-three:before { + content: "\f527"; +} + +.fa-dice-two:before { + content: "\f528"; +} + +.fa-digg:before { + content: "\f1a6"; +} + +.fa-digital-ocean:before { + content: "\f391"; +} + +.fa-digital-tachograph:before { + content: "\f566"; +} + +.fa-directions:before { + content: "\f5eb"; +} + +.fa-discord:before { + content: "\f392"; +} + +.fa-discourse:before { + content: "\f393"; +} + +.fa-disease:before { + content: "\f7fa"; +} + +.fa-divide:before { + content: "\f529"; +} + +.fa-dizzy:before { + content: "\f567"; +} + +.fa-dna:before { + content: "\f471"; +} + +.fa-dochub:before { + content: "\f394"; +} + +.fa-docker:before { + content: "\f395"; +} + +.fa-dog:before { + content: "\f6d3"; +} + +.fa-dollar-sign:before { + content: "\f155"; +} + +.fa-dolly:before { + content: "\f472"; +} + +.fa-dolly-flatbed:before { + content: "\f474"; +} + +.fa-donate:before { + content: "\f4b9"; +} + +.fa-door-closed:before { + content: "\f52a"; +} + +.fa-door-open:before { + content: "\f52b"; +} + +.fa-dot-circle:before { + content: "\f192"; +} + +.fa-dove:before { + content: "\f4ba"; +} + +.fa-download:before { + content: "\f019"; +} + +.fa-draft2digital:before { + content: "\f396"; +} + +.fa-drafting-compass:before { + content: "\f568"; +} + +.fa-dragon:before { + content: "\f6d5"; +} + +.fa-draw-polygon:before { + content: "\f5ee"; +} + +.fa-dribbble:before { + content: "\f17d"; +} + +.fa-dribbble-square:before { + content: "\f397"; +} + +.fa-dropbox:before { + content: "\f16b"; +} + +.fa-drum:before { + content: "\f569"; +} + +.fa-drum-steelpan:before { + content: "\f56a"; +} + +.fa-drumstick-bite:before { + content: "\f6d7"; +} + +.fa-drupal:before { + content: "\f1a9"; +} + +.fa-dumbbell:before { + content: "\f44b"; +} + +.fa-dumpster:before { + content: "\f793"; +} + +.fa-dumpster-fire:before { + content: "\f794"; +} + +.fa-dungeon:before { + content: "\f6d9"; +} + +.fa-dyalog:before { + content: "\f399"; +} + +.fa-earlybirds:before { + content: "\f39a"; +} + +.fa-ebay:before { + content: "\f4f4"; +} + +.fa-edge:before { + content: "\f282"; +} + +.fa-edge-legacy:before { + content: "\e078"; +} + +.fa-edit:before { + content: "\f044"; +} + +.fa-egg:before { + content: "\f7fb"; +} + +.fa-eject:before { + content: "\f052"; +} + +.fa-elementor:before { + content: "\f430"; +} + +.fa-ellipsis-h:before { + content: "\f141"; +} + +.fa-ellipsis-v:before { + content: "\f142"; +} + +.fa-ello:before { + content: "\f5f1"; +} + +.fa-ember:before { + content: "\f423"; +} + +.fa-empire:before { + content: "\f1d1"; +} + +.fa-envelope:before { + content: "\f0e0"; +} + +.fa-envelope-open:before { + content: "\f2b6"; +} + +.fa-envelope-open-text:before { + content: "\f658"; +} + +.fa-envelope-square:before { + content: "\f199"; +} + +.fa-envira:before { + content: "\f299"; +} + +.fa-equals:before { + content: "\f52c"; +} + +.fa-eraser:before { + content: "\f12d"; +} + +.fa-erlang:before { + content: "\f39d"; +} + +.fa-ethereum:before { + content: "\f42e"; +} + +.fa-ethernet:before { + content: "\f796"; +} + +.fa-etsy:before { + content: "\f2d7"; +} + +.fa-euro-sign:before { + content: "\f153"; +} + +.fa-evernote:before { + content: "\f839"; +} + +.fa-exchange-alt:before { + content: "\f362"; +} + +.fa-exclamation:before { + content: "\f12a"; +} + +.fa-exclamation-circle:before { + content: "\f06a"; +} + +.fa-exclamation-triangle:before { + content: "\f071"; +} + +.fa-expand:before { + content: "\f065"; +} + +.fa-expand-alt:before { + content: "\f424"; +} + +.fa-expand-arrows-alt:before { + content: "\f31e"; +} + +.fa-expeditedssl:before { + content: "\f23e"; +} + +.fa-external-link-alt:before { + content: "\f35d"; +} + +.fa-external-link-square-alt:before { + content: "\f360"; +} + +.fa-eye:before { + content: "\f06e"; +} + +.fa-eye-dropper:before { + content: "\f1fb"; +} + +.fa-eye-slash:before { + content: "\f070"; +} + +.fa-facebook:before { + content: "\f09a"; +} + +.fa-facebook-f:before { + content: "\f39e"; +} + +.fa-facebook-messenger:before { + content: "\f39f"; +} + +.fa-facebook-square:before { + content: "\f082"; +} + +.fa-fan:before { + content: "\f863"; +} + +.fa-fantasy-flight-games:before { + content: "\f6dc"; +} + +.fa-fast-backward:before { + content: "\f049"; +} + +.fa-fast-forward:before { + content: "\f050"; +} + +.fa-faucet:before { + content: "\e005"; +} + +.fa-fax:before { + content: "\f1ac"; +} + +.fa-feather:before { + content: "\f52d"; +} + +.fa-feather-alt:before { + content: "\f56b"; +} + +.fa-fedex:before { + content: "\f797"; +} + +.fa-fedora:before { + content: "\f798"; +} + +.fa-female:before { + content: "\f182"; +} + +.fa-fighter-jet:before { + content: "\f0fb"; +} + +.fa-figma:before { + content: "\f799"; +} + +.fa-file:before { + content: "\f15b"; +} + +.fa-file-alt:before { + content: "\f15c"; +} + +.fa-file-archive:before { + content: "\f1c6"; +} + +.fa-file-audio:before { + content: "\f1c7"; +} + +.fa-file-code:before { + content: "\f1c9"; +} + +.fa-file-contract:before { + content: "\f56c"; +} + +.fa-file-csv:before { + content: "\f6dd"; +} + +.fa-file-download:before { + content: "\f56d"; +} + +.fa-file-excel:before { + content: "\f1c3"; +} + +.fa-file-export:before { + content: "\f56e"; +} + +.fa-file-image:before { + content: "\f1c5"; +} + +.fa-file-import:before { + content: "\f56f"; +} + +.fa-file-invoice:before { + content: "\f570"; +} + +.fa-file-invoice-dollar:before { + content: "\f571"; +} + +.fa-file-medical:before { + content: "\f477"; +} + +.fa-file-medical-alt:before { + content: "\f478"; +} + +.fa-file-pdf:before { + content: "\f1c1"; +} + +.fa-file-powerpoint:before { + content: "\f1c4"; +} + +.fa-file-prescription:before { + content: "\f572"; +} + +.fa-file-signature:before { + content: "\f573"; +} + +.fa-file-upload:before { + content: "\f574"; +} + +.fa-file-video:before { + content: "\f1c8"; +} + +.fa-file-word:before { + content: "\f1c2"; +} + +.fa-fill:before { + content: "\f575"; +} + +.fa-fill-drip:before { + content: "\f576"; +} + +.fa-film:before { + content: "\f008"; +} + +.fa-filter:before { + content: "\f0b0"; +} + +.fa-fingerprint:before { + content: "\f577"; +} + +.fa-fire:before { + content: "\f06d"; +} + +.fa-fire-alt:before { + content: "\f7e4"; +} + +.fa-fire-extinguisher:before { + content: "\f134"; +} + +.fa-firefox:before { + content: "\f269"; +} + +.fa-firefox-browser:before { + content: "\e007"; +} + +.fa-first-aid:before { + content: "\f479"; +} + +.fa-first-order:before { + content: "\f2b0"; +} + +.fa-first-order-alt:before { + content: "\f50a"; +} + +.fa-firstdraft:before { + content: "\f3a1"; +} + +.fa-fish:before { + content: "\f578"; +} + +.fa-fist-raised:before { + content: "\f6de"; +} + +.fa-flag:before { + content: "\f024"; +} + +.fa-flag-checkered:before { + content: "\f11e"; +} + +.fa-flag-usa:before { + content: "\f74d"; +} + +.fa-flask:before { + content: "\f0c3"; +} + +.fa-flickr:before { + content: "\f16e"; +} + +.fa-flipboard:before { + content: "\f44d"; +} + +.fa-flushed:before { + content: "\f579"; +} + +.fa-fly:before { + content: "\f417"; +} + +.fa-folder:before { + content: "\f07b"; +} + +.fa-folder-minus:before { + content: "\f65d"; +} + +.fa-folder-open:before { + content: "\f07c"; +} + +.fa-folder-plus:before { + content: "\f65e"; +} + +.fa-font:before { + content: "\f031"; +} + +.fa-font-awesome:before { + content: "\f2b4"; +} + +.fa-font-awesome-alt:before { + content: "\f35c"; +} + +.fa-font-awesome-flag:before { + content: "\f425"; +} + +.fa-font-awesome-logo-full:before { + content: "\f4e6"; +} + +.fa-fonticons:before { + content: "\f280"; +} + +.fa-fonticons-fi:before { + content: "\f3a2"; +} + +.fa-football-ball:before { + content: "\f44e"; +} + +.fa-fort-awesome:before { + content: "\f286"; +} + +.fa-fort-awesome-alt:before { + content: "\f3a3"; +} + +.fa-forumbee:before { + content: "\f211"; +} + +.fa-forward:before { + content: "\f04e"; +} + +.fa-foursquare:before { + content: "\f180"; +} + +.fa-free-code-camp:before { + content: "\f2c5"; +} + +.fa-freebsd:before { + content: "\f3a4"; +} + +.fa-frog:before { + content: "\f52e"; +} + +.fa-frown:before { + content: "\f119"; +} + +.fa-frown-open:before { + content: "\f57a"; +} + +.fa-fulcrum:before { + content: "\f50b"; +} + +.fa-funnel-dollar:before { + content: "\f662"; +} + +.fa-futbol:before { + content: "\f1e3"; +} + +.fa-galactic-republic:before { + content: "\f50c"; +} + +.fa-galactic-senate:before { + content: "\f50d"; +} + +.fa-gamepad:before { + content: "\f11b"; +} + +.fa-gas-pump:before { + content: "\f52f"; +} + +.fa-gavel:before { + content: "\f0e3"; +} + +.fa-gem:before { + content: "\f3a5"; +} + +.fa-genderless:before { + content: "\f22d"; +} + +.fa-get-pocket:before { + content: "\f265"; +} + +.fa-gg:before { + content: "\f260"; +} + +.fa-gg-circle:before { + content: "\f261"; +} + +.fa-ghost:before { + content: "\f6e2"; +} + +.fa-gift:before { + content: "\f06b"; +} + +.fa-gifts:before { + content: "\f79c"; +} + +.fa-git:before { + content: "\f1d3"; +} + +.fa-git-alt:before { + content: "\f841"; +} + +.fa-git-square:before { + content: "\f1d2"; +} + +.fa-github:before { + content: "\f09b"; +} + +.fa-github-alt:before { + content: "\f113"; +} + +.fa-github-square:before { + content: "\f092"; +} + +.fa-gitkraken:before { + content: "\f3a6"; +} + +.fa-gitlab:before { + content: "\f296"; +} + +.fa-gitter:before { + content: "\f426"; +} + +.fa-glass-cheers:before { + content: "\f79f"; +} + +.fa-glass-martini:before { + content: "\f000"; +} + +.fa-glass-martini-alt:before { + content: "\f57b"; +} + +.fa-glass-whiskey:before { + content: "\f7a0"; +} + +.fa-glasses:before { + content: "\f530"; +} + +.fa-glide:before { + content: "\f2a5"; +} + +.fa-glide-g:before { + content: "\f2a6"; +} + +.fa-globe:before { + content: "\f0ac"; +} + +.fa-globe-africa:before { + content: "\f57c"; +} + +.fa-globe-americas:before { + content: "\f57d"; +} + +.fa-globe-asia:before { + content: "\f57e"; +} + +.fa-globe-europe:before { + content: "\f7a2"; +} + +.fa-gofore:before { + content: "\f3a7"; +} + +.fa-golf-ball:before { + content: "\f450"; +} + +.fa-goodreads:before { + content: "\f3a8"; +} + +.fa-goodreads-g:before { + content: "\f3a9"; +} + +.fa-google:before { + content: "\f1a0"; +} + +.fa-google-drive:before { + content: "\f3aa"; +} + +.fa-google-pay:before { + content: "\e079"; +} + +.fa-google-play:before { + content: "\f3ab"; +} + +.fa-google-plus:before { + content: "\f2b3"; +} + +.fa-google-plus-g:before { + content: "\f0d5"; +} + +.fa-google-plus-square:before { + content: "\f0d4"; +} + +.fa-google-wallet:before { + content: "\f1ee"; +} + +.fa-gopuram:before { + content: "\f664"; +} + +.fa-graduation-cap:before { + content: "\f19d"; +} + +.fa-gratipay:before { + content: "\f184"; +} + +.fa-grav:before { + content: "\f2d6"; +} + +.fa-greater-than:before { + content: "\f531"; +} + +.fa-greater-than-equal:before { + content: "\f532"; +} + +.fa-grimace:before { + content: "\f57f"; +} + +.fa-grin:before { + content: "\f580"; +} + +.fa-grin-alt:before { + content: "\f581"; +} + +.fa-grin-beam:before { + content: "\f582"; +} + +.fa-grin-beam-sweat:before { + content: "\f583"; +} + +.fa-grin-hearts:before { + content: "\f584"; +} + +.fa-grin-squint:before { + content: "\f585"; +} + +.fa-grin-squint-tears:before { + content: "\f586"; +} + +.fa-grin-stars:before { + content: "\f587"; +} + +.fa-grin-tears:before { + content: "\f588"; +} + +.fa-grin-tongue:before { + content: "\f589"; +} + +.fa-grin-tongue-squint:before { + content: "\f58a"; +} + +.fa-grin-tongue-wink:before { + content: "\f58b"; +} + +.fa-grin-wink:before { + content: "\f58c"; +} + +.fa-grip-horizontal:before { + content: "\f58d"; +} + +.fa-grip-lines:before { + content: "\f7a4"; +} + +.fa-grip-lines-vertical:before { + content: "\f7a5"; +} + +.fa-grip-vertical:before { + content: "\f58e"; +} + +.fa-gripfire:before { + content: "\f3ac"; +} + +.fa-grunt:before { + content: "\f3ad"; +} + +.fa-guilded:before { + content: "\e07e"; +} + +.fa-guitar:before { + content: "\f7a6"; +} + +.fa-gulp:before { + content: "\f3ae"; +} + +.fa-h-square:before { + content: "\f0fd"; +} + +.fa-hacker-news:before { + content: "\f1d4"; +} + +.fa-hacker-news-square:before { + content: "\f3af"; +} + +.fa-hackerrank:before { + content: "\f5f7"; +} + +.fa-hamburger:before { + content: "\f805"; +} + +.fa-hammer:before { + content: "\f6e3"; +} + +.fa-hamsa:before { + content: "\f665"; +} + +.fa-hand-holding:before { + content: "\f4bd"; +} + +.fa-hand-holding-heart:before { + content: "\f4be"; +} + +.fa-hand-holding-medical:before { + content: "\e05c"; +} + +.fa-hand-holding-usd:before { + content: "\f4c0"; +} + +.fa-hand-holding-water:before { + content: "\f4c1"; +} + +.fa-hand-lizard:before { + content: "\f258"; +} + +.fa-hand-middle-finger:before { + content: "\f806"; +} + +.fa-hand-paper:before { + content: "\f256"; +} + +.fa-hand-peace:before { + content: "\f25b"; +} + +.fa-hand-point-down:before { + content: "\f0a7"; +} + +.fa-hand-point-left:before { + content: "\f0a5"; +} + +.fa-hand-point-right:before { + content: "\f0a4"; +} + +.fa-hand-point-up:before { + content: "\f0a6"; +} + +.fa-hand-pointer:before { + content: "\f25a"; +} + +.fa-hand-rock:before { + content: "\f255"; +} + +.fa-hand-scissors:before { + content: "\f257"; +} + +.fa-hand-sparkles:before { + content: "\e05d"; +} + +.fa-hand-spock:before { + content: "\f259"; +} + +.fa-hands:before { + content: "\f4c2"; +} + +.fa-hands-helping:before { + content: "\f4c4"; +} + +.fa-hands-wash:before { + content: "\e05e"; +} + +.fa-handshake:before { + content: "\f2b5"; +} + +.fa-handshake-alt-slash:before { + content: "\e05f"; +} + +.fa-handshake-slash:before { + content: "\e060"; +} + +.fa-hanukiah:before { + content: "\f6e6"; +} + +.fa-hard-hat:before { + content: "\f807"; +} + +.fa-hashtag:before { + content: "\f292"; +} + +.fa-hat-cowboy:before { + content: "\f8c0"; +} + +.fa-hat-cowboy-side:before { + content: "\f8c1"; +} + +.fa-hat-wizard:before { + content: "\f6e8"; +} + +.fa-hdd:before { + content: "\f0a0"; +} + +.fa-head-side-cough:before { + content: "\e061"; +} + +.fa-head-side-cough-slash:before { + content: "\e062"; +} + +.fa-head-side-mask:before { + content: "\e063"; +} + +.fa-head-side-virus:before { + content: "\e064"; +} + +.fa-heading:before { + content: "\f1dc"; +} + +.fa-headphones:before { + content: "\f025"; +} + +.fa-headphones-alt:before { + content: "\f58f"; +} + +.fa-headset:before { + content: "\f590"; +} + +.fa-heart:before { + content: "\f004"; +} + +.fa-heart-broken:before { + content: "\f7a9"; +} + +.fa-heartbeat:before { + content: "\f21e"; +} + +.fa-helicopter:before { + content: "\f533"; +} + +.fa-highlighter:before { + content: "\f591"; +} + +.fa-hiking:before { + content: "\f6ec"; +} + +.fa-hippo:before { + content: "\f6ed"; +} + +.fa-hips:before { + content: "\f452"; +} + +.fa-hire-a-helper:before { + content: "\f3b0"; +} + +.fa-history:before { + content: "\f1da"; +} + +.fa-hive:before { + content: "\e07f"; +} + +.fa-hockey-puck:before { + content: "\f453"; +} + +.fa-holly-berry:before { + content: "\f7aa"; +} + +.fa-home:before { + content: "\f015"; +} + +.fa-hooli:before { + content: "\f427"; +} + +.fa-hornbill:before { + content: "\f592"; +} + +.fa-horse:before { + content: "\f6f0"; +} + +.fa-horse-head:before { + content: "\f7ab"; +} + +.fa-hospital:before { + content: "\f0f8"; +} + +.fa-hospital-alt:before { + content: "\f47d"; +} + +.fa-hospital-symbol:before { + content: "\f47e"; +} + +.fa-hospital-user:before { + content: "\f80d"; +} + +.fa-hot-tub:before { + content: "\f593"; +} + +.fa-hotdog:before { + content: "\f80f"; +} + +.fa-hotel:before { + content: "\f594"; +} + +.fa-hotjar:before { + content: "\f3b1"; +} + +.fa-hourglass:before { + content: "\f254"; +} + +.fa-hourglass-end:before { + content: "\f253"; +} + +.fa-hourglass-half:before { + content: "\f252"; +} + +.fa-hourglass-start:before { + content: "\f251"; +} + +.fa-house-damage:before { + content: "\f6f1"; +} + +.fa-house-user:before { + content: "\e065"; +} + +.fa-houzz:before { + content: "\f27c"; +} + +.fa-hryvnia:before { + content: "\f6f2"; +} + +.fa-html5:before { + content: "\f13b"; +} + +.fa-hubspot:before { + content: "\f3b2"; +} + +.fa-i-cursor:before { + content: "\f246"; +} + +.fa-ice-cream:before { + content: "\f810"; +} + +.fa-icicles:before { + content: "\f7ad"; +} + +.fa-icons:before { + content: "\f86d"; +} + +.fa-id-badge:before { + content: "\f2c1"; +} + +.fa-id-card:before { + content: "\f2c2"; +} + +.fa-id-card-alt:before { + content: "\f47f"; +} + +.fa-ideal:before { + content: "\e013"; +} + +.fa-igloo:before { + content: "\f7ae"; +} + +.fa-image:before { + content: "\f03e"; +} + +.fa-images:before { + content: "\f302"; +} + +.fa-imdb:before { + content: "\f2d8"; +} + +.fa-inbox:before { + content: "\f01c"; +} + +.fa-indent:before { + content: "\f03c"; +} + +.fa-industry:before { + content: "\f275"; +} + +.fa-infinity:before { + content: "\f534"; +} + +.fa-info:before { + content: "\f129"; +} + +.fa-info-circle:before { + content: "\f05a"; +} + +.fa-innosoft:before { + content: "\e080"; +} + +.fa-instagram:before { + content: "\f16d"; +} + +.fa-instagram-square:before { + content: "\e055"; +} + +.fa-instalod:before { + content: "\e081"; +} + +.fa-intercom:before { + content: "\f7af"; +} + +.fa-internet-explorer:before { + content: "\f26b"; +} + +.fa-invision:before { + content: "\f7b0"; +} + +.fa-ioxhost:before { + content: "\f208"; +} + +.fa-italic:before { + content: "\f033"; +} + +.fa-itch-io:before { + content: "\f83a"; +} + +.fa-itunes:before { + content: "\f3b4"; +} + +.fa-itunes-note:before { + content: "\f3b5"; +} + +.fa-java:before { + content: "\f4e4"; +} + +.fa-jedi:before { + content: "\f669"; +} + +.fa-jedi-order:before { + content: "\f50e"; +} + +.fa-jenkins:before { + content: "\f3b6"; +} + +.fa-jira:before { + content: "\f7b1"; +} + +.fa-joget:before { + content: "\f3b7"; +} + +.fa-joint:before { + content: "\f595"; +} + +.fa-joomla:before { + content: "\f1aa"; +} + +.fa-journal-whills:before { + content: "\f66a"; +} + +.fa-js:before { + content: "\f3b8"; +} + +.fa-js-square:before { + content: "\f3b9"; +} + +.fa-jsfiddle:before { + content: "\f1cc"; +} + +.fa-kaaba:before { + content: "\f66b"; +} + +.fa-kaggle:before { + content: "\f5fa"; +} + +.fa-key:before { + content: "\f084"; +} + +.fa-keybase:before { + content: "\f4f5"; +} + +.fa-keyboard:before { + content: "\f11c"; +} + +.fa-keycdn:before { + content: "\f3ba"; +} + +.fa-khanda:before { + content: "\f66d"; +} + +.fa-kickstarter:before { + content: "\f3bb"; +} + +.fa-kickstarter-k:before { + content: "\f3bc"; +} + +.fa-kiss:before { + content: "\f596"; +} + +.fa-kiss-beam:before { + content: "\f597"; +} + +.fa-kiss-wink-heart:before { + content: "\f598"; +} + +.fa-kiwi-bird:before { + content: "\f535"; +} + +.fa-korvue:before { + content: "\f42f"; +} + +.fa-landmark:before { + content: "\f66f"; +} + +.fa-language:before { + content: "\f1ab"; +} + +.fa-laptop:before { + content: "\f109"; +} + +.fa-laptop-code:before { + content: "\f5fc"; +} + +.fa-laptop-house:before { + content: "\e066"; +} + +.fa-laptop-medical:before { + content: "\f812"; +} + +.fa-laravel:before { + content: "\f3bd"; +} + +.fa-lastfm:before { + content: "\f202"; +} + +.fa-lastfm-square:before { + content: "\f203"; +} + +.fa-laugh:before { + content: "\f599"; +} + +.fa-laugh-beam:before { + content: "\f59a"; +} + +.fa-laugh-squint:before { + content: "\f59b"; +} + +.fa-laugh-wink:before { + content: "\f59c"; +} + +.fa-layer-group:before { + content: "\f5fd"; +} + +.fa-leaf:before { + content: "\f06c"; +} + +.fa-leanpub:before { + content: "\f212"; +} + +.fa-lemon:before { + content: "\f094"; +} + +.fa-less:before { + content: "\f41d"; +} + +.fa-less-than:before { + content: "\f536"; +} + +.fa-less-than-equal:before { + content: "\f537"; +} + +.fa-level-down-alt:before { + content: "\f3be"; +} + +.fa-level-up-alt:before { + content: "\f3bf"; +} + +.fa-life-ring:before { + content: "\f1cd"; +} + +.fa-lightbulb:before { + content: "\f0eb"; +} + +.fa-line:before { + content: "\f3c0"; +} + +.fa-link:before { + content: "\f0c1"; +} + +.fa-linkedin:before { + content: "\f08c"; +} + +.fa-linkedin-in:before { + content: "\f0e1"; +} + +.fa-linode:before { + content: "\f2b8"; +} + +.fa-linux:before { + content: "\f17c"; +} + +.fa-lira-sign:before { + content: "\f195"; +} + +.fa-list:before { + content: "\f03a"; +} + +.fa-list-alt:before { + content: "\f022"; +} + +.fa-list-ol:before { + content: "\f0cb"; +} + +.fa-list-ul:before { + content: "\f0ca"; +} + +.fa-location-arrow:before { + content: "\f124"; +} + +.fa-lock:before { + content: "\f023"; +} + +.fa-lock-open:before { + content: "\f3c1"; +} + +.fa-long-arrow-alt-down:before { + content: "\f309"; +} + +.fa-long-arrow-alt-left:before { + content: "\f30a"; +} + +.fa-long-arrow-alt-right:before { + content: "\f30b"; +} + +.fa-long-arrow-alt-up:before { + content: "\f30c"; +} + +.fa-low-vision:before { + content: "\f2a8"; +} + +.fa-luggage-cart:before { + content: "\f59d"; +} + +.fa-lungs:before { + content: "\f604"; +} + +.fa-lungs-virus:before { + content: "\e067"; +} + +.fa-lyft:before { + content: "\f3c3"; +} + +.fa-magento:before { + content: "\f3c4"; +} + +.fa-magic:before { + content: "\f0d0"; +} + +.fa-magnet:before { + content: "\f076"; +} + +.fa-mail-bulk:before { + content: "\f674"; +} + +.fa-mailchimp:before { + content: "\f59e"; +} + +.fa-male:before { + content: "\f183"; +} + +.fa-mandalorian:before { + content: "\f50f"; +} + +.fa-map:before { + content: "\f279"; +} + +.fa-map-marked:before { + content: "\f59f"; +} + +.fa-map-marked-alt:before { + content: "\f5a0"; +} + +.fa-map-marker:before { + content: "\f041"; +} + +.fa-map-marker-alt:before { + content: "\f3c5"; +} + +.fa-map-pin:before { + content: "\f276"; +} + +.fa-map-signs:before { + content: "\f277"; +} + +.fa-markdown:before { + content: "\f60f"; +} + +.fa-marker:before { + content: "\f5a1"; +} + +.fa-mars:before { + content: "\f222"; +} + +.fa-mars-double:before { + content: "\f227"; +} + +.fa-mars-stroke:before { + content: "\f229"; +} + +.fa-mars-stroke-h:before { + content: "\f22b"; +} + +.fa-mars-stroke-v:before { + content: "\f22a"; +} + +.fa-mask:before { + content: "\f6fa"; +} + +.fa-mastodon:before { + content: "\f4f6"; +} + +.fa-maxcdn:before { + content: "\f136"; +} + +.fa-mdb:before { + content: "\f8ca"; +} + +.fa-medal:before { + content: "\f5a2"; +} + +.fa-medapps:before { + content: "\f3c6"; +} + +.fa-medium:before { + content: "\f23a"; +} + +.fa-medium-m:before { + content: "\f3c7"; +} + +.fa-medkit:before { + content: "\f0fa"; +} + +.fa-medrt:before { + content: "\f3c8"; +} + +.fa-meetup:before { + content: "\f2e0"; +} + +.fa-megaport:before { + content: "\f5a3"; +} + +.fa-meh:before { + content: "\f11a"; +} + +.fa-meh-blank:before { + content: "\f5a4"; +} + +.fa-meh-rolling-eyes:before { + content: "\f5a5"; +} + +.fa-memory:before { + content: "\f538"; +} + +.fa-mendeley:before { + content: "\f7b3"; +} + +.fa-menorah:before { + content: "\f676"; +} + +.fa-mercury:before { + content: "\f223"; +} + +.fa-meteor:before { + content: "\f753"; +} + +.fa-microblog:before { + content: "\e01a"; +} + +.fa-microchip:before { + content: "\f2db"; +} + +.fa-microphone:before { + content: "\f130"; +} + +.fa-microphone-alt:before { + content: "\f3c9"; +} + +.fa-microphone-alt-slash:before { + content: "\f539"; +} + +.fa-microphone-slash:before { + content: "\f131"; +} + +.fa-microscope:before { + content: "\f610"; +} + +.fa-microsoft:before { + content: "\f3ca"; +} + +.fa-minus:before { + content: "\f068"; +} + +.fa-minus-circle:before { + content: "\f056"; +} + +.fa-minus-square:before { + content: "\f146"; +} + +.fa-mitten:before { + content: "\f7b5"; +} + +.fa-mix:before { + content: "\f3cb"; +} + +.fa-mixcloud:before { + content: "\f289"; +} + +.fa-mixer:before { + content: "\e056"; +} + +.fa-mizuni:before { + content: "\f3cc"; +} + +.fa-mobile:before { + content: "\f10b"; +} + +.fa-mobile-alt:before { + content: "\f3cd"; +} + +.fa-modx:before { + content: "\f285"; +} + +.fa-monero:before { + content: "\f3d0"; +} + +.fa-money-bill:before { + content: "\f0d6"; +} + +.fa-money-bill-alt:before { + content: "\f3d1"; +} + +.fa-money-bill-wave:before { + content: "\f53a"; +} + +.fa-money-bill-wave-alt:before { + content: "\f53b"; +} + +.fa-money-check:before { + content: "\f53c"; +} + +.fa-money-check-alt:before { + content: "\f53d"; +} + +.fa-monument:before { + content: "\f5a6"; +} + +.fa-moon:before { + content: "\f186"; +} + +.fa-mortar-pestle:before { + content: "\f5a7"; +} + +.fa-mosque:before { + content: "\f678"; +} + +.fa-motorcycle:before { + content: "\f21c"; +} + +.fa-mountain:before { + content: "\f6fc"; +} + +.fa-mouse:before { + content: "\f8cc"; +} + +.fa-mouse-pointer:before { + content: "\f245"; +} + +.fa-mug-hot:before { + content: "\f7b6"; +} + +.fa-music:before { + content: "\f001"; +} + +.fa-napster:before { + content: "\f3d2"; +} + +.fa-neos:before { + content: "\f612"; +} + +.fa-network-wired:before { + content: "\f6ff"; +} + +.fa-neuter:before { + content: "\f22c"; +} + +.fa-newspaper:before { + content: "\f1ea"; +} + +.fa-nimblr:before { + content: "\f5a8"; +} + +.fa-node:before { + content: "\f419"; +} + +.fa-node-js:before { + content: "\f3d3"; +} + +.fa-not-equal:before { + content: "\f53e"; +} + +.fa-notes-medical:before { + content: "\f481"; +} + +.fa-npm:before { + content: "\f3d4"; +} + +.fa-ns8:before { + content: "\f3d5"; +} + +.fa-nutritionix:before { + content: "\f3d6"; +} + +.fa-object-group:before { + content: "\f247"; +} + +.fa-object-ungroup:before { + content: "\f248"; +} + +.fa-octopus-deploy:before { + content: "\e082"; +} + +.fa-odnoklassniki:before { + content: "\f263"; +} + +.fa-odnoklassniki-square:before { + content: "\f264"; +} + +.fa-oil-can:before { + content: "\f613"; +} + +.fa-old-republic:before { + content: "\f510"; +} + +.fa-om:before { + content: "\f679"; +} + +.fa-opencart:before { + content: "\f23d"; +} + +.fa-openid:before { + content: "\f19b"; +} + +.fa-opera:before { + content: "\f26a"; +} + +.fa-optin-monster:before { + content: "\f23c"; +} + +.fa-orcid:before { + content: "\f8d2"; +} + +.fa-osi:before { + content: "\f41a"; +} + +.fa-otter:before { + content: "\f700"; +} + +.fa-outdent:before { + content: "\f03b"; +} + +.fa-page4:before { + content: "\f3d7"; +} + +.fa-pagelines:before { + content: "\f18c"; +} + +.fa-pager:before { + content: "\f815"; +} + +.fa-paint-brush:before { + content: "\f1fc"; +} + +.fa-paint-roller:before { + content: "\f5aa"; +} + +.fa-palette:before { + content: "\f53f"; +} + +.fa-palfed:before { + content: "\f3d8"; +} + +.fa-pallet:before { + content: "\f482"; +} + +.fa-paper-plane:before { + content: "\f1d8"; +} + +.fa-paperclip:before { + content: "\f0c6"; +} + +.fa-parachute-box:before { + content: "\f4cd"; +} + +.fa-paragraph:before { + content: "\f1dd"; +} + +.fa-parking:before { + content: "\f540"; +} + +.fa-passport:before { + content: "\f5ab"; +} + +.fa-pastafarianism:before { + content: "\f67b"; +} + +.fa-paste:before { + content: "\f0ea"; +} + +.fa-patreon:before { + content: "\f3d9"; +} + +.fa-pause:before { + content: "\f04c"; +} + +.fa-pause-circle:before { + content: "\f28b"; +} + +.fa-paw:before { + content: "\f1b0"; +} + +.fa-paypal:before { + content: "\f1ed"; +} + +.fa-peace:before { + content: "\f67c"; +} + +.fa-pen:before { + content: "\f304"; +} + +.fa-pen-alt:before { + content: "\f305"; +} + +.fa-pen-fancy:before { + content: "\f5ac"; +} + +.fa-pen-nib:before { + content: "\f5ad"; +} + +.fa-pen-square:before { + content: "\f14b"; +} + +.fa-pencil-alt:before { + content: "\f303"; +} + +.fa-pencil-ruler:before { + content: "\f5ae"; +} + +.fa-penny-arcade:before { + content: "\f704"; +} + +.fa-people-arrows:before { + content: "\e068"; +} + +.fa-people-carry:before { + content: "\f4ce"; +} + +.fa-pepper-hot:before { + content: "\f816"; +} + +.fa-perbyte:before { + content: "\e083"; +} + +.fa-percent:before { + content: "\f295"; +} + +.fa-percentage:before { + content: "\f541"; +} + +.fa-periscope:before { + content: "\f3da"; +} + +.fa-person-booth:before { + content: "\f756"; +} + +.fa-phabricator:before { + content: "\f3db"; +} + +.fa-phoenix-framework:before { + content: "\f3dc"; +} + +.fa-phoenix-squadron:before { + content: "\f511"; +} + +.fa-phone:before { + content: "\f095"; +} + +.fa-phone-alt:before { + content: "\f879"; +} + +.fa-phone-slash:before { + content: "\f3dd"; +} + +.fa-phone-square:before { + content: "\f098"; +} + +.fa-phone-square-alt:before { + content: "\f87b"; +} + +.fa-phone-volume:before { + content: "\f2a0"; +} + +.fa-photo-video:before { + content: "\f87c"; +} + +.fa-php:before { + content: "\f457"; +} + +.fa-pied-piper:before { + content: "\f2ae"; +} + +.fa-pied-piper-alt:before { + content: "\f1a8"; +} + +.fa-pied-piper-hat:before { + content: "\f4e5"; +} + +.fa-pied-piper-pp:before { + content: "\f1a7"; +} + +.fa-pied-piper-square:before { + content: "\e01e"; +} + +.fa-piggy-bank:before { + content: "\f4d3"; +} + +.fa-pills:before { + content: "\f484"; +} + +.fa-pinterest:before { + content: "\f0d2"; +} + +.fa-pinterest-p:before { + content: "\f231"; +} + +.fa-pinterest-square:before { + content: "\f0d3"; +} + +.fa-pizza-slice:before { + content: "\f818"; +} + +.fa-place-of-worship:before { + content: "\f67f"; +} + +.fa-plane:before { + content: "\f072"; +} + +.fa-plane-arrival:before { + content: "\f5af"; +} + +.fa-plane-departure:before { + content: "\f5b0"; +} + +.fa-plane-slash:before { + content: "\e069"; +} + +.fa-play:before { + content: "\f04b"; +} + +.fa-play-circle:before { + content: "\f144"; +} + +.fa-playstation:before { + content: "\f3df"; +} + +.fa-plug:before { + content: "\f1e6"; +} + +.fa-plus:before { + content: "\f067"; +} + +.fa-plus-circle:before { + content: "\f055"; +} + +.fa-plus-square:before { + content: "\f0fe"; +} + +.fa-podcast:before { + content: "\f2ce"; +} + +.fa-poll:before { + content: "\f681"; +} + +.fa-poll-h:before { + content: "\f682"; +} + +.fa-poo:before { + content: "\f2fe"; +} + +.fa-poo-storm:before { + content: "\f75a"; +} + +.fa-poop:before { + content: "\f619"; +} + +.fa-portrait:before { + content: "\f3e0"; +} + +.fa-pound-sign:before { + content: "\f154"; +} + +.fa-power-off:before { + content: "\f011"; +} + +.fa-pray:before { + content: "\f683"; +} + +.fa-praying-hands:before { + content: "\f684"; +} + +.fa-prescription:before { + content: "\f5b1"; +} + +.fa-prescription-bottle:before { + content: "\f485"; +} + +.fa-prescription-bottle-alt:before { + content: "\f486"; +} + +.fa-print:before { + content: "\f02f"; +} + +.fa-procedures:before { + content: "\f487"; +} + +.fa-product-hunt:before { + content: "\f288"; +} + +.fa-project-diagram:before { + content: "\f542"; +} + +.fa-pump-medical:before { + content: "\e06a"; +} + +.fa-pump-soap:before { + content: "\e06b"; +} + +.fa-pushed:before { + content: "\f3e1"; +} + +.fa-puzzle-piece:before { + content: "\f12e"; +} + +.fa-python:before { + content: "\f3e2"; +} + +.fa-qq:before { + content: "\f1d6"; +} + +.fa-qrcode:before { + content: "\f029"; +} + +.fa-question:before { + content: "\f128"; +} + +.fa-question-circle:before { + content: "\f059"; +} + +.fa-quidditch:before { + content: "\f458"; +} + +.fa-quinscape:before { + content: "\f459"; +} + +.fa-quora:before { + content: "\f2c4"; +} + +.fa-quote-left:before { + content: "\f10d"; +} + +.fa-quote-right:before { + content: "\f10e"; +} + +.fa-quran:before { + content: "\f687"; +} + +.fa-r-project:before { + content: "\f4f7"; +} + +.fa-radiation:before { + content: "\f7b9"; +} + +.fa-radiation-alt:before { + content: "\f7ba"; +} + +.fa-rainbow:before { + content: "\f75b"; +} + +.fa-random:before { + content: "\f074"; +} + +.fa-raspberry-pi:before { + content: "\f7bb"; +} + +.fa-ravelry:before { + content: "\f2d9"; +} + +.fa-react:before { + content: "\f41b"; +} + +.fa-reacteurope:before { + content: "\f75d"; +} + +.fa-readme:before { + content: "\f4d5"; +} + +.fa-rebel:before { + content: "\f1d0"; +} + +.fa-receipt:before { + content: "\f543"; +} + +.fa-record-vinyl:before { + content: "\f8d9"; +} + +.fa-recycle:before { + content: "\f1b8"; +} + +.fa-red-river:before { + content: "\f3e3"; +} + +.fa-reddit:before { + content: "\f1a1"; +} + +.fa-reddit-alien:before { + content: "\f281"; +} + +.fa-reddit-square:before { + content: "\f1a2"; +} + +.fa-redhat:before { + content: "\f7bc"; +} + +.fa-redo:before { + content: "\f01e"; +} + +.fa-redo-alt:before { + content: "\f2f9"; +} + +.fa-registered:before { + content: "\f25d"; +} + +.fa-remove-format:before { + content: "\f87d"; +} + +.fa-renren:before { + content: "\f18b"; +} + +.fa-reply:before { + content: "\f3e5"; +} + +.fa-reply-all:before { + content: "\f122"; +} + +.fa-replyd:before { + content: "\f3e6"; +} + +.fa-republican:before { + content: "\f75e"; +} + +.fa-researchgate:before { + content: "\f4f8"; +} + +.fa-resolving:before { + content: "\f3e7"; +} + +.fa-restroom:before { + content: "\f7bd"; +} + +.fa-retweet:before { + content: "\f079"; +} + +.fa-rev:before { + content: "\f5b2"; +} + +.fa-ribbon:before { + content: "\f4d6"; +} + +.fa-ring:before { + content: "\f70b"; +} + +.fa-road:before { + content: "\f018"; +} + +.fa-robot:before { + content: "\f544"; +} + +.fa-rocket:before { + content: "\f135"; +} + +.fa-rocketchat:before { + content: "\f3e8"; +} + +.fa-rockrms:before { + content: "\f3e9"; +} + +.fa-route:before { + content: "\f4d7"; +} + +.fa-rss:before { + content: "\f09e"; +} + +.fa-rss-square:before { + content: "\f143"; +} + +.fa-ruble-sign:before { + content: "\f158"; +} + +.fa-ruler:before { + content: "\f545"; +} + +.fa-ruler-combined:before { + content: "\f546"; +} + +.fa-ruler-horizontal:before { + content: "\f547"; +} + +.fa-ruler-vertical:before { + content: "\f548"; +} + +.fa-running:before { + content: "\f70c"; +} + +.fa-rupee-sign:before { + content: "\f156"; +} + +.fa-rust:before { + content: "\e07a"; +} + +.fa-sad-cry:before { + content: "\f5b3"; +} + +.fa-sad-tear:before { + content: "\f5b4"; +} + +.fa-safari:before { + content: "\f267"; +} + +.fa-salesforce:before { + content: "\f83b"; +} + +.fa-sass:before { + content: "\f41e"; +} + +.fa-satellite:before { + content: "\f7bf"; +} + +.fa-satellite-dish:before { + content: "\f7c0"; +} + +.fa-save:before { + content: "\f0c7"; +} + +.fa-schlix:before { + content: "\f3ea"; +} + +.fa-school:before { + content: "\f549"; +} + +.fa-screwdriver:before { + content: "\f54a"; +} + +.fa-scribd:before { + content: "\f28a"; +} + +.fa-scroll:before { + content: "\f70e"; +} + +.fa-sd-card:before { + content: "\f7c2"; +} + +.fa-search:before { + content: "\f002"; +} + +.fa-search-dollar:before { + content: "\f688"; +} + +.fa-search-location:before { + content: "\f689"; +} + +.fa-search-minus:before { + content: "\f010"; +} + +.fa-search-plus:before { + content: "\f00e"; +} + +.fa-searchengin:before { + content: "\f3eb"; +} + +.fa-seedling:before { + content: "\f4d8"; +} + +.fa-sellcast:before { + content: "\f2da"; +} + +.fa-sellsy:before { + content: "\f213"; +} + +.fa-server:before { + content: "\f233"; +} + +.fa-servicestack:before { + content: "\f3ec"; +} + +.fa-shapes:before { + content: "\f61f"; +} + +.fa-share:before { + content: "\f064"; +} + +.fa-share-alt:before { + content: "\f1e0"; +} + +.fa-share-alt-square:before { + content: "\f1e1"; +} + +.fa-share-square:before { + content: "\f14d"; +} + +.fa-shekel-sign:before { + content: "\f20b"; +} + +.fa-shield-alt:before { + content: "\f3ed"; +} + +.fa-shield-virus:before { + content: "\e06c"; +} + +.fa-ship:before { + content: "\f21a"; +} + +.fa-shipping-fast:before { + content: "\f48b"; +} + +.fa-shirtsinbulk:before { + content: "\f214"; +} + +.fa-shoe-prints:before { + content: "\f54b"; +} + +.fa-shopify:before { + content: "\e057"; +} + +.fa-shopping-bag:before { + content: "\f290"; +} + +.fa-shopping-basket:before { + content: "\f291"; +} + +.fa-shopping-cart:before { + content: "\f07a"; +} + +.fa-shopware:before { + content: "\f5b5"; +} + +.fa-shower:before { + content: "\f2cc"; +} + +.fa-shuttle-van:before { + content: "\f5b6"; +} + +.fa-sign:before { + content: "\f4d9"; +} + +.fa-sign-in-alt:before { + content: "\f2f6"; +} + +.fa-sign-language:before { + content: "\f2a7"; +} + +.fa-sign-out-alt:before { + content: "\f2f5"; +} + +.fa-signal:before { + content: "\f012"; +} + +.fa-signature:before { + content: "\f5b7"; +} + +.fa-sim-card:before { + content: "\f7c4"; +} + +.fa-simplybuilt:before { + content: "\f215"; +} + +.fa-sink:before { + content: "\e06d"; +} + +.fa-sistrix:before { + content: "\f3ee"; +} + +.fa-sitemap:before { + content: "\f0e8"; +} + +.fa-sith:before { + content: "\f512"; +} + +.fa-skating:before { + content: "\f7c5"; +} + +.fa-sketch:before { + content: "\f7c6"; +} + +.fa-skiing:before { + content: "\f7c9"; +} + +.fa-skiing-nordic:before { + content: "\f7ca"; +} + +.fa-skull:before { + content: "\f54c"; +} + +.fa-skull-crossbones:before { + content: "\f714"; +} + +.fa-skyatlas:before { + content: "\f216"; +} + +.fa-skype:before { + content: "\f17e"; +} + +.fa-slack:before { + content: "\f198"; +} + +.fa-slack-hash:before { + content: "\f3ef"; +} + +.fa-slash:before { + content: "\f715"; +} + +.fa-sleigh:before { + content: "\f7cc"; +} + +.fa-sliders-h:before { + content: "\f1de"; +} + +.fa-slideshare:before { + content: "\f1e7"; +} + +.fa-smile:before { + content: "\f118"; +} + +.fa-smile-beam:before { + content: "\f5b8"; +} + +.fa-smile-wink:before { + content: "\f4da"; +} + +.fa-smog:before { + content: "\f75f"; +} + +.fa-smoking:before { + content: "\f48d"; +} + +.fa-smoking-ban:before { + content: "\f54d"; +} + +.fa-sms:before { + content: "\f7cd"; +} + +.fa-snapchat:before { + content: "\f2ab"; +} + +.fa-snapchat-ghost:before { + content: "\f2ac"; +} + +.fa-snapchat-square:before { + content: "\f2ad"; +} + +.fa-snowboarding:before { + content: "\f7ce"; +} + +.fa-snowflake:before { + content: "\f2dc"; +} + +.fa-snowman:before { + content: "\f7d0"; +} + +.fa-snowplow:before { + content: "\f7d2"; +} + +.fa-soap:before { + content: "\e06e"; +} + +.fa-socks:before { + content: "\f696"; +} + +.fa-solar-panel:before { + content: "\f5ba"; +} + +.fa-sort:before { + content: "\f0dc"; +} + +.fa-sort-alpha-down:before { + content: "\f15d"; +} + +.fa-sort-alpha-down-alt:before { + content: "\f881"; +} + +.fa-sort-alpha-up:before { + content: "\f15e"; +} + +.fa-sort-alpha-up-alt:before { + content: "\f882"; +} + +.fa-sort-amount-down:before { + content: "\f160"; +} + +.fa-sort-amount-down-alt:before { + content: "\f884"; +} + +.fa-sort-amount-up:before { + content: "\f161"; +} + +.fa-sort-amount-up-alt:before { + content: "\f885"; +} + +.fa-sort-down:before { + content: "\f0dd"; +} + +.fa-sort-numeric-down:before { + content: "\f162"; +} + +.fa-sort-numeric-down-alt:before { + content: "\f886"; +} + +.fa-sort-numeric-up:before { + content: "\f163"; +} + +.fa-sort-numeric-up-alt:before { + content: "\f887"; +} + +.fa-sort-up:before { + content: "\f0de"; +} + +.fa-soundcloud:before { + content: "\f1be"; +} + +.fa-sourcetree:before { + content: "\f7d3"; +} + +.fa-spa:before { + content: "\f5bb"; +} + +.fa-space-shuttle:before { + content: "\f197"; +} + +.fa-speakap:before { + content: "\f3f3"; +} + +.fa-speaker-deck:before { + content: "\f83c"; +} + +.fa-spell-check:before { + content: "\f891"; +} + +.fa-spider:before { + content: "\f717"; +} + +.fa-spinner:before { + content: "\f110"; +} + +.fa-splotch:before { + content: "\f5bc"; +} + +.fa-spotify:before { + content: "\f1bc"; +} + +.fa-spray-can:before { + content: "\f5bd"; +} + +.fa-square:before { + content: "\f0c8"; +} + +.fa-square-full:before { + content: "\f45c"; +} + +.fa-square-root-alt:before { + content: "\f698"; +} + +.fa-squarespace:before { + content: "\f5be"; +} + +.fa-stack-exchange:before { + content: "\f18d"; +} + +.fa-stack-overflow:before { + content: "\f16c"; +} + +.fa-stackpath:before { + content: "\f842"; +} + +.fa-stamp:before { + content: "\f5bf"; +} + +.fa-star:before { + content: "\f005"; +} + +.fa-star-and-crescent:before { + content: "\f699"; +} + +.fa-star-half:before { + content: "\f089"; +} + +.fa-star-half-alt:before { + content: "\f5c0"; +} + +.fa-star-of-david:before { + content: "\f69a"; +} + +.fa-star-of-life:before { + content: "\f621"; +} + +.fa-staylinked:before { + content: "\f3f5"; +} + +.fa-steam:before { + content: "\f1b6"; +} + +.fa-steam-square:before { + content: "\f1b7"; +} + +.fa-steam-symbol:before { + content: "\f3f6"; +} + +.fa-step-backward:before { + content: "\f048"; +} + +.fa-step-forward:before { + content: "\f051"; +} + +.fa-stethoscope:before { + content: "\f0f1"; +} + +.fa-sticker-mule:before { + content: "\f3f7"; +} + +.fa-sticky-note:before { + content: "\f249"; +} + +.fa-stop:before { + content: "\f04d"; +} + +.fa-stop-circle:before { + content: "\f28d"; +} + +.fa-stopwatch:before { + content: "\f2f2"; +} + +.fa-stopwatch-20:before { + content: "\e06f"; +} + +.fa-store:before { + content: "\f54e"; +} + +.fa-store-alt:before { + content: "\f54f"; +} + +.fa-store-alt-slash:before { + content: "\e070"; +} + +.fa-store-slash:before { + content: "\e071"; +} + +.fa-strava:before { + content: "\f428"; +} + +.fa-stream:before { + content: "\f550"; +} + +.fa-street-view:before { + content: "\f21d"; +} + +.fa-strikethrough:before { + content: "\f0cc"; +} + +.fa-stripe:before { + content: "\f429"; +} + +.fa-stripe-s:before { + content: "\f42a"; +} + +.fa-stroopwafel:before { + content: "\f551"; +} + +.fa-studiovinari:before { + content: "\f3f8"; +} + +.fa-stumbleupon:before { + content: "\f1a4"; +} + +.fa-stumbleupon-circle:before { + content: "\f1a3"; +} + +.fa-subscript:before { + content: "\f12c"; +} + +.fa-subway:before { + content: "\f239"; +} + +.fa-suitcase:before { + content: "\f0f2"; +} + +.fa-suitcase-rolling:before { + content: "\f5c1"; +} + +.fa-sun:before { + content: "\f185"; +} + +.fa-superpowers:before { + content: "\f2dd"; +} + +.fa-superscript:before { + content: "\f12b"; +} + +.fa-supple:before { + content: "\f3f9"; +} + +.fa-surprise:before { + content: "\f5c2"; +} + +.fa-suse:before { + content: "\f7d6"; +} + +.fa-swatchbook:before { + content: "\f5c3"; +} + +.fa-swift:before { + content: "\f8e1"; +} + +.fa-swimmer:before { + content: "\f5c4"; +} + +.fa-swimming-pool:before { + content: "\f5c5"; +} + +.fa-symfony:before { + content: "\f83d"; +} + +.fa-synagogue:before { + content: "\f69b"; +} + +.fa-sync:before { + content: "\f021"; +} + +.fa-sync-alt:before { + content: "\f2f1"; +} + +.fa-syringe:before { + content: "\f48e"; +} + +.fa-table:before { + content: "\f0ce"; +} + +.fa-table-tennis:before { + content: "\f45d"; +} + +.fa-tablet:before { + content: "\f10a"; +} + +.fa-tablet-alt:before { + content: "\f3fa"; +} + +.fa-tablets:before { + content: "\f490"; +} + +.fa-tachometer-alt:before { + content: "\f3fd"; +} + +.fa-tag:before { + content: "\f02b"; +} + +.fa-tags:before { + content: "\f02c"; +} + +.fa-tape:before { + content: "\f4db"; +} + +.fa-tasks:before { + content: "\f0ae"; +} + +.fa-taxi:before { + content: "\f1ba"; +} + +.fa-teamspeak:before { + content: "\f4f9"; +} + +.fa-teeth:before { + content: "\f62e"; +} + +.fa-teeth-open:before { + content: "\f62f"; +} + +.fa-telegram:before { + content: "\f2c6"; +} + +.fa-telegram-plane:before { + content: "\f3fe"; +} + +.fa-temperature-high:before { + content: "\f769"; +} + +.fa-temperature-low:before { + content: "\f76b"; +} + +.fa-tencent-weibo:before { + content: "\f1d5"; +} + +.fa-tenge:before { + content: "\f7d7"; +} + +.fa-terminal:before { + content: "\f120"; +} + +.fa-text-height:before { + content: "\f034"; +} + +.fa-text-width:before { + content: "\f035"; +} + +.fa-th:before { + content: "\f00a"; +} + +.fa-th-large:before { + content: "\f009"; +} + +.fa-th-list:before { + content: "\f00b"; +} + +.fa-the-red-yeti:before { + content: "\f69d"; +} + +.fa-theater-masks:before { + content: "\f630"; +} + +.fa-themeco:before { + content: "\f5c6"; +} + +.fa-themeisle:before { + content: "\f2b2"; +} + +.fa-thermometer:before { + content: "\f491"; +} + +.fa-thermometer-empty:before { + content: "\f2cb"; +} + +.fa-thermometer-full:before { + content: "\f2c7"; +} + +.fa-thermometer-half:before { + content: "\f2c9"; +} + +.fa-thermometer-quarter:before { + content: "\f2ca"; +} + +.fa-thermometer-three-quarters:before { + content: "\f2c8"; +} + +.fa-think-peaks:before { + content: "\f731"; +} + +.fa-thumbs-down:before { + content: "\f165"; +} + +.fa-thumbs-up:before { + content: "\f164"; +} + +.fa-thumbtack:before { + content: "\f08d"; +} + +.fa-ticket-alt:before { + content: "\f3ff"; +} + +.fa-tiktok:before { + content: "\e07b"; +} + +.fa-times:before { + content: "\f00d"; +} + +.fa-times-circle:before { + content: "\f057"; +} + +.fa-tint:before { + content: "\f043"; +} + +.fa-tint-slash:before { + content: "\f5c7"; +} + +.fa-tired:before { + content: "\f5c8"; +} + +.fa-toggle-off:before { + content: "\f204"; +} + +.fa-toggle-on:before { + content: "\f205"; +} + +.fa-toilet:before { + content: "\f7d8"; +} + +.fa-toilet-paper:before { + content: "\f71e"; +} + +.fa-toilet-paper-slash:before { + content: "\e072"; +} + +.fa-toolbox:before { + content: "\f552"; +} + +.fa-tools:before { + content: "\f7d9"; +} + +.fa-tooth:before { + content: "\f5c9"; +} + +.fa-torah:before { + content: "\f6a0"; +} + +.fa-torii-gate:before { + content: "\f6a1"; +} + +.fa-tractor:before { + content: "\f722"; +} + +.fa-trade-federation:before { + content: "\f513"; +} + +.fa-trademark:before { + content: "\f25c"; +} + +.fa-traffic-light:before { + content: "\f637"; +} + +.fa-trailer:before { + content: "\e041"; +} + +.fa-train:before { + content: "\f238"; +} + +.fa-tram:before { + content: "\f7da"; +} + +.fa-transgender:before { + content: "\f224"; +} + +.fa-transgender-alt:before { + content: "\f225"; +} + +.fa-trash:before { + content: "\f1f8"; +} + +.fa-trash-alt:before { + content: "\f2ed"; +} + +.fa-trash-restore:before { + content: "\f829"; +} + +.fa-trash-restore-alt:before { + content: "\f82a"; +} + +.fa-tree:before { + content: "\f1bb"; +} + +.fa-trello:before { + content: "\f181"; +} + +.fa-tripadvisor:before { + content: "\f262"; +} + +.fa-trophy:before { + content: "\f091"; +} + +.fa-truck:before { + content: "\f0d1"; +} + +.fa-truck-loading:before { + content: "\f4de"; +} + +.fa-truck-monster:before { + content: "\f63b"; +} + +.fa-truck-moving:before { + content: "\f4df"; +} + +.fa-truck-pickup:before { + content: "\f63c"; +} + +.fa-tshirt:before { + content: "\f553"; +} + +.fa-tty:before { + content: "\f1e4"; +} + +.fa-tumblr:before { + content: "\f173"; +} + +.fa-tumblr-square:before { + content: "\f174"; +} + +.fa-tv:before { + content: "\f26c"; +} + +.fa-twitch:before { + content: "\f1e8"; +} + +.fa-twitter:before { + content: "\f099"; +} + +.fa-twitter-square:before { + content: "\f081"; +} + +.fa-typo3:before { + content: "\f42b"; +} + +.fa-uber:before { + content: "\f402"; +} + +.fa-ubuntu:before { + content: "\f7df"; +} + +.fa-uikit:before { + content: "\f403"; +} + +.fa-umbraco:before { + content: "\f8e8"; +} + +.fa-umbrella:before { + content: "\f0e9"; +} + +.fa-umbrella-beach:before { + content: "\f5ca"; +} + +.fa-uncharted:before { + content: "\e084"; +} + +.fa-underline:before { + content: "\f0cd"; +} + +.fa-undo:before { + content: "\f0e2"; +} + +.fa-undo-alt:before { + content: "\f2ea"; +} + +.fa-uniregistry:before { + content: "\f404"; +} + +.fa-unity:before { + content: "\e049"; +} + +.fa-universal-access:before { + content: "\f29a"; +} + +.fa-university:before { + content: "\f19c"; +} + +.fa-unlink:before { + content: "\f127"; +} + +.fa-unlock:before { + content: "\f09c"; +} + +.fa-unlock-alt:before { + content: "\f13e"; +} + +.fa-unsplash:before { + content: "\e07c"; +} + +.fa-untappd:before { + content: "\f405"; +} + +.fa-upload:before { + content: "\f093"; +} + +.fa-ups:before { + content: "\f7e0"; +} + +.fa-usb:before { + content: "\f287"; +} + +.fa-user:before { + content: "\f007"; +} + +.fa-user-alt:before { + content: "\f406"; +} + +.fa-user-alt-slash:before { + content: "\f4fa"; +} + +.fa-user-astronaut:before { + content: "\f4fb"; +} + +.fa-user-check:before { + content: "\f4fc"; +} + +.fa-user-circle:before { + content: "\f2bd"; +} + +.fa-user-clock:before { + content: "\f4fd"; +} + +.fa-user-cog:before { + content: "\f4fe"; +} + +.fa-user-edit:before { + content: "\f4ff"; +} + +.fa-user-friends:before { + content: "\f500"; +} + +.fa-user-graduate:before { + content: "\f501"; +} + +.fa-user-injured:before { + content: "\f728"; +} + +.fa-user-lock:before { + content: "\f502"; +} + +.fa-user-md:before { + content: "\f0f0"; +} + +.fa-user-minus:before { + content: "\f503"; +} + +.fa-user-ninja:before { + content: "\f504"; +} + +.fa-user-nurse:before { + content: "\f82f"; +} + +.fa-user-plus:before { + content: "\f234"; +} + +.fa-user-secret:before { + content: "\f21b"; +} + +.fa-user-shield:before { + content: "\f505"; +} + +.fa-user-slash:before { + content: "\f506"; +} + +.fa-user-tag:before { + content: "\f507"; +} + +.fa-user-tie:before { + content: "\f508"; +} + +.fa-user-times:before { + content: "\f235"; +} + +.fa-users:before { + content: "\f0c0"; +} + +.fa-users-cog:before { + content: "\f509"; +} + +.fa-users-slash:before { + content: "\e073"; +} + +.fa-usps:before { + content: "\f7e1"; +} + +.fa-ussunnah:before { + content: "\f407"; +} + +.fa-utensil-spoon:before { + content: "\f2e5"; +} + +.fa-utensils:before { + content: "\f2e7"; +} + +.fa-vaadin:before { + content: "\f408"; +} + +.fa-vector-square:before { + content: "\f5cb"; +} + +.fa-venus:before { + content: "\f221"; +} + +.fa-venus-double:before { + content: "\f226"; +} + +.fa-venus-mars:before { + content: "\f228"; +} + +.fa-vest:before { + content: "\e085"; +} + +.fa-vest-patches:before { + content: "\e086"; +} + +.fa-viacoin:before { + content: "\f237"; +} + +.fa-viadeo:before { + content: "\f2a9"; +} + +.fa-viadeo-square:before { + content: "\f2aa"; +} + +.fa-vial:before { + content: "\f492"; +} + +.fa-vials:before { + content: "\f493"; +} + +.fa-viber:before { + content: "\f409"; +} + +.fa-video:before { + content: "\f03d"; +} + +.fa-video-slash:before { + content: "\f4e2"; +} + +.fa-vihara:before { + content: "\f6a7"; +} + +.fa-vimeo:before { + content: "\f40a"; +} + +.fa-vimeo-square:before { + content: "\f194"; +} + +.fa-vimeo-v:before { + content: "\f27d"; +} + +.fa-vine:before { + content: "\f1ca"; +} + +.fa-virus:before { + content: "\e074"; +} + +.fa-virus-slash:before { + content: "\e075"; +} + +.fa-viruses:before { + content: "\e076"; +} + +.fa-vk:before { + content: "\f189"; +} + +.fa-vnv:before { + content: "\f40b"; +} + +.fa-voicemail:before { + content: "\f897"; +} + +.fa-volleyball-ball:before { + content: "\f45f"; +} + +.fa-volume-down:before { + content: "\f027"; +} + +.fa-volume-mute:before { + content: "\f6a9"; +} + +.fa-volume-off:before { + content: "\f026"; +} + +.fa-volume-up:before { + content: "\f028"; +} + +.fa-vote-yea:before { + content: "\f772"; +} + +.fa-vr-cardboard:before { + content: "\f729"; +} + +.fa-vuejs:before { + content: "\f41f"; +} + +.fa-walking:before { + content: "\f554"; +} + +.fa-wallet:before { + content: "\f555"; +} + +.fa-warehouse:before { + content: "\f494"; +} + +.fa-watchman-monitoring:before { + content: "\e087"; +} + +.fa-water:before { + content: "\f773"; +} + +.fa-wave-square:before { + content: "\f83e"; +} + +.fa-waze:before { + content: "\f83f"; +} + +.fa-weebly:before { + content: "\f5cc"; +} + +.fa-weibo:before { + content: "\f18a"; +} + +.fa-weight:before { + content: "\f496"; +} + +.fa-weight-hanging:before { + content: "\f5cd"; +} + +.fa-weixin:before { + content: "\f1d7"; +} + +.fa-whatsapp:before { + content: "\f232"; +} + +.fa-whatsapp-square:before { + content: "\f40c"; +} + +.fa-wheelchair:before { + content: "\f193"; +} + +.fa-whmcs:before { + content: "\f40d"; +} + +.fa-wifi:before { + content: "\f1eb"; +} + +.fa-wikipedia-w:before { + content: "\f266"; +} + +.fa-wind:before { + content: "\f72e"; +} + +.fa-window-close:before { + content: "\f410"; +} + +.fa-window-maximize:before { + content: "\f2d0"; +} + +.fa-window-minimize:before { + content: "\f2d1"; +} + +.fa-window-restore:before { + content: "\f2d2"; +} + +.fa-windows:before { + content: "\f17a"; +} + +.fa-wine-bottle:before { + content: "\f72f"; +} + +.fa-wine-glass:before { + content: "\f4e3"; +} + +.fa-wine-glass-alt:before { + content: "\f5ce"; +} + +.fa-wix:before { + content: "\f5cf"; +} + +.fa-wizards-of-the-coast:before { + content: "\f730"; +} + +.fa-wodu:before { + content: "\e088"; +} + +.fa-wolf-pack-battalion:before { + content: "\f514"; +} + +.fa-won-sign:before { + content: "\f159"; +} + +.fa-wordpress:before { + content: "\f19a"; +} + +.fa-wordpress-simple:before { + content: "\f411"; +} + +.fa-wpbeginner:before { + content: "\f297"; +} + +.fa-wpexplorer:before { + content: "\f2de"; +} + +.fa-wpforms:before { + content: "\f298"; +} + +.fa-wpressr:before { + content: "\f3e4"; +} + +.fa-wrench:before { + content: "\f0ad"; +} + +.fa-x-ray:before { + content: "\f497"; +} + +.fa-xbox:before { + content: "\f412"; +} + +.fa-xing:before { + content: "\f168"; +} + +.fa-xing-square:before { + content: "\f169"; +} + +.fa-y-combinator:before { + content: "\f23b"; +} + +.fa-yahoo:before { + content: "\f19e"; +} + +.fa-yammer:before { + content: "\f840"; +} + +.fa-yandex:before { + content: "\f413"; +} + +.fa-yandex-international:before { + content: "\f414"; +} + +.fa-yarn:before { + content: "\f7e3"; +} + +.fa-yelp:before { + content: "\f1e9"; +} + +.fa-yen-sign:before { + content: "\f157"; +} + +.fa-yin-yang:before { + content: "\f6ad"; +} + +.fa-yoast:before { + content: "\f2b1"; +} + +.fa-youtube:before { + content: "\f167"; +} + +.fa-youtube-square:before { + content: "\f431"; +} + +.fa-zhihu:before { + content: "\f63f"; +} + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + +.sr-only-focusable:active, +.sr-only-focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} + +@font-face { + font-family: 'Font Awesome 5 Brands'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-brands-400.eot"); + src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); +} + +.fab { + font-family: 'Font Awesome 5 Brands'; + font-weight: 400; +} + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-regular-400.eot"); + src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); +} + +.far { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; +} + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-style: normal; + font-weight: 900; + font-display: block; + src: url("../webfonts/fa-solid-900.eot"); + src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); +} + +.fa, +.fas { + font-family: 'Font Awesome 5 Free'; + font-weight: 900; +} + +/* //font awesome css */ + +/* dark and light mode styling */ +.mode-container { + width: 24px; + height: 24px; + padding: 0px 0; + margin-left: 10px; + color: var(--heading-color); +} + +.mode-container:hover { + color: var(--primary-color); +} + +.gg-sun { + position: relative; + transform: scale(var(--ggs, 1)); + height: 24px; + background: linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat 5px -6px/2px 6px, linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat 5px 14px/2px 6px, linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat -8px 5px/6px 2px, linear-gradient(180deg, currentColor 4px, transparent 0) no-repeat 14px 5px/6px 2px; + border-radius: 100px; + box-shadow: inset 0 0 0 2px; + border: 6px solid transparent; +} + +.gg-moon { + overflow: hidden; + position: relative; + transform: rotate(-135deg) scale(var(--ggs, 1)); + width: 20px; + height: 20px; + border: 2px solid; + border-bottom: 2px solid transparent; +} + +.gg-moon, +.gg-moon:after { + display: block; + box-sizing: border-box; + border-radius: 50%; +} + +.nav-fixed .gg-moon, +.nav-fixed .gg-moon:after { + color: var(--heading-color); +} + +.gg-moon:after { + content: ""; + position: absolute; + width: 12px; + height: 18px; + border: 2px solid transparent; + box-shadow: 0 0 0 2px; + top: 8px; + left: 2px; +} + +.gg-sun, +.gg-sun:after, +.gg-sun:before { + box-sizing: border-box; + display: block; + width: 24px; +} + +.gg-sun:after, +.gg-sun:before { + content: ""; + position: absolute; + height: 2px; + border-right: 4px solid; + border-left: 4px solid; + left: -6px; + top: 5px; +} + +.gg-sun:before { + transform: rotate(-45deg); +} + +.gg-sun:after { + transform: rotate(45deg); +} + +.mode-container i.gg-sun { + display: none; +} + +.mode-container i.gg-moon { + display: block; + cursor: pointer; +} + +input:checked+.mode-container i.gg-sun { + display: block; + cursor: pointer; +} + +input:checked+.mode-container i.gg-moon { + display: none; +} + +.nav-fixed .navbar .navbar-brand { + color: var(--heading-color); +} + +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link { + color: var(--heading-color); +} + +.nav-fixed .navbar .navbar-brand:hover { + color: var(--heading-color); +} + +.nav-fixed .navbar-expand-lg .navbar-nav .show>.nav-link, +.nav-fixed .navbar-expand-lg .navbar-nav .active>.nav-link, +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link.show, +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link.active, +.nav-fixed .navbar-expand-lg .navbar-nav .nav-link:hover { + color: var(--primary-color); +} + +/* //dark and light mode styling */ + +/* Magnific Popup CSS */ +.mfp-bg { + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 1042; + overflow: hidden; + position: fixed; + background: #0b0b0b; + opacity: 0.8; +} + +.mfp-wrap { + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 1043; + position: fixed; + outline: none !important; + -webkit-backface-visibility: hidden; +} + +.mfp-container { + text-align: center; + position: absolute; + width: 100%; + height: 100%; + left: 0; + top: 0; + padding: 0 8px; + box-sizing: border-box; +} + +.mfp-container:before { + content: ''; + display: inline-block; + height: 100%; + vertical-align: middle; +} + +.mfp-align-top .mfp-container:before { + display: none; +} + +.mfp-content { + position: relative; + display: inline-block; + vertical-align: middle; + margin: 0 auto; + text-align: left; + z-index: 1045; +} + +.mfp-inline-holder .mfp-content, +.mfp-ajax-holder .mfp-content { + width: 100%; + cursor: auto; +} + +.mfp-ajax-cur { + cursor: progress; +} + +.mfp-zoom-out-cur, +.mfp-zoom-out-cur .mfp-image-holder .mfp-close { + cursor: zoom-out; +} + +.mfp-zoom { + cursor: pointer; + cursor: zoom-in; +} + +.mfp-auto-cursor .mfp-content { + cursor: auto; +} + +.mfp-close, +.mfp-arrow, +.mfp-preloader, +.mfp-counter { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.mfp-loading.mfp-figure { + display: none; +} + +.mfp-hide { + display: none !important; +} + +.mfp-preloader { + color: #CCC; + position: absolute; + top: 50%; + width: auto; + text-align: center; + margin-top: -0.8em; + left: 8px; + right: 8px; + z-index: 1044; +} + +.mfp-preloader a { + color: #CCC; +} + +.mfp-preloader a:hover { + color: #FFF; +} + +.mfp-s-ready .mfp-preloader { + display: none; +} + +.mfp-s-error .mfp-content { + display: none; +} + +button.mfp-close, +button.mfp-arrow { + overflow: visible; + cursor: pointer; + border: 0; + -webkit-appearance: none; + display: block; + outline: none; + padding: 0; + z-index: 1046; + box-shadow: none; + touch-action: manipulation; +} + +button::-moz-focus-inner { + padding: 0; + border: 0; +} + +.mfp-close { + line-height: 40px; + position: absolute; + right: 0px; + top: -40px; + text-decoration: none; + text-align: center; + padding: 0 0 18px 10px; + color: #FFF; + font-style: normal; + font-size: 28px; + background: transparent; +} + +.mfp-close-btn-in .mfp-close { + color: #fff; +} + +.mfp-image-holder .mfp-close, +.mfp-iframe-holder .mfp-close { + color: #FFF; + right: -6px; + text-align: right; + padding-right: 6px; + width: 100%; +} + +.mfp-counter { + position: absolute; + top: 0; + right: 0; + color: #CCC; + font-size: 12px; + line-height: 18px; + white-space: nowrap; +} + +.mfp-arrow { + position: absolute; + opacity: 0.65; + margin: 0; + top: 50%; + margin-top: -55px; + padding: 0; + width: 90px; + height: 110px; + -webkit-tap-highlight-color: transparent; +} + +.mfp-arrow:active { + margin-top: -54px; +} + +.mfp-arrow:hover, +.mfp-arrow:focus { + opacity: 1; +} + +.mfp-arrow:before, +.mfp-arrow:after { + content: ''; + display: block; + width: 0; + height: 0; + position: absolute; + left: 0; + top: 0; + margin-top: 35px; + margin-left: 35px; + border: medium inset transparent; +} + +.mfp-arrow:after { + border-top-width: 13px; + border-bottom-width: 13px; + top: 8px; +} + +.mfp-arrow:before { + border-top-width: 21px; + border-bottom-width: 21px; + opacity: 0.7; +} + +.mfp-arrow-left { + left: 0; +} + +.mfp-arrow-left:after { + border-right: 17px solid #FFF; + margin-left: 31px; +} + +.mfp-arrow-left:before { + margin-left: 25px; + border-right: 27px solid #3F3F3F; +} + +.mfp-arrow-right { + right: 0; +} + +.mfp-arrow-right:after { + border-left: 17px solid #FFF; + margin-left: 39px; +} + +.mfp-arrow-right:before { + border-left: 27px solid #3F3F3F; +} + +.mfp-iframe-holder { + padding-top: 40px; + padding-bottom: 40px; +} + +.mfp-iframe-holder .mfp-content { + line-height: 0; + width: 100%; + max-width: 900px; +} + +.mfp-iframe-holder .mfp-close { + top: -40px; +} + +.mfp-iframe-scaler { + width: 100%; + height: 0; + overflow: hidden; + padding-top: 56.25%; +} + +.mfp-iframe-scaler iframe { + position: absolute; + display: block; + top: 0; + left: 0; + width: 100%; + height: 100%; + box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); + background: #000; +} + +/* Main image in popup */ +img.mfp-img { + width: auto; + max-width: 100%; + height: auto; + display: block; + line-height: 0; + box-sizing: border-box; + padding: 40px 0 40px; + margin: 0 auto; +} + +/* The shadow behind the image */ +.mfp-figure { + line-height: 0; +} + +.mfp-figure:after { + content: ''; + position: absolute; + left: 0; + top: 40px; + bottom: 40px; + display: block; + right: 0; + width: auto; + height: auto; + z-index: -1; + box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); + background: #444; +} + +.mfp-figure small { + color: #BDBDBD; + display: block; + font-size: 12px; + line-height: 14px; +} + +.mfp-figure figure { + margin: 0; +} + +.mfp-bottom-bar { + margin-top: -36px; + position: absolute; + top: 100%; + left: 0; + width: 100%; + cursor: auto; +} + +.mfp-title { + text-align: left; + line-height: 18px; + color: #F3F3F3; + word-wrap: break-word; + padding-right: 36px; +} + +.mfp-image-holder .mfp-content { + max-width: 100%; +} + +.mfp-gallery .mfp-image-holder .mfp-figure { + cursor: pointer; +} + +@media screen and (max-width: 800px) and (orientation: landscape), +screen and (max-height: 300px) { + + /** + * Remove all paddings around the image on small screen + */ + .mfp-img-cont-ser .mfp-image-holder { + padding-left: 0; + padding-right: 0; + } + + .mfp-img-cont-ser img.mfp-img { + padding: 0; + } + + .mfp-img-cont-ser .mfp-figure:after { + top: 0; + bottom: 0; + } + + .mfp-img-cont-ser .mfp-figure small { + display: inline; + margin-left: 5px; + } + + .mfp-img-cont-ser .mfp-bottom-bar { + background: rgba(0, 0, 0, 0.6); + bottom: 0; + margin: 0; + top: auto; + padding: 3px 5px; + position: fixed; + box-sizing: border-box; + } + + .mfp-img-cont-ser .mfp-bottom-bar:empty { + padding: 0; + } + + .mfp-img-cont-ser .mfp-counter { + right: 5px; + top: 3px; + } + + .mfp-img-cont-ser .mfp-close { + top: 0; + right: 0; + width: 35px; + height: 35px; + line-height: 35px; + background: rgba(0, 0, 0, 0.6); + position: fixed; + text-align: center; + padding: 0; + } +} + +@media all and (max-width: 900px) { + .mfp-arrow { + transform: scale(0.75); + } + + .mfp-arrow-left { + transform-origin: 0; + } + + .mfp-arrow-right { + transform-origin: 100%; + } + + .mfp-container { + padding-left: 6px; + padding-right: 6px; + } +} + +/* Styles for dialog window */ +#small-dialog { + max-width: 750px; + margin: 40px auto; + position: relative; +} + +div#small-dialog iframe { + width: 100%; + height: 420px; + display: block; + border-radius: 10px; +} + +/** + * Fade-zoom animation for first dialog + */ +/* start state */ +.my-mfp-zoom-in .zoom-anim-dialog { + opacity: 0; + transition: all 0.2s ease-in-out; + transform: scale(0.8); +} + +/* animate in */ +.my-mfp-zoom-in.mfp-ready .zoom-anim-dialog { + opacity: 1; + transform: scale(1); +} + +/* animate out */ +.my-mfp-zoom-in.mfp-removing .zoom-anim-dialog { + transform: scale(0.8); + opacity: 0; +} + +/* Dark overlay, start state */ +.my-mfp-zoom-in.mfp-bg { + opacity: 0; + transition: opacity 0.3s ease-out; +} + +/* animate in */ +.my-mfp-zoom-in.mfp-ready.mfp-bg { + opacity: 0.95; +} + +/* animate out */ +.my-mfp-zoom-in.mfp-removing.mfp-bg { + opacity: 0; +} + +/** + * Fade-move animation for second dialog + */ +/* at start */ +.my-mfp-slide-bottom .zoom-anim-dialog { + opacity: 0; + transition: all 0.2s ease-out; + transform: translateY(-20px) perspective(600px) rotateX(10deg); +} + +/* animate in */ +.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog { + opacity: 1; + transform: translateY(0) perspective(600px) rotateX(0); +} + +/* animate out */ +.my-mfp-slide-bottom.mfp-removing .zoom-anim-dialog { + opacity: 0; + transform: translateY(-10px) perspective(600px) rotateX(10deg); +} + +/* Dark overlay, start state */ +.my-mfp-slide-bottom.mfp-bg { + opacity: 0; + transition: opacity 0.3s ease-out; +} + +/* animate in */ +.my-mfp-slide-bottom.mfp-ready.mfp-bg { + opacity: 0.8; +} + +/* animate out */ +.my-mfp-slide-bottom.mfp-removing.mfp-bg { + opacity: 0; +} + +/* //Magnific Popup CSS */ + +/* movetop styling */ +#movetop { + position: fixed; + bottom: 90px; + right: 15px; + z-index: 9; + font-size: 16px; + border: none; + outline: none; + cursor: pointer; + color: #fff; + width: 40px; + height: 40px; + background: var(--primary-color); + border-radius: 50%; + -webkit-border-radius: 50%; + -o-border-radius: 50%; + -moz-border-radius: 50%; + -ms-border-radius: 50%; + padding: 0; +} + +#movetop:hover { + opacity: .8; +} + +/* //movetop styling */ + +/* header */ +/* navigation styling */ +.navbar .navbar-brand { + margin: 0; + padding: 0; + font-size: 34px; + font-weight: 600; + color: var(--heading-color); + margin-left: 28px; +} + +.navbar .navbar-brand i { + color: var(--primary-color); + transform: rotate(-45deg); + position: absolute; + left: 0px; + top: 0px; +} + +.navbar-light .navbar-brand:hover, +.navbar-light .navbar-brand:focus { + color: var(--heading-color); +} + +.navbar-expand-lg .navbar-nav .nav-item { + padding: 0 16px; +} + +.navbar-nav .nav-link:focus { + color: var(--primary-color); +} + +.navbar-expand-lg .navbar-nav .show>.nav-link, +.navbar-expand-lg .navbar-nav .active>.nav-link, +.navbar-expand-lg .navbar-nav .nav-link.show, +.navbar-expand-lg .navbar-nav .nav-link.active, +.navbar-expand-lg .navbar-nav .nav-link:hover { + color: var(--primary-color); +} + +.navbar-expand-lg .navbar-nav .nav-link { + padding: 0; + font-size: 16px; + color: var(--heading-color); + font-weight: 500; + padding: 0px; +} + +.navbar-nav .dropdown-menu li { + width: 100%; +} + +a.dropdown-item { + font-size: 16px; + color: var(--heading-color); + padding: 5px 24px; + font-weight: 600; +} + +a.dropdown-item:hover { + color: var(--primary-color); + background: none; +} + +a.dropdown-item.active { + background: transparent; + color: var(--primary-color); +} + +.navbar-expand-lg .navbar-nav .dropdown-menu { + transform: translateX(-30px); + background: var(--bg-color); + border: 1px solid var(--border-color); + box-shadow: rgb(12 12 12 / 6%) 0px 1px 20px 0px; +} + +.navbar-expand-lg .navbar-nav .dropdown-menu:before { + content: ''; + width: 14px; + height: 14px; + background: var(--bg-color); + border: 1px solid var(--border-color); + display: block; + border-right: none; + border-bottom: none; + transform: translateX(-50%) rotateZ(45deg); + position: absolute; + top: -7px; + left: 49%; + z-index: 1001; +} + +header { + background-color: transparent; + padding: 0; + transition: all 0.4s ease 0s; + height: 90px; + display: grid; + align-items: center; + /* box-shadow: 0 3px 9px rgba(0, 0, 0, 0.05); */ +} + +header.nav-fixed { + padding: 0; + background-color: var(--bg-color); + height: 80px; + border-bottom: none; + box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.05); + z-index: 10 !important; + /* for z-index:10 to display gallery popup */ +} + +.dropdown-toggle::after { + display: none; +} + +/*-- search --*/ +.navbar .search-btn i { + color: var(--heading-color); +} + +.nav-fixed .navbar .search-btn i { + color: var(--heading-color); +} + +.nav-fixed .search-right a { + color: var(--heading-color); +} + +.navbar .search-right a:hover { + color: #fff; + opacity: 1; +} + +.navbar form.search-box { + display: flex; +} + +.navbar .search-right .popup form input[type="search"] { + font-style: normal; + font-weight: normal; + font-size: 30px; + line-height: 20px; + color: var(--heading-color); + border: none; + height: 60px; + background: var(--bg-color); + padding: 45px 30px; + width: 100%; + border-radius: 0; +} + +.navbar .search-right .popup form button { + border: none; + cursor: pointer; + font-size: 28px; + text-align: center; + color: #fff; + width: 90px; + background: var(--primary-color); + line-height: 35px; + display: inline-block; + transition: 0.5s ease-out; + font-weight: 700; + display: block; + height: 90px; + line-height: 70px; + margin: 0 auto; + border-radius: 0; +} + +.navbar .search-right .popup form button:hover { + background: var(--secondary-color); + color: #fff; + outline: none; + border: none; +} + +.navbar .search-right .popup form input:focus { + outline: none; + border: none; +} + +.navbar .search-right .pop-overlay { + position: fixed; + top: 0px; + left: 0; + right: 0; + transition: opacity 0ms; + visibility: hidden; + opacity: 0; + z-index: 99; + background: rgba(25, 23, 23, 0.81); + box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, 0.85); + height: 100vh; +} + +.navbar .search-right .pop-overlay:target { + visibility: visible; + opacity: 1; +} + +.navbar .search-right .popup { + margin: 0rem auto; + padding: 40px 50px; + max-width: 700px; + border-radius: 3px; + position: relative; + top: 50%; + transform: translateY(-50%); +} + +.navbar .search-right .search-top { + display: grid; + grid-template-columns: auto 1fr 1fr; + grid-gap: 30px; + margin-top: 24px; +} + +.navbar .search-right .search-top h4 { + font-size: 20px; + color: #fff; + margin-bottom: 16px; +} + +.navbar .search-right .search-top span.fa { + padding-right: 10px; +} + +.navbar .search-right .search-top li { + display: block; +} + +.navbar .search-right .search-top li a { + font-size: 16px; + color: #fff; + line-height: 28px; +} + +.navbar .search-right .search-top li a:hover { + color: #fff; +} + +.navbar .search-right .close { + position: absolute; + top: 14px; + right: 0; + font-size: 40px; + color: #fff; + margin-right: 4.3em; +} + +.navbar .search-right .close:hover { + opacity: 0.8; + background: none; +} + +/*--//search--*/ +/* serach */ +.search-header input { + font-size: 15px; + border-radius: 30px 0 0 30px; + background: var(--bg-color); + padding: 8px 15px; + color: var(--heading-color); + border: 2px solid var(--border-color-light); + border-right: none; +} + +.search-header input:focus { + box-shadow: none; + border-color: var(--border-color-light); + background: var(--bg-color); + color: var(--heading-color); +} + +.search-header button.btn-style { + border-radius: 0 30px 30px 0; + box-shadow: none; + padding: 6px 16px; + font-size: 15px; +} + +.search-header button.btn-style:hover { + color: var(--secondary-color); + color: #fff; +} + +.nav-fixed .navbar .navbar-brand { + color: var(--heading-color); +} + +/* //serach */ +@media only screen and (max-width: 991px) { + header.nav-fixed { + height: auto; + padding: 14px 0; + } + + header { + height: auto; + padding: 17px 0; + } + + nav.navbar.navbar-expand-lg.navbar-light { + padding: 0; + } + + .navbar-collapse { + max-height: calc(100vh - 80px); + overflow-y: scroll; + } + + .navbar-toggler { + padding: 0rem !important; + border: none; + } + + .navbar-toggler:focus { + box-shadow: none; + } + + .navbar-collapse { + float: left; + text-align: center; + width: 100%; + background: var(--bg-color); + padding: 20px; + box-shadow: 0 6px 19px rgba(0, 0, 0, 0.05); + } + + .navbar-expand-lg .navbar-nav .nav-item { + padding: 6px 0px; + } + + .navbar-nav .dropdown-menu { + text-align: center; + } + + .navbar-expand-lg .navbar-nav .nav-link { + display: inline-block; + text-align: center; + } + + .navbar-expand-lg .navbar-nav .dropdown-menu { + transform: translateX(0px); + border: 1px solid var(--border-color-light); + } + + .navbar-expand-lg .navbar-nav .dropdown-menu:before { + border: 1px solid var(--border-color-light); + border-right: none; + border-bottom: none; + } + + .navbar-toggler-icon { + background-image: none; + padding: 0; + width: 34px; + height: 34px; + display: inline-block; + background: #272121; + border-radius: 4px; + text-align: center; + } + + .navbar-toggler-icon.fa { + font-size: 20px; + line-height: 1.2em; + background: var(--primary-color); + line-height: 34px; + color: #fff; + } + + .nav-fixed .navbar-expand-lg .navbar-nav .nav-link { + color: var(--heading-color); + } + + button.navbar-toggler .icon-close { + display: block; + } + + button.navbar-toggler .icon-expand { + display: none; + } + + button.navbar-toggler.collapsed .icon-close { + display: none; + } + + button.navbar-toggler.collapsed .icon-expand { + display: block; + } + + .cont-ser-position { + position: absolute; + right: 50px; + top: 17px; + } + + .navbar .search-right .close { + margin-right: 3em; + } + + .navbar .navbar-brand i { + left: 1px; + top: -7px; + } +} + +@media only screen and (max-width: 768px) { + .navbar .search-right .close { + margin-right: 2em; + } +} + +@media only screen and (max-width: 568px) { + .navbar .search-right .close { + margin-right: 1.5em; + } +} + +@media only screen and (max-width: 480px) { + .cont-ser-position { + top: 14px; + } + + .navbar .search-right .popup form input[type="search"] { + font-size: 22px; + padding: 35px 20px; + } + + .navbar .search-right .popup form button { + font-size: 20px; + height: 70px; + line-height: 60px; + } + + .navbar .search-right .popup { + padding: 40px 20px; + } + + .navbar .search-right .close { + margin-right: 1em; + } +} + +/* //navigation styling */ +/* //header */ + +/* button style */ +.btn-style { + padding: 12px 36px 14px; + font-size: 16px; + color: #fff; + border-radius: var(--border-radius-full); + font-weight: bold; + outline: none; + border: none; + background: var(--primary-color); + transition: all 1.8s ease-in-out; +} + +.btn-style:hover { + color: #fff; + background: var(--secondary-color); +} + +.btn-style-2 { + color: var(--heading-color); + background: var(--bg-color); +} + +.btn-style-2:hover { + color: #fff; + background: var(--primary-color); +} + +.btn-style-3 { + background: var(--secondary-color); +} + +.btn-style-3:hover { + background: var(--primary-color); +} + +.btn-style-primary { + padding: 0; + font-weight: 600; + font-size: 15px; + color: var(--heading-color); +} + +.btn-style-primary:hover { + color: var(--primary-color); +} + +.btn-style-primary i { + margin-left: 4px; +} + +/* //button style */ + +/* title style */ +h3.title-style { + font-size: 45px; + line-height: 55px; + font-weight: bold; +} + +@media (max-width:991px) { + h3.title-style { + font-size: 40px; + line-height: 50px; + } +} + +@media (max-width:568px) { + h3.title-style { + font-size: 35px; + line-height: 45px; + } +} + +@media (max-width:320px) { + h3.title-style { + font-size: 30px; + line-height: 40px; + } +} + +/* //title style */ + +/* banner section */ +.w3l-banner { + background-size: 400% 400%; + animation: gradient 15s ease infinite; + min-height: 100vh; + position: relative; + z-index: 1; + background: url(../images/banner.jpg) no-repeat center; +} + +.w3l-banner:before { + content: ""; + position: absolute; + width: 100%; + height: 100%; + background: var(--banner-layer); + z-index: -1; + top: 0; +} + +@keyframes gradient { + 0% { + background-position: 0% 50%; + } + + 50% { + background-position: 100% 50%; + } + + 100% { + background-position: 0% 50%; + } +} + +.w3l-banner { + display: grid; + align-items: center; + min-height: 100vh; +} + +h4.small-text-banner { + font-size: 22px; + font-weight: 400; + margin-bottom: 5px; +} + +.w3l-banner h3 { + font-size: 74px; + line-height: 84px; + font-weight: 700; +} + +.w3l-banner h3 span { + font-weight: 100; +} + +p.banner-sub { + font-size: 20px; + line-height: 30px; +} + +.sub-banner-image { + border-radius: 67% 33% 28% 72% / 59% 51% 49% 41%; + text-align: center; + max-width: 450px; + max-height: 450px; + background: var(--gradient-color-banner); + margin-top: 80px; +} + +.sub-banner-image img { + position: absolute; + top: -162px; + right: 0px; +} + +.banner-style-1 { + top: 0; + left: -20px; +} + +.banner-style-2 { + background: var(--secondary-color); + padding: 25px 30px; + border-radius: 50%; +} + +.banner-style-2 h4 { + color: #fff; +} + +.banner-style-2:before { + content: ""; + position: absolute; + top: 99%; + left: 50%; + margin-left: 0px; + border-width: 10px; + border-style: solid; + border-color: var(--secondary-color) var(--secondary-color) transparent transparent; +} + +@media (max-width: 1440px) { + .sub-banner-image { + max-width: 400px; + max-height: 400px; + } + + .sub-banner-image img { + width: 94%; + } +} + +@media (max-width: 1200px) { + .banner-style-2 h4 { + font-size: 18px; + } + + .banner-style-2 { + padding: 20px 30px; + } +} + +@media (max-width: 1050px) { + .sub-banner-image { + max-width: 360px; + max-height: 360px; + } +} + +@media (max-width: 1199px) { + .w3l-banner h3 { + font-size: 55px; + line-height: 65px; + } + + p.banner-sub { + font-size: 16px; + line-height: 28px; + } +} + +@media (max-width:991px) { + .w3l-banner { + animation: gradient 30s ease infinite; + } + + .w3l-banner h3 { + font-size: 45px; + line-height: 55px; + } + + .sub-banner-image { + max-width: 320px; + max-height: 320px; + } + + .sub-banner-image img { + top: -130px; + } + + .banner-style-1 { + left: -60px; + } +} + +@media (max-width: 768px) { + .banner-style-1 { + left: 0px; + } +} + +@media (max-width: 480px) { + .w3l-banner h3 { + font-size: 40px; + line-height: 45px; + } + + p.banner-sub { + font-size: 15px; + line-height: 26px; + } +} + +@media (max-width: 414px) { + .sub-banner-image { + margin-top: 7em; + } + + .banner-style-2 h4 { + font-size: 16px; + } +} + +@media (max-width: 330px) { + .w3l-banner h3 { + font-size: 35px; + line-height: 40px; + } +} + +/* //banner section */ + +/* home 4grids block */ +.services-w3l-block .icon-box { + padding: 30px; + position: relative; + overflow: hidden; + background: var(--bg-color); + box-shadow: var(--box-shadow); + transition: all 0.3s ease-in-out; + text-align: center; + border: 1px solid var(--bg-color); +} + +.services-w3l-block .icon i { + margin: 0 auto 20px auto; + display: inline-block; + text-align: center; + border-radius: 50%; + width: 72px; + height: 72px; + font-size: 34px; + line-height: 72px; +} + +.services-w3l-block .title a { + font-weight: bold; + margin-bottom: 15px; + font-size: 23px; + line-height: 33px; + color: var(--heading-color); + display: block; +} + +.services-w3l-block .title a:hover { + color: var(--secondary-color); +} + +.services-w3l-block .icon-box-clr-1 .icon i { + background: rgb(245 112 118 / 14%); + color: #fd5c63; +} + +.services-w3l-block .icon-box-clr-1:hover { + border-color: #fd5c63; +} + +.services-w3l-block .icon-box-clr-2 .icon i { + background: rgb(0 164 228 / 8%); + color: #00a4e4; +} + +.services-w3l-block .icon-box-clr-2:hover { + border-color: #00a4e4; +} + +.services-w3l-block .icon-box-clr-3 .icon i { + background: rgb(249 188 46 / 10%); + color: #ffc845; +} + +.services-w3l-block .icon-box-clr-3:hover { + border-color: #ffc845; +} + +.services-w3l-block .icon-box-clr-4 .icon i { + background: rgb(0 193 110 / 9%); + color: #00c16e; +} + +.services-w3l-block .icon-box-clr-4:hover { + border-color: #00c16e; +} + +/* //home 4grids block */ + +/* home image with content block */ +.w3l-servicesblock ul.list-style-lis li { + margin-top: 14px; +} + +.w3l-servicesblock ul.list-style-lis li i { + color: var(--primary-color); + margin-right: 6px; +} + +.imginfo__box { + background-color: var(--bg-color); + color: #fff; + position: absolute; + right: -60px; + bottom: -100px; + padding: 35px 40px 38px; + box-shadow: var(--box-shadow); + border-radius: var(--border-radius); +} + +.imginfo__box .imginfo__title { + font-size: 20px; + line-height: 30px; + font-weight: 700; + margin-bottom: 10px; +} + +.imginfo__box a { + font-size: 22px; + font-weight: 600; + line-height: 32px; + margin-top: 20px; + display: block; +} + +.imginfo__box a i { + color: var(--primary-color); +} + +@media (max-width: 1199px) { + .imginfo__box { + right: 18px; + } +} + +@media (max-width: 991px) { + .imginfo__box { + bottom: -60px; + } +} + +@media (max-width: 855px) { + .home-block-3-left::before { + right: -10px; + } +} + +@media (max-width: 840px) { + .home-block-3-left::before { + right: -50px; + } +} + +@media (max-width: 820px) { + .home-block-3-left::before { + right: -40px; + } +} + +@media (max-width: 800px) { + .home-block-3-left::before { + right: -20px; + } +} + +@media (max-width: 780px) { + .home-block-3-left::before { + right: -10px; + } +} + +@media (max-width: 580px) { + .home-block-3-left::before { + right: 0px; + } +} + +@media (max-width: 440px) { + .left-wthree-img { + padding-left: 10px; + padding-right: 10px; + } + + .imginfo__box { + position: static; + margin-top: 15px; + } + + .col-xl-5.col-lg-6.offset-xl-1.mt-lg-0.mt-5.pt-lg-0.pt-5 { + padding-top: 0 !important; + margin-top: 1em !important; + } +} + +/* //home image with content block */ + +/* courses section */ +.home-course-bg { + background: var(--bg-grey); +} + +.top-content-border h6 { + font-size: 20px; + font-weight: bold; +} + +.w3l-grids-block-6 { + background: var(--bg-color); +} + +.w3l-grids-block-5 .content-main-top h4 a { + color: var(--heading-color); + font-size: 22px; + margin-bottom: 8px; + display: block; + font-weight: 600; + line-height: 32px; +} + +.w3l-grids-block-5 .content-main-top h4 a:hover { + color: var(--primary-color); +} + +.w3l-grids-block-5 .coursecard-single { + box-shadow: 0px 30px 40px 0px rgb(1 11 60 / 10%); + transition: .3s ease; + -webkit-transition: .3s ease; + background: var(--bg-color); + border-radius: var(--border-radius); +} + +.w3l-grids-block-5 .grids5-info { + overflow: hidden; + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} + +.w3l-grids-block-5 .grids5-info img { + display: block; + width: 100%; + border-top-left-radius: 8px; + border-top-right-radius: 8px; + transition: 0.3s ease-in-out; +} + +.w3l-grids-block-5 .coursecard-single:hover img { + overflow: hidden; + transform: scale(1.1); + transition: 0.3s ease-in-out; +} + +.w3l-grids-block-5 .content-main-top { + padding: 20px; + border: none; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} + +ul.rating-list li { + display: inline-block; +} + +ul.rating-list li a { + color: #ffc949; + font-size: 15px; +} + +ul.rating-list li a.review-color { + color: var(--heading-color); +} + +.meta-list { + position: absolute; + left: 30px; + top: 15px; +} + +.meta-list a { + background: #1DC295; + display: inline-block; + border-radius: 3px; + font-size: 12px; + font-weight: 600; + padding: 4px 10px; + color: #FFFFFF !important; + text-transform: capitalize; + display: inline-block; + margin-right: 5px; +} + +.meta-list a.sec-2 { + background-color: #FFA100; +} + +.meta-list a.sec-3 { + background: #037ef3; +} + +.course-price-item { + position: absolute; + right: 25px; + bottom: -15px; +} + +.content-top li { + color: var(--heading-color); +} + +.content-top li i.fa-book-open { + color: var(--secondary-color); +} + +.content-top li i.fa-star { + color: var(--primary-color); +} + +.top-content-border { + border-top: 1px solid var(--border-color-light) +} + +/* //courses section */ + +/* why choose block */ +.w3l-service-1 .content23-grid { + background-size: cover; + min-height: 300px; + display: grid; + align-content: center; + position: relative; + z-index: 1; + border-radius: var(--border-radius); + overflow: hidden; + padding: 50px 30px; + transition: .5s; +} + +.w3l-service-1 .content23-grid:hover:before { + background: rgb(0 110 165 / 79%); + transform: scale(1); + transition: .5s; +} + +.w3l-service-1 .content23-grid1 { + background: url("../images/bg1.jpg") no-repeat center; + background-size: cover; +} + +.w3l-service-1 .content23-grid2 { + background: url("../images/bg2.jpg") no-repeat center; + background-size: cover; +} + +.w3l-service-1 .content23-grid:before { + content: ''; + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + background: rgb(4 4 4 / 50%); + z-index: -1; + border-radius: var(--border-radius); +} + +.w3l-service-1 .content23-grid h4 a { + font-size: 30px; + line-height: 40px; + text-align: center; + color: #fff; + display: inline-block; + font-weight: bold; +} + +.w3l-service-1 .content23-grid h4 a:hover { + color: var(--primary-color); +} + +@media all and (max-width: 768px) { + .w3l-service-1 .content23-grid { + padding: 60px 20px; + } + + .w3l-service-1 .content23-grid h4 a { + font-size: 24px; + } +} + +@media all and (max-width: 568px) { + .w3l-service-1 .content23-grid { + min-height: 250px; + } +} + +@media all and (max-width: 500px) { + .w3l-service-1 .content23-grid h4 a { + font-size: 22px; + } +} + +/* //why choose block */ + +/* stats block */ +.counter i { + color: var(--secondary-color); + text-align: center; + width: 80px; + height: 80px; + line-height: 80px; + border-radius: 50%; + background: rgb(210 128 75 / 6%); + font-size: 32px; +} + +.timer { + font-size: 2.5em; + font-weight: 600; + color: var(--heading-color); +} + +p.count-text { + color: var(--heading-color); +} + +@media (max-width: 1080px) { + .timer { + font-size: 2.5em; + } +} + +@media (max-width: 991px) { + .timer { + font-size: 2em; + } + + p.count-text { + font-size: 14px; + line-height: 22px; + } + + .w3-stats .col-md-3 { + display: grid; + align-items: stretch; + } +} + +/* //stats block */ + +/* blog block */ +.w3l-blog-block-5 .grids5-info h4 a { + color: var(--heading-color); + font-size: 22px; + line-height: 32px; + display: block; + font-weight: bold; + margin-bottom: 10px; +} + +.blog-card-single { + border: 1px solid var(--border-color-light); + box-shadow: 0px 30px 40px 0px rgb(1 11 60 / 10%); + transition: .3s ease; + -webkit-transition: .3s ease; + background: var(--bg-color); + border-radius: var(--border-radius); +} + +.w3l-blog-block-5 .blog-card-single:hover h4 a { + color: var(--primary-color); +} + +.w3l-blog-block-5 .grids5-info p.date-text { + font-size: 14px; +} + +.w3l-blog-block-5 .grids5-info p.date-text i { + color: var(--primary-color); +} + +.w3l-blog-block-5 .grids5-info span.small { + font-weight: 500; +} + +.w3l-blog-block-5 .grids5-info a { + overflow: hidden; + display: block; + border-top-left-radius: var(--border-radius); + border-top-right-radius: var(--border-radius); +} + +.w3l-blog-block-5 .grids5-info a img { + display: block; + width: 100%; + border-top-left-radius: var(--border-radius); + border-top-right-radius: var(--border-radius); + transition: 0.3s ease-in-out; +} + +.w3l-blog-block-5 .grids5-info:hover img { + overflow: hidden; + transform: scale(1.1); + transition: 0.3s ease-in-out; +} + +.w3l-blog-block-5 .grids5-info:hover .blog-info img { + transform: scale(1); +} + +.w3l-blog-block-5 .blog-info { + padding: 25px; + background: var(--bg-color); + border-radius: var(--border-radius); +} + +.blog-info img { + border-radius: 50% !important; +} + +.w3l-blog-block-5 .col-lg-4.col-md-6 { + display: flex; + align-items: stretch; +} + +/* pagination blog page */ +.pagination-style { + display: block; +} + +.pagination-style ul li { + display: inline-block; +} + +.pagination-style ul li span.fa { + color: var(--heading-color); +} + +.pagination-style ul li a:hover span.fa { + color: #fff; +} + +.pagination-style a { + display: inline-block; + color: var(--heading-color); + width: 40px; + height: 40px; + text-align: center; + line-height: 40px; + border-radius: 50%; + font-weight: 600; +} + +.pagination-style a span { + margin: 0; +} + +.pagination-style a.active, +.pagination-style a:hover { + background-color: var(--secondary-color); + color: #fff; +} + +.pagination-style ul li a.not-allowed span.fa { + cursor: not-allowed; + color: #c3c2c2; +} + +.pagination-style .not-allowed:hover { + opacity: 1; + background: transparent; + color: #c3c2c2; +} + +/* //pagination blog page */ +@media all and (max-width: 1200px) { + .section-heading p.lead { + font-size: 1.1rem; + } +} + +@media all and (max-width: 768px) { + .section-heading p.lead { + font-size: 1rem; + } +} + +@media all and (max-width: 414px) { + .w3l-blog-block-5 .wrapper { + width: 100%; + padding-right: 15px; + padding-left: 15px; + } +} + +@media all and (max-width: 375px) { + .w3l-blog-block-5 .grids5-info h4 a { + font-size: 20px; + } +} + +/* //blog block */ + +/* testimonials block */ +.w3l-index4 { + background: url(../images/bg3.jpg) no-repeat; + background-size: cover; + -webkit-background-size: cover; + -moz-background-size: cover; + -o-background-size: cover; + -ms-background-size: cover; + position: relative; + z-index: 0; +} + +.w3l-index4:before { + content: ""; + background: var(--layer); + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; +} + +.w3l-index4 * { + transition: none; +} + +.w3l-index4 .head-bg { + width: 70%; + margin: 0 auto; +} + +.w3l-index4 .content-slider { + width: 100%; +} + +.w3l-index4 .clients-slider { + max-width: 680px; + margin: 0 auto; + overflow: visible; + position: relative; +} + +.w3l-index4 .mask { + overflow: hidden; + height: 320px; +} + +.w3l-index4 .clients-slider ul { + margin: 0; + padding: 0; + position: relative; +} + +.w3l-index4 .clients-slider li { + width: 100%; + height: 320px; + position: absolute; + top: -325px; + list-style: none; +} + +.w3l-index4 .clients-slider .quote { + font-size: 20px; + line-height: 38px; + color: #fff; + margin-top: .5rem; +} + +.w3l-index4 .clients-slider .source { + font-size: 30px; + margin-top: 1.5rem; + color: #fff; + font-weight: bold; +} + +.w3l-index4 .clients-slider li img { + width: 100px; +} + +.w3l-index4 .clients-slider li.anim1 { + -webkit-animation: cycle 15s linear infinite; + animation: cycle 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim2 { + -webkit-animation: cycle2 15s linear infinite; + animation: cycle2 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim3 { + -webkit-animation: cycle3 15s linear infinite; + animation: cycle3 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim4 { + -webkit-animation: cycle4 15s linear infinite; + animation: cycle4 15s linear infinite; +} + +.w3l-index4 .clients-slider li.anim5 { + -webkit-animation: cycle5 15s linear infinite; + animation: cycle5 15s linear infinite; +} + +.w3l-index4 .clients-slider:hover li { + -webkit-animation-play-state: paused; + animation-play-state: paused; +} + +@-webkit-keyframes cycle { + 0% { + top: 0px; + } + + 4% { + top: 0px; + } + + 16% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 20% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 21% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 50% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 92% { + top: -325px; + opacity: 0; + z-index: 0; + } + + 96% { + top: -325px; + opacity: 0; + } + + 100% { + top: 0px; + opacity: 1; + } +} + +@keyframes cycle { + 0% { + top: 0px; + } + + 4% { + top: 0px; + } + + 16% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 20% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 21% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 50% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 92% { + top: -325px; + opacity: 0; + z-index: 0; + } + + 96% { + top: -325px; + opacity: 0; + } + + 100% { + top: 0px; + opacity: 1; + } +} + +@-webkit-keyframes cycle2 { + 0% { + top: -325px; + opacity: 0; + } + + 16% { + top: -325px; + opacity: 0; + } + + 20% { + top: 0px; + opacity: 1; + } + + 24% { + top: 0px; + opacity: 1; + } + + 36% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 40% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 41% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@keyframes cycle2 { + 0% { + top: -325px; + opacity: 0; + } + + 16% { + top: -325px; + opacity: 0; + } + + 20% { + top: 0px; + opacity: 1; + } + + 24% { + top: 0px; + opacity: 1; + } + + 36% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 40% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 41% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@-webkit-keyframes cycle3 { + 0% { + top: -325px; + opacity: 0; + } + + 36% { + top: -325px; + opacity: 0; + } + + 40% { + top: 0px; + opacity: 1; + } + + 44% { + top: 0px; + opacity: 1; + } + + 56% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 60% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 61% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@keyframes cycle3 { + 0% { + top: -325px; + opacity: 0; + } + + 36% { + top: -325px; + opacity: 0; + } + + 40% { + top: 0px; + opacity: 1; + } + + 44% { + top: 0px; + opacity: 1; + } + + 56% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 60% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 61% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@-webkit-keyframes cycle4 { + 0% { + top: -325px; + opacity: 0; + } + + 56% { + top: -325px; + opacity: 0; + } + + 60% { + top: 0px; + opacity: 1; + } + + 64% { + top: 0px; + opacity: 1; + } + + 76% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 80% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 81% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@keyframes cycle4 { + 0% { + top: -325px; + opacity: 0; + } + + 56% { + top: -325px; + opacity: 0; + } + + 60% { + top: 0px; + opacity: 1; + } + + 64% { + top: 0px; + opacity: 1; + } + + 76% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 80% { + top: 325px; + opacity: 0; + z-index: 0; + } + + 81% { + top: -325px; + opacity: 0; + z-index: -1; + } + + 100% { + top: -325px; + opacity: 0; + z-index: -1; + } +} + +@-webkit-keyframes cycle5 { + 0% { + top: -325px; + opacity: 0; + } + + 76% { + top: -325px; + opacity: 0; + } + + 80% { + top: 0px; + opacity: 1; + } + + 84% { + top: 0px; + opacity: 1; + } + + 96% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 100% { + top: 325px; + opacity: 0; + z-index: 0; + } +} + +@keyframes cycle5 { + 0% { + top: -325px; + opacity: 0; + } + + 76% { + top: -325px; + opacity: 0; + } + + 80% { + top: 0px; + opacity: 1; + } + + 84% { + top: 0px; + opacity: 1; + } + + 96% { + top: 0px; + opacity: 1; + z-index: 0; + } + + 100% { + top: 325px; + opacity: 0; + z-index: 0; + } +} + +@media screen and (max-width: 1080px) { + .w3l-index4 .clients-slider .quote { + font-size: 18px; + line-height: 30px; + } + + .w3l-index4 .clients-slider .source { + font-size: 30px; + } + + .w3l-index4 .mask { + height: 280px; + } +} + +@media screen and (max-width: 500px) { + .w3l-index4 .clients-slider .source { + font-size: 26px; + } +} + +@media screen and (max-width: 480px) { + .w3l-index4 .clients-slider .quote { + font-size: 16px; + line-height: 25px; + } +} + +@media screen and (max-width: 436px) { + .w3l-index4 .mask { + height: 300px; + } +} + +/* //testimonials block */ + +/* call block */ +.w3l-call-to-action-6 { + background: var(--gradient-color); +} + +h3.title-big { + font-weight: 800; + font-size: 30px; + color: #fff; + text-transform: uppercase; +} + +.w3l-call-to-action-6 .buttons li { + list-style: none; + display: inline-block; +} + +.w3l-call-to-action-6 .buttons li.green { + margin: 0 20px; +} + +.w3l-call-to-action-6 .buttons li.phone-sec a.call-style-w3 { + font-size: 20px; + color: #fff; + font-weight: 600; +} + +.w3l-call-to-action-6 .buttons li.phone-sec a.call-style-w3:hover { + color: #222; +} + +.buttons li.phone-sec i { + font-size: 38px; + color: #fff; + transform: rotate(-26deg); +} + +@media (max-width: 992px) { + .w3l-call-to-action-6 .buttons li { + display: block; + } +} + +@media (max-width: 567px) { + .w3l-call-to-action-6 .buttons li.phone-sec a.call-style-w3 { + font-size: 18px; + } + + li.phone-sec span { + font-size: 28px; + } +} + +/* //call block */ + +/* footer block */ +.w3l-footer-29-main { + background: #09131d; +} + +.w3l-footer-29-main h6.footer-title-29 { + font-size: 20px; + line-height: 30px; + margin-bottom: 24px; + font-weight: 600; + color: #fff; +} + +.w3l-footer-29-main .footer-list-29 ul li { + list-style: none; + margin-bottom: 10px; +} + +.w3l-footer-29-main .footer-list-29 ul li:last-child { + margin-bottom: 0px; +} + +.w3l-footer-29-main .footer-list-29 ul li a, +.w3l-footer-29-main .footer-list-29 p a, +.w3l-footer-29-main .footer-list-29 p { + font-size: 15px; + color: #ababab; + padding-bottom: 4px; +} + +.w3l-footer-29-main .footer-list-29 ul li a { + display: block; +} + +.w3l-footer-29-main .footer-list-29 ul li a:hover, +.w3l-footer-29-main .footer-list-29 p a:hover { + color: #fff; +} + +.w3l-footer-29-main .footer-list-29 ul li:last-child a, +.w3l-footer-29-main .footer-list-29 p { + border-bottom: none; +} + +p.copy-footer-29 { + font-size: 15px; + color: #fff; +} + +p.copy-footer-29 a { + color: var(--secondary-color); +} + +p.copy-footer-29 a:hover { + color: var(--primary-color); +} + +.w3l-footer-29-main input[type="email"] { + background: var(--subscribe-footer-input); + border: none; + padding: 16px 12px; + font-size: 15px; + outline: none; + width: 80%; + color: var(--heading-color); + border-radius: 4px 0 0 4px; +} + +.w3l-footer-29-main button { + border: none; + outline: none; + font-size: 16px; + padding: 16px 12px; + cursor: pointer; + width: 20%; + color: #fff; + background: var(--secondary-color); + border-radius: 0 4px 4px 0; +} + +@media (max-width: 991px) { + .w3l-footer-29-main h6.footer-title-29 { + margin-bottom: 20px; + font-size: 20px; + } +} + +@media (max-width: 415px) { + + .w3l-footer-29-main .footer-list-29 ul li, + .w3l-footer-29-main .midd-footer-29:nth-child(1) .footer-list-29 ul li:last-child { + margin-bottom: 8px; + } + + .col-4.footer-list-29 { + flex: 0 0 auto; + width: 100%; + } + + .w3l-footer-29-main h6.footer-title-29 { + margin-bottom: 10px; + } +} + +/* //footer block */ + +/* inner banner */ +.inner-banner { + background: url(../images/banner3.jpg) no-repeat center; + background-size: cover; + -webkit-background-size: cover; + -moz-background-size: cover; + -o-background-size: cover; + -ms-background-size: cover; + position: relative; + z-index: 0; +} + +.inner-banner::before { + content: ""; + position: absolute; + top: 0; + min-height: 100%; + left: 0; + right: 0; + z-index: -1; + background: var(--banner-layer); +} + +.w3l-breadcrumb { + display: block; + margin: 0 auto; + z-index: 100; + z-index: 99; +} + +.breadcrumbs-custom-path { + text-align: center; + display: inline-block; + margin-top: 6px; +} + +h4.inner-text-title { + color: var(--heading-color); + font-size: 32px; + line-height: 40px; + font-weight: bold; +} + +.breadcrumbs-custom-path li { + position: relative; + display: inline-block; + vertical-align: middle; + font-size: 15px; + text-transform: capitalize; + color: var(--font-color); + font-weight: 400; +} + +.breadcrumbs-custom-path li i { + font-size: 12px; + margin: 0 5px; +} + +.breadcrumbs-custom-path a, +.breadcrumbs-custom-path a:active { + color: var(--heading-color); + font-weight: bold; +} + +.breadcrumbs-custom-path a:hover { + color: var(--primary-color); +} + +@media (max-width: 800px) { + .breadcrumbs-custom-path li { + font-size: 16px; + } + + h4.inner-text-title { + font-size: 28px; + } +} + +@media (max-width: 568px) { + .breadcrumbs-custom-path li { + font-size: 15px; + } + + .breadcrumbs-custom-path { + margin-top: 2px; + } +} + +/* //inner banner */ + +/* holidays section */ +.w3l-timeline-1 { + background: var(--bg-light); +} + +.w3l-timeline-1 .timeline { + max-width: 900px; + margin: 0 auto; + margin-bottom: 40px; + position: relative; +} + +.w3l-timeline-1 .timeline:before { + content: ""; + position: absolute; + top: 10px; + left: 55px; + width: 3px; + height: calc(100% - 10px); + background: var(--primary-color); +} + +.w3l-timeline-1 .timeline .column { + margin: 0px 40px 40px 120px; +} + +.w3l-timeline-1 h5.sub-title-timeline { + font-size: 24px; + line-height: 34px; + margin-bottom: 1em; + margin-left: 2em; +} + +.w3l-timeline-1 h5.sub-title-timeline i { + color: var(--primary-color); +} + +.w3l-timeline-1 .timeline .column .title h2 { + font-size: 21px; + line-height: 31px; + font-weight: 600; + position: relative; +} + +.w3l-timeline-1 .timeline .column .title h2:before { + content: ""; + position: absolute; + left: -73px; + top: 10px; + width: 18px; + height: 18px; + background: var(--bg-color); + border: 3px solid var(--primary-color); + border-radius: 50%; +} + +.description h6 { + color: var(--primary-color); + margin-top: 15px; +} + +.w3l-timeline-1 .main { + width: 80%; + margin-left: 10%; + margin-top: 80px; +} + +.w3l-timeline-1 .main h1 { + font-size: 80px; + line-height: 60px; +} + +.w3l-timeline-1 .main p { + font-size: 13px; + line-height: 20px; + font-family: serif; + text-align: right; +} + +@media (max-width: 1280px) {} + +@media (max-width: 1080px) {} + +@media (max-width: 800px) { + .w3l-timeline-1 .timeline .column { + margin: 0px 0px 40px 120px; + } +} + +@media (max-width: 568px) { + .w3l-timeline-1 .timeline .column { + margin: 0px 0px 40px 60px; + } + + .w3l-timeline-1 .timeline::before { + left: 15px; + } + + .w3l-timeline-1 .timeline .column .title h2:before { + left: -53px; + top: 7px; + } + + .w3l-timeline-1 h5.sub-title-timeline { + margin-left: .4em; + } +} + +@media (max-width: 400px) { + .w3l-timeline-1 .timeline .column { + margin: 0px 0px 40px 40px; + } + + .w3l-timeline-1 .timeline .column .title h2 { + font-size: 19px; + line-height: 28px; + } + + .w3l-timeline-1 .timeline .column .title h2:before { + left: -32px; + top: 4px; + } +} + +/* holidays section */ + +/* contact section */ +.contact-block input, +.contact-block textarea { + width: 100%; + color: var(--heading-color); + background: var(--bg-grey); + font-size: 16px; + padding: 14px; + border: 2px solid var(--border-color-light); + outline: none; + margin-bottom: 20px; + border-radius: var(--border-radius); +} + +.cont-left.text-center i { + color: var(--secondary-color); + font-size: 26px; +} + +.contact-block textarea { + height: 180px; + margin: 0 0 20px 0; +} + +.contact-block input:focus, +.contact-block textarea:focus { + border: 2px solid var(--secondary-color); + background: var(--bg-color); +} + +.contact-left { + box-shadow: var(--box-shadow); + padding: 40px; +} + +.cont-details p a:hover { + color: var(--secondary-color); +} + +.cont-details h6 { + font-size: 18px; + font-weight: 600; + line-height: 18px; + margin-bottom: 8px; +} + +.map iframe { + -webkit-filter: var(--iframe-filter); + -moz-filter: var(--iframe-filter); + -ms-filter: var(--iframe-filter); + -o-filter: var(--iframe-filter); + filter: var(--iframe-filter); +} + +/* //contact section */ + +/* login section */ +.login-block input, +.login-block textarea { + width: 100%; + color: var(--heading-color); + background: var(--bg-grey); + font-size: 16px; + padding: 14px; + border: 2px solid var(--border-color-light); + outline: none; + margin-bottom: 20px; + border-radius: var(--border-radius); +} + +.log-left.text-center i { + color: var(--secondary-color); + font-size: 26px; +} + +.login-block textarea { + height: 180px; + margin: 0 0 20px 0; +} + +.login-block input:focus, +.login-block textarea:focus { + border: 2px solid var(--secondary-color); + background: var(--bg-color); +} + +.login-left { + box-shadow: var(--box-shadow); + padding: 40px; +} + +.login-center { + float: none; + margin: auto; +} + +.log-details p a:hover { + color: var(--secondary-color); +} + +.log-details h6 { + font-size: 18px; + font-weight: 600; + line-height: 18px; + margin-bottom: 8px; +} + +.new-user { + color: var(--secondary-color); + margin-left: 40%; +} + +/* //login section */ + +/* team block */ +.w3l-team-13 .left-side h4 { + font-size: 22px; + line-height: 32px; + margin-top: 15px; + font-weight: bold; + transition: .3s; + -webkit-transition: .3s; + -moz-transition: .3s; + -ms-transition: .3s; + -o-transition: .3s; +} + +.image-one:hover h4 { + color: var(--secondary-color); + transition: .3s; + -webkit-transition: .3s; + -moz-transition: .3s; + -ms-transition: .3s; + -o-transition: .3s; +} + +.w3l-team-13 img { + transition: .3s; + background: var(--bg-grey); + border-radius: 8px 8px 0 0; +} + +.w3l-team-13 img:hover { + transition: .3s; + background: var(--secondary-color); +} + +.w3l-team-13 .image-one { + box-shadow: var(--box-shadow); + padding-bottom: 15px; +} + +.w3l-team-13 .buttons-teams2 a i { + font-size: 24px; + margin: 0 3px; +} + +.w3l-team-13 .buttons-teams2 a .fa-facebook-square { + color: #3b5998; +} + +.w3l-team-13 .buttons-teams2 a .fa-twitter-square { + color: #00acee; +} + +.w3l-team-13 .buttons-teams2 a .fa-google-plus-square { + color: #DD4B39; +} + +@media (max-width: 480px) { + .w3l-team-13 .left-side h4 { + font-size: 18px; + line-height: 25px; + } +} + +/* //team block */ \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/banner.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/banner.jpg new file mode 100644 index 0000000000000000000000000000000000000000..02675926f5d92340036899f7bf656b4b21556a57 GIT binary patch literal 242347 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≺N@pvMacXMKRB_}(e> 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/banner.png b/section7/eazyschool-start/src/main/resources/static/assets/images/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..dc0b0b311c4e49596b2ee18ec4cbdd27c9347825 GIT binary patch literal 210492 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]MG<>$%kHx_1n zbA=}ZI@;1o( zPvDC2sq<8ke0H4O!@cviH$L&?AO83!KWd^m`g(;caFk$P;X>UG52JtKTvP(wOnb~? zm*98K%K*YWf`Y*;xDA^U?GVr7WvvLr_LX1m!8c4SPNd@u&r(+W*{j|3E1$lUzG?Eo zFuGI{Ti*x&C)ud%I;8i+KI$zi6mo*Zy>nLl83j-3P+ipFID{M==R0N~3D_au0 zTtfs#D+1MC?AToo=hP?wFf!RM6OYkcF?PKGi;bW1|>i4mX0;QXSZXU-L;GyWHCVD9D5okR(a72mEDKrgYef!`~T%yCfBN z^5XU1P=GDZe54mq?ykx4?wfo(!E!MO_Bl(q1pjECFdGVH*)nECYe!g z@&4l@|K!QnzvbsX`l;W@Gp~=ne%BQ^N-)3c65SpTc~5eQ&uBs}P)J zF?(#_3+7JS;bRA3yTVR%p!^r^#{e485O53|UFXG*b4&)n2|MB0ZL1{nE{>gN{%eLw zi^{=zj@fQ|-;AjeufdTK8HjX(DO zbk_+i_gUxOMu&0Dbj_3SguOJ@ba!ns+0o6K-W0i{68bVvMb|x5i`7clwiIjZ^*Cgj zsWg%5yQo^^8*-ctXfe-l;Y_SP3aCo!ngTuKQCYN*Nqnker;94C5WX^j29fTcMZyV= zCRZ6DuBJMOL2e;@P%M$Fk@$S_KtBr+$U}LivWY-3bItO^; zVe}q@#!P2c57GQ+1rXBQJP}ezP7C^gb&!1-tgUKHd`f@Aemw#K-GzLz^sCBODE)JQH}p+L@M?aHMzPbD)Rj>0)aDaC7kHe`VUYlCglyK`ZnjbhLOZNl@D8Jj+G5J2 z^HQvec6Nov>}|=)r!aw3?re~>?UNIsH7EVyuYNq8JvC2q*iO6K*HeG}8uMZ>pfuo7 zjqK?8#-IBn4=wT|i4^KP*UEMhUn?e%a_)Hsi{5MmTMpi1(622+b3&(C*%h8%tY1KQ z27aFBbqf;Qv=XpX!7m9fg=$NrH9tP&z4npBE9Y|!3A*pYHO=#Y_zcn+d>GCPzHUws z*;g#XaxtLH&!bZ7Vl(9X3x}5QYH5<0s~69gn5sFw-Rx)a{fp*S6NtxM zo=^Gy(GW|;={3~rPT9E|i8_X^;gwfx7JQtFIt4Mg7l+MLqyD|`dc#})?;rlef4O|C zW5S*A{znPsPPj_maHAuqMnVlG!OP9ajb?M>z`;oddF?NRn1sr>QELZIXUu+Cs=Z=v zNdYt1)m%FO1|rZl=|6dhU1QXv?;qy@`>AlsX$}vFf>{%_y*GS-xr8R=F{EL-} zWU&drhQshAsfWvV0j~C z$p77(tCEjB%gFPXWE~OWTuYl6Uck<`OY{;^@ zP9DfCW-_s&v^mx_8xgYQVOE?Ts~ekZtMp?9uf}Uf0;jTvi!q7z4+j5?!};1fBy`-; z!#qkbw{-bm`I}?JH{}ge_8@q7kH$Ru8sm8Bibv+!#X{X1T_HdwXb;o$+*CjtA@K~m zjsiO8W^_DoWgZ`@8t_l8mnK@M%dW1c^T?PNCh42d-X7>hKe5;~a#y#t)-cd1Gv=lS zO$lP(fUr*j)HHL4!DTi3Xxs~`*z$4w=M9_*Z-a(p1Pzw6G&7zHp!6NfG zPRwiq*O{0mfx$*MFQq=?f~zzPirpI+n)G<6stewUKvreiby#yLJ8>j&u=5)YCV-^HC~8_${iI)yo&s(xodTDk{pb*1^xM!w#BZ zV1+aw;J+NVl_=+HY5>jEK(0(8(eS67McGSYit!!X>!VcHrV^!v$^yqQPd`eLBA*~g1+tEtPam4&rC3tOf z({ApLq%*KZ1}vK)t3omGJw_FG%EC%QK%=O|9yog}WVLmw9hFm(%rScf2LZEJLv1wA zsRtQP(_fcrCgQ)aMioejL_!kX!=*UlrQz6JaO`F?{9=cERte!!+yGi**BnH&)gX^) zXvNQ;@*PcjUc}oi7Y-u0x(k=HsgMlljbRvAR!rrIl?Gj9*Ri%%QUO~^c<0`m9Gfx} zHHHj%$Z?Yr(;LoAr}w?%5d<2YwDjVO>BfaiY5hirVrxk?S%yR007Hz~zDx*L=jb+^b(?|nOzl$S*1Tcz0&70)^e4409BuiR2Q zU*2h##wr6s%>3Z)tyd1yL%>8HTOUi6t+nh=7LAXwlg$?ORxv(y4%5vh31gNZ?~c;g z-=yQ6I7LrGBb#H@n&mtod3*@GflR^Zb=!7wpvuvUxWxFoxhyfAf<(b`PtT ztEsc1RSQGGh`(}Fd-NSS207-`Yadf2W_RSSd4{^|>&WiQRu5jwTuD%wI&L65+?>>7 zk|oLWxoJ=(Xg=!CY8+#Y4MY=;L@vt;&wr0bFNyq}zGAKgkK_DfJVMZWRwMQk@pFD= z;tyz1=rN?mIidO)^RpLxi*+Q&oz;YXByJM#Rvq$1QT1s_!+8gfW)-U+n$|9ERHErt z15>dFgK+)lakhIk6?pS@R&CTJ5sGxLY2b}*h7(JyTd^^Fz2ptN75QJj?JOa zVt09cwa<_(5|+U&BlXeTH_#kV=%v8^x3~dsXj>0?F$cG?$8$FzNZoPQ46+5x61+u3 zo6&SH=9XvSfV9YO;5HyEBwu6Y ztPmt{T|F-YuGOf?qh4>~kH&iky67?5n?jN)OeKA?(>1MXJ(Y$E4`EAtLZafxyMHS; zear%OE8r+AiJTbn^%NG81kdA@Gan=2@9Tt&n1{+Mxeivi+5b!kmY0yf3YURG$Wd$- z!bT_pxi~97*o^bI8bi+f>hW1^(*&y^ zWO--vAMm4Z_&walUvUpTN-%fICEq`MrvYGNbtQf7<4>mx&#rRA;Xr)%OgfGV$-A{b zLjMQEuK}`0kd5HpgftiK2rn#lobVGWes<_X(1PUPfW8WL>UKig{N}t2Z&;7;Lc=OgKx-}gie zh8qHp?ZUBSD;8n6JhP^z126{|t^l!iHn%4Fl=Kp_B2_q`7C76al!4RT^&x9xgJ|YZ zvZ5_M99F1NNt(Fw-=l>+6n?7k@_GkS77;(Y3}lO!oGe4>7a1;dD*oGwSs1G3bX8S? zHh`+!D|nU|DZskeyy{E2O%Zks5i|d`3DN?}O;5mUAu7mYw6k+}hPQOQc6~iolk0&Z z5+KVEDKG#}crC7r6}_7ul7l9sjzBP}#sp8!DVmPWrEy-ls><(864#5&icr{(zef^e z?X47pJM{5x=JbH`_$y;y|IP1u+sU8(@JFuRDPiQ*KF*^A^J=g77x8|VKKOxe-tF~I zxtr?~z^-1}MCHyoF@17`U}B%d4#D_PLLVMO*u~zMLlR96SOk=Sa5Bs` zq_@J(Zi9jxhiW7736o7D=CmKC2hL4_Q;(-lT-d->8JAgcZFb@@=nFWqcjvf-gops;%9TuhdJ z1-=hAV>M<#s?x)-!<$*9?83u{{fCXe=9i%wGH_?8r;aSyUA~o|&6x%rqlUq=i;-u@ zbV*p5K!%Q&BQTKaYsNa8;Ku34aa?gUd-7kK%4>a-zjJ_HR7MI4!X%D#!od^THH64QwwwQx^2{cdAOFalh9qR zNKGjIJYbxnf>HnxV;f9DCL=2;*Wc>G#9fg6QQ?RpMs;UGb8QXm**4$fH|YqA2In3B zmlL;%Q4S?ft%R?$|0rbhMPe#~c=(A~8HUipfS#q{nP@3T8|21dA;wrk*S_FaO4u}# zgUN*Vi6raO<&kVQb>k!_8T~DOV6sfj z5tPNE)z&z;Y77an`29qhW|z9$*-M|ixSC#EhmhyRj!zO~QGprMM+yAv;OQL_){tFf zm*c3wH-x=k-RjD6a4rVIh;}g`OPMks(O`*H`slE1Ws&XN z{WEuplSN~9F2q#lSV(?MSHB`rh&2J}r5j$d_N*Fa}9t8y&;A-u=wn_gzV{#hi=V_o;ppqPufS1)xy?Tl zmwxsKPwwm-e$^h)z#Y25XnLCYCCu#@5_I9{tXiH*Wop6>uX2MPp>0?KnU2$u`8+V(r z)qpfYy~9Hdb~Z%Xe_~(=S*{5|D;oo{yJ?`b76~;A0&rYr*T2ccLWO4%(76(E?h6Vx zk3qT`IEyS=Sj|RF+CDa705;S(4=H=m)9}*c}$Z`{+ys{(Ll6McmKrX zWbAZ1HXyQ220R0;(&q!5n41KzyQjv|pZV5z@?IK`W_Up1WUOqj1c&!iZ!D1R4SYe=FINy}k^n2JGAjYEU+@D&xq5w%kCd_H%6xf?qND zkgS#d=Iws?npyF=QHjyVCZ~ez&i-C(3PK5%k25FVTt!A77Ox?!=fN59tqknpio-{H$831^LejYjo=4+EnY^UdM3~_@Fkwp9g>7 zHV-AY~=SN^8lU;hYW$hy@C`%yhj(n$jI%4&z*Qx}6t0yt9H&(k1z@)QA^ z!C|8z^OeB28{6B&F7j-nK2AV2I5`ufv(Y6eqxK;wgld-^V%(7YqmLV}vRFIGC6Wzr z+wcY2^M?xz0c@RJ{1!J~SDO-|lg5;LyYMAq)+PyphPE;)qK58(wIGSz?qPcD)IvHn z-v)95vj_GGqe}X6B&iKZxu=5wM1Tu*mb+q(QD*`nt9_0+_n2se*-k5KK!!YE+X}R z&$j4`(9+*PYSUilB?!f9V$wKB_bpb_U-`DTq}d79T@Jvi(D^OEh<2+B?X)L>7Oeo} z5AcX{H|>0rJlCfnyMsfK*cX1|9Ku;4tI7<@LYmn-EJH)JnEaXhKXSi`!O`<|_nw1p zj82Y9L1tf?D9^L6ksJ;FIicNjL=NaHGFmxZG6!(^kxZpS$E1nE#T6GwxJ)a8K zICt~AS;+3mCWDNqWs$VNmKCMzAw=oM#Hud${`h-+(sb@t0-sfXex}0`D8EeRo(fSz z^t3h_0O(QBu0NnN zlFl9qurL55XsB@N5Lh(_w5l1{??DjE)+6HJW*qShcFw$@O_fTj`-yw<(673~0=a29o(MZab#ei*8&~Z_un>;mXEE=?rcZ;_0YRlO$J~ZL(cQoR z?);Xz4V2EXi4J-Zo-%;yHcjAnCvBIu0n5r|Vk*wZ%ElW)<&@@{2VqsC{8&4gY|eR{ z{+@$9hC`FYhpeMH*$O6R)AO}MRb#U1@w-P)&!@lo$KDG$uaJRrr6Vzsx4KAr;pat))3h`^qMZP?xyFq;*u-S*Km zXvI;u8@mS8kRE44N?#+7B@Tr2B|k8)jgV@P;{LCI!=eeYkTjQ8l|Em?(VMd7%zec- zFKmSx4VQ9q98<&VPjYI84BC$Y3CL02d~Uhq`E^u02B^w;P@1|q$W96-C$Co6f&%^J zL=}>NfMS)@7Zs1aFhHaFQl!0YH5 z>035AJrf(e7hk;m@IU{*{oVUtwZL!(z0pwxb6a1mkssxrY(}6ANXMJ)Fip(QrnytI zQM%U%JkP8Q(lT(@M?QW&9m6SkdRDs=xP)yRDY+|(KA6z?YrRjOOrM~voVicZ2$G+N z?doSmVo`c(!1QJhrH?yvZ{7&9*=|0oZ`eT+=!FvoR!H34U7jyyZ%}Z*sg&8uXoM!e zxar-A^WU5AKgKK=;4Ol95WYNjGy+*B_Kk9g8Um&*Dnp`pygydqgouuw8>&o1Z+%rVeUBEQLKAb~T z2b}XP7CHyZ>+zaGMTbHsn{5!rSUH z8%Q>gk(+dyhgg^JT))galI@#VmYCqQ%qgdb$|cF4SgBT7BLxVhbF=FfyY#34OGo0M z$m5#DF5l}IkW{vV2~`wpQcm5>RgkL)>8*0kWSAE;zOuYmgG&FE6@BquemWHc7=&Zx zjsLk9sB}LzI0r8i$0%&)uso-7l6ZhIqw7AZpL~t|MEMvzE#co7%w}~QLJ{v5-yv5h2UeKDySO_k_fJ`*P&#P~8(Zyo zri+Y_n4O#WQ@p?rzqCk4f61TYqjk7FSK!5e_qR{&?Tmh#H?BM4QMOjQ?3{OS9d>6m zwJ?)rk72uis+sObK{m_A`~uSofAu$?4VX$JO8Y>>z9o>ufRdYR8*i%~(3mqrgklWt zF?fn^9~TbIp}_GQs0@*Sl|sI`gdcKWL~tM$2I2LTpWoy819yCK^!#6!*Xk-X5Nnqx zwiB8=c8;+CcX8}_dZBIu1158B$1Yq_UtT10{Wi9-({^`CAP$HOxXYcdyUIG_ogI%{ zWyc>Re%Q8}P zzG?*c=n4lOsWOYF1vzh*`bK9xs+k%+IC3~bRU@p!+ZaJ`?kq40Yo-%)cxKt+sQfoZ zDR{g#&gM>fuW=34UWIe7!Wp&T(yU?(q7B3fdZ)E<_*Drv?(|N6)Yp<@yn^0P<*a^ zF1j|4&?|z-gTMEIG5zlGk1jv!Qz831AGeL#ae!z+ZbX>Y%}x0_&Tz5!MVPL%ixH|S zMF9EdnRBsP$ute(3EzKjo*Wl}Z?mzr8o14k6yFDYxtv#xv3g*_X|9|z}x#|CUv(lW1 zAzxMk5ZFUT8kew5gT}k5#ksio;k~gnVTZOnNS}XUl^gM?^i^+pFh&U5)aFfN5b17i zGpTU}+jkv}RWlVcLfqdLFqhUH8E1!+pmVyM4o#A$=_FVk3d*j1Wem zdF+A1(Atpr;m#Y7OonF`$9K~6qe!gj_34nDCZ=XXfwV0wM{ut0cGDkx*JF_ABz2)d zxF?$|tvJdt0R`R^)q~O87^!k8HWXoHqu2rw1Bpg^eAQnjN-tA1K)MUJ`jcmHOtrA0 zfmbexO+oHi(TSQhR8ns9t!o=HW;v0F%@JI~$4jLg*SAbGnX9?E|BON*E}+RiKQBo7 z;FKi#G=$VSA;WY%yZHHgKx)CC6t5SUWuE*g%oLv?zOCG{i*`24v`I2^E16fyuaT|( zv%sL3GZa;IPL9!$pXsJ7&t^^X6wCbi-a!iQTp%4E+&TszQ&;CgBV1N8O zg@BwzVo(@j=N?`9+?)plPWcf-_vG9p&`v!ar-WH-k3lB48Hc=;KK;3?+*k%?ccZGv z*p+Q|!tz~pnK*Q5FOtmw4FuWu%NtS-p`4*nTB3N9TDg=rm^*v#ZF@Q-_PhK}CZ)&E z2C9-wCj?g;-y*%lG{lr1#D`0g+wT7T$`r~kRY~mB^-GI@YY&a%iBXb~h{`!DCa0Z{ z@@9Ca0Xe@#gJuJ%u*B;+4U#R$_OMtXK+0v*sN#g6oKzT7Hf=8T9EJXzmPvQKZqyn~ z`kwyT#Y{8cN94$PNLMCyJ$CtlGm{DzNS~bd>dIz#SnZSiZAz^`kl(e~rg~Y3AzWOv zaE&%Mhp>QP6>7LpI%Vjw+>r+i#RF^f6pc9InQCTos!fGvhr80*EVq`2Q59EXZQNm3 zsOSu+H8>{=`_K&HabXG zItS_FPhTbwRnx`QS^-jOi9pFa!doQUlQ6@CSwBwcy!E)MW8_6dqOW+h-*X4%6O;Sj$^XJ=Zb->B(QF&GxbLj?x76+y6(FSlp zbuAx*E)Ak?b(0}?i3@Nwlkd6|}EnE8E`Hi3b*&nH} zTm0^c33j@LfnxSx;zqH0A+S{-$6FKbWLs%_3sRdKY4P}E-0UWXfqfW+_Rla1ISo&w zGsnU6y{Rbul>r-EhDG2hp_&ZA>v~)kwHXe|kcojV@3aF-D|U$v6;l}|jEDK3F)0Tp z|1^;EuK=wA!{_}u24$rWo;?{7=24`)(|0|RHhSEXp>z|5$wRSJryBIEw5kL%Ur$j% zK;ayM!Nz3iyF`BiyXU=w9zle2<;zh7trmQaJ9oJV0)agYCPjnHE^B0yq)nGm$=Ga( z+}pq`Y!i}h{TOSv9MJv9kGojOTwl7D*4EdY*-o;YOY>8c>7fUX2WJ#r z6eco)QrXL+oYzitduk;9{eG#l-J}p!Dw%*j4Bp05%&?O|u|k8UUqSpkG>hZPFjQ_r zwGlT0b`HbX+tg_0z;s?aLrV@X<9k_Qm*>r7n9lckX{1QS(QziWy7We>SkxA(+kf%o9@2H)#`_3E>2#Wk%b&haDh>Q7qlj`6sV}he}YR)6eJr2RY8j#kIW*KMB zgnfLxcb;Q!BJw@KoTBN|3amy|GdV*SJwbJ4MH5J%j~I9*M1;)?(+P8-BF;`@rNPSP zL8>+rqvvY%LCp}&kqvgYcISIO?utt&%f~6>j?VZ%u(U$hPp7Lp>GJF%*JLf^&a11d zcv+35MfxL79-}&odcfq8`4pcSu%_G(kKaYPrjvCJdi!y`qSu4KXR!CNk>EmdET2T; zvpdn_g^yEG?M6WeDqy3ck0z{Y3Yo6!EsWOXv*U&%yu<8KQL($TprIK=YxyG9q!Q8sF|3AF*`44_zo{i;Svg!N)Gs->SFn72H zqs|6qlb4s7TffPaL+NvNa6m}+Jajtdq1;$mffS!)z*sv?Uf&3~XqTI+&yM-?FD!GD zET*|>cDP!e7riTC!(kqAmWfhjw`@`+63yOWaWloO8@su(dJ(r4%?Mw!2$1=vlOPqg ziRLsbl%k3WI1LEP2hLBC2${bT%Acv@IiMgl4mg7VCZC|6ny;;5$!ey@zfCU6ox|RR z_dhl>3GppdL2!1c6_A*{7Rs7OfjorO#@VS#?E5X@D->j)F{o&4XyE7(e2*VHk(O^P z=Zeil0tBYpi^?tWb>XOr>N=jk1BYc};bM)o!!^LeH!)b*tTUTto`60@FUwvrKgTZm zG7(4fps-L#zNsSNGF-oMSXyofw68@t%RZe98OnDA4^@!mVLWLiP)dLe=T;V8Ce};a zp6I3*c8cB-f_Esrti(u8PHvP7GL=#Vgml}@0LeEhiDFaX4^3Ed76-wHC=Dl}$yHGe z5BZF#{0a&$WYBqYl82z>gdX5)ytVv`Ni2^Q5T^7yq|wpGlOe~_WJU{rD>M_8!{PF; zt&ViT&dDY#{5&Qrhw1oy7c%YQxXS@%;n>W&Y|_J3pC%FVIljEn`!1exlwgYJc9dXlqXg5e zkN>qn|M0%>5<`;g2iBdwNk+$GE0-QOP_LWi#qNaD!KHLR*6)+;iL`cOD~R1GhKFse zGJwn*7%XatZ21e%uB7|VP1EJB&lLfffWJS;CWoQ)(i2MgY2eKnoA#@8kq!RY2M0mw zb28x{{ESrsKXeb8jbI`*-CS9>kyK5R>E})z1GW)r7)cW+@4I!cWQPv22+jN!R`rY zcVoYV@>M;mIR44$S)|4t2>OY1{o0KJ+sl&=g@g=v63Jco7td^*q;^Pxnbt~X8FR}p zL%a$198i_mZkm~e$j-4w`)nBUDCJ`JtG&JJOR%;JJ%(rzJQWkzeCeOAX{@F9m&@m4PM`p|cklS^r^d9!~hX0U{mH}~FzDW;90g+y9-(niW`6O)r+ zc4p2=(WDbev4F;6i4RE6{X25(!HE%NV^#ZcXLXCjQ{Alz3JrZt}!E=b% z{~I3qXK$mha!U{8D8by)<-hsnmww^z&#~$Ki(^is+*wEMMS?-8B*DKcK~EKLr@lgmJuixEbwgj!pstuJ93$3k!DM-w-LeZ&IoA`!2yJDj9Fe!rN+B z5r9%^ni2iYf`q*{E9RNa*>h=&piZ5T#*rJ3>JUttYROsHOelgIN+*MjHXj%g!Y6EQ zIY)(^Dne)l48mYcC%}vo`+XAVgp~_wuY(ccCSVW(w&Zw6Dv#+0l^sG*2K_l83R046wh>MvC+axR>Q)m6A( zJE)7tXRCXaX`B~M%ZDbhkclgiE{ON2PV9kldL+%SD#TC>Mj|jMN0)rwAB3GuOg}Xl zIhtUAT96G6$wfjx27_^JRhZd-6d$3;LJqPcsLLT)foYIqC8gNIqv5=|2sXwlye_jG z9E`@L4MD{LLJ#*WLW_P`>B)^nwu^E*S4_DVi}U079p4aMX!J#Si6fClgKjYoh~(tD z%dfbsE4dQxcq#fjE_%BI7vwK>;wwe}C&ZJ$M^c*?sZhxEP(Eh_Q^K?83dK%1@CLkVhviRLr&PF8jei=K%Lb@-4R=-g;h6ospR zx1K?#>`pLAh1^rPg2x_%C-OzdF}SQu%%|^B=gX&TrmU(z*>YFi1%=P-NpAw zF8i8Pq9Suw+~V~H40X#Ytlaz)qlm*BizESTQ)SI7^9$+C>3I5;r>^DR8DX@-?K!9I z984p57ac%0$lBD|Mg5kcPuzzEWSBncIoMq2@#!2eB#8H{&J4cc_M5%YV(ki3$>5X% zjuKMMPQ#vKBuCyqMk)k{kcAyl@mS&THyz9 zbW*8QRf|8XByq)Y;c4kchI6#S2?&-=hsATw|8y1y~ zEh^~sjZRt_?)+6AdX!*{3%5yp{fa(}OTX}U7dF=V-=WFgA^k1`lFBwSMh47?cL%89 zqrpWS6cqu*KpFUbz(pvDc#pN!=^k$iT}k z_vlLrE11j!L}0fk2??*ksX2?`=pzrO?PsXIu;kySI;<*%Se69@O!m%U}D_i)ST`OqLJD$p821tKbsI*+9QOc$27@H@m8Yh<4`B|Hc zGE0Rz&-XNIJ!1j_?rc$+HuQS)fLW9nMrRVYnvQkmUpgq*kjk${sd&P?GF-T`38tT) zU8=^AI#ao{842D%AoEk7SxKJ<>Qp5uczD3Qa*M3Ub++a+b!=u%AdpeJ$7B(&1cx*APLb@cK3rid6 zI4UdyRX`I!O&R_wu=IdCGUQP>LB(#@ND+8C0jWnojNPj@y|9G$edH07OT>Uk6fyiM zu>O?pLQcKMYqpO+5F>+oH!j1gK=NBs6>+eOFIb~889a}qceXh(w$LHo-A?l}^J$z) zrNJ9^w$^YF$S~0ieJD*5j8I|(S3RZzR>>CkLURUatAPs1e3mLChJKMu115`|t^r9n z(4eIgg3X_Yn0;=?JekE~$J5-|GijFw&3zKaL2oPO!nlh)pd#2_fIE`!$kCi2O>)o` zfQo6@+Xjy6rS5u%Yvq^(UKfiTVNMf*)rjMshrpRyst8X?X#2WOscf@xP=0Mt_S&lK zvP!EGj4K4LN^aTe8; zO_)1rb)!dOhjXwYlSK-cmghTC+phWi&EMViNB@+N7;9s5uzX;#F4cgavdYWrq7wvf z0rZKWh1Xt0C^6)7IlF6r45A4u6gCd_R(WkqGOR!(+W@VE@i>PX>tiGF9`}ZypYU(f zIe^Ew0g!L1R3!Ni($(%k`ehoD^T&?$i&ykt**~NB)J0NO-58s?NOHMyDlL=3hK6g@ zU5eC`VuZiDc0OAp~F!Q9g2PwDC}{k;eJ+k1axYz+8hZ<_=F ze1In3x^wxXm-(SNW-!^`U%+!8L>61R~xqZs;87y_LPuRb#16^D%Lw zb931QTJwhH@v+ecY+NKGzpgV#k1_>8IyeDN=TlgKS%h3-&N`JQHm^q zzC&R2{p)ZyVO6gJj6mDn?gc+kp%*0*B;R#{th@YOcBn1;TjG3jFbHErMGv9KQu3U+ zmmYmYRg_UyPCeGG&6@juIt|-IXBWGHrqOPu`NhRFdF&Vv-Y{)lznn&S?!?%3y3DmX zq%zr|+Mz8b_#VeZ%Lf?vhQN2bR9oE+$pi>x^9G5Dz}aC$^tQfN9TGKFONULx4Mrkd zr%LG9yl8N?crtME-K+u~l5iR%m4+T`BtT9%O~bd%IwQ#4yQvKhB+l7tBrH*K_q&{n z$s}Kk%v%J%6>E`Y>t0VSRmOl|gD_VR!E=RDdmL-brIFVG!g5~|;k}>NOM+ZZ%!XTM z0_D0{QG}H-kYJQDc{5^zZ0HT+qvq#^pGUtG$(|3{8iVla9M2Tjy@zL6c;)f=7FLsJ zmqUs!eyekb+67$3x7-Ww6Qcw8UwE}eCGDCh60myBP}*-kzY6c-5pwSFaV5!mJRDy( zzbsQs{`{6|GOL&9?k}K38)lVk?=hQbkAKY37t^XWRg?YTEe?*&yIb3}=_WPQBDv#D7 zI)Bu6fNX@|)|RdipmEpbJVP+Y_PNG-cQ6d~_Xi~T8jb*}udEm+r{~k`>ATa~@{QD6 z-$*MrIyAX%r}xfO)8{XfFgUx;ekWbL0?)A9<24Cl1gXJbJ2n9WuF>Z5CV%cCH77X| z$p%ycnXfzh7@hq$t` zo=%@RneIJv*SG!J$3J$IU~X}I{fd733;*ti7qXz(j`no3h^1gLVCWc)iI z3X1nj>_!K+w(wZRu=kA*xtPD)fyRe>bo=k}y#kyee-KcawGhFyrb@}12t|}I&pMd6 zL&Q!^*^HPaI1~Vd;)=f)79RF*1eBrb$b{w1MNm@NltF`hLwf8A3QQ{{oG`&`ns>eF z_31i0_kEzIgGsFVIj&tGqm>&gv6GIycX(BaqkH`HE>Nks&u!z!)nwNhH#Y}2M5-)F z;d|Y6_g(4JPhCw@*y0Eudi?rsjS)~|Zi@CP1>x)So0x>&K)Ghm{204q(RQs!uB~mv zF0@IdGT7;)g?ZI>66Y$?T2wE`Nbp;6%xg5Z_JMNxsM#t6pLZ@a)300)tyEft!0$5% zuC|zo_dQ;7z;1k-2HBy>1u1!#jlc?OKZD#FLG$wFFf9?>T}$=@H2eXF0rfN~NouS~ zQ}F=DXo4|`n}!YAF=aF3kR+yIy0k=aTbzaLE&{l->-TjhkkHTlJu&OvojTVu+=P{v zhjo62ow9|#*CQ(ltt!LZR0o83jN<{U966BaY**!#`&c6EDmUlY#@Q5Tgld8cuFegS ziZAE-gglw#U_1{YgU2XW=ggRVo-xMQ&os~NQ(f7>ThW@PkeP=Avd4kU_|U3Mg`b~~ z_}t}c)m|6RLutA_L>0Ik_0bzQ*3$o;?8CZWPNfL2-c)Y9vgNw{0{x~79+((Q%kU_lg9GaT z5nWbX(RR~tNRQ7(>M(uOgtW2RPs8}uJ7@%ZZ~#g^b=)`7=%`9^pp*2~PF{O?xeIqp;?CY+!UN@Q%8P5Fk~m%?D8_D0-h{~DZm~r& zQpW7tE+Lg&7Gsy-Ra{_0TikeJ&3T|x>HO;xgkN-~mCKORh;D2iA5~23P;-#-%bQ>1 z$5|#HI*)p4;tUA{;X-ef(E;1o-7w=tcnf%C02yvGpL1Spf^(2q6UCT()FA=V{uX;? z#wCIEk19Isr|1FF_)#-PRZr!vTosr>G<>=^kg&^_3u2y&Yb|kYA}~0#fC`-(W_29h?fMxRb`oyq{} zzq3t$hRSjklR1#ssoQ)SiV7O)c6TZL83^q~T2Ikl2+Gf|(^o zwZ}99*}KrL^6GuYj(_IjdVID`jD8@>IY(tOdHK5JHTkVcCMrSik(aGu=|Vm?H=9l# zKTgGdx*C~|wh!%>2{Mc3!q|Lyx9>JJa!ppCw~hdnL1Nln=)q`pi@0YBvlgerTG zp%S!)G`yKqhCp1xGy{^u!45YfL8QA$aG~Qr2+p`km2si~BB-oE>KkP2F9{DPem7=N zC=$;S&$|Z6tSMzykL3!)3ZQQ?Gg+AA{ENgz2mv7Bi$=`?nvNAM2R?<;hTZbQ^jx~{ z>|HTmEZZ$va ztME-g9~0A>UFN7Cw90e0xCR>}tFCU#Rwh;`1VgWhe9IhF)HL7FaA^jpOxf5RkD_U({D|;p1onbs;JU|9 zHU5lh#SM#cb+5T_P*g!SpDIVUO3ZU)@-R8Mud*RACnYNzH$3*kNZbp}36EJxh10fw zF9NslnVTEGY9y$dQs$_#tdMd72#LAL(N8sN7Y+fkh};i3(6cdNtzujQypzvq0JDzs zX2O4$v05^LJ-ysZYxa=klxgYnQWPi?P5FbDS2B@wyeEswD?i3WUD_(;rsYeQFQ*Ux z`mcc^Y#sa2zw}*?-=Yw6TfFU2g1JSP0R_-sm}ny4R53p~|O+~Up0O_JcvgDsJPnn zycl(=!ZMuKg^M(pE>6XS#|GrQK}b1jG&(Bd)e6L^gfRh86G_g^s*knQUdH1!3DumP zLgmuJ4O!l4X5l#RHO>0wex#MFYiVnB8xa69U8Th0j|N+NNc@jobPL|$%?s`HzyFty zrsWlFeJ~wGVb*0$yHq1HjC~*mwl<04F1WDcRA|Sj$Y%L-8hibw zi4S)MU7VXv?{x0HyqeW5fxa~6^n&O$_X`Y)ha|H-2#H9}C%qqCJ=Hhm4V6t1W*Cjg)gpEsdmy7@jvKe6QRo1y_ zFsZ~wO32r0I^eQAqepRp6rPFOYZF#9{M${8&6=^vk=(Ztmj9Go``iKdhp?Iur*6rv zk84$-P_6K}xXkqv8f-BY^plq$_qBWpPR~#7Z^g)NRx>XPk1r$o!vNM3k>JmzdceZ* zx#vFgST0?@nC?A&N`C2Y-J%e4TfFU2g1H5k;n|<~zFN1t^T!?83l$oCfX=#hdYf2= zz(l=`l{6r@^}+BruCMXEk=7xnH?JeDT!u&n)9-E!33yt~XZXWzaFsXCekphEc0WsS z8vBDlClGE?{oFt@yU))-@v(Vfa1yXfm1MDty6FN*3nV98hYbJ*a(A%8Au+5fdvyc> z8wseu^8-RFZZ?yPvtm>c9mf*n?8y@$P&j_#RESrdCOP748*WCs>J5hSL@~IEU8h)n z>80gN7;pL@?>!OT_r~gVDjR&n82B~Iu(eT584LNS(3ib9lNMG=`!)(+EIIDju)Kp{tB(N-n+8hDp38AXwVJ9Vo%1Dor!FaLr?ileVjl2GPo z0-T_dX#tZdM;02Z6P+jIW|#)*w<5t9LPpTH@{xOReT{qmTlJu@V~fOVlTBFb^BFNQ zmV@IIZiLJ{)QT#igvCnOEGyMAbafN%yxD-88$9Jt=g-VK#a`nrX5M`K$_>8S{{-0jL=Z$OTlu{j&GeMWX%8I2V?{8K#g@P=qy_ct? z*ve!nK7YDi+w^h$hyVPm=?gEum>zoKjep|rfA8O%y9Ht9ws^~<1ak{616CN{g8pWa z7=`@OQLz<*2)k!)hB`se8{X1hh{9klQNMzu_r}#ud@rL?S_9AD+(JpF%?UgIfeyD; z7!JtdhI108pZb{l?he!d#4UghCkX96!A@E10V*l`Y;dcuTm5v~ zH<&Ki1cD1^VZQSW7wz_Q--6YP(9gsa6%SR8yL;En$e_nr6+*u?G2`GUj-ea#cpQbW zPt{>1Vx_3aR^CO@+4C>^YDy@_=iD<{;X19*`Cq611(#*iO4}TR#-lk9XJ{yTQ6R8| zu;ytJJxAl~v|Njj9}2e#)?`Xs9RA)UXx6A?>X6$?(sk07FA@%Xse&-57w}DVuj?4C zXu_$NB^>4%0FiplO2u9oObxW9$!TyfZUqXC&d*{VACMb2bMnce6qR=2*;c@9Ru|!d z&1bWtblJgW!eaKjL}hFuyZP-c=w_>8N52~l&MV9}!?Vb0Aqz`PD$&5nu{(KF8MO&B zJo4T=;6hD;xFVQqy zKx8+aCUW&tLW};sPo=ucYybKuKdC1x8;ji^z6D|Cws^}U71^tN8J_>izcmeH@z)(E zEAc(L*UxZ6v73r{AgXbYmX1~rQwvy0Ta(F|3B0;?*c}0pF@t_>g(gLmU%C>zVH}0& zRdF;%B@`2q-DQcXOT>m0Gn1+|qWOF8-44*jHr3ODzD(SJ#4&Dg5)9KWuW^(3*jWR+ zSbG6s*s-pH%x>*6xmdM?IH0&u-G{11Gw7b103PG-AOG2Zk-qv5KAGzGy*Flv&;Wy6 z^a>Lv@t-2Ox*OFA+Hr}DX2+=_4(LuemvcC*L(z%gP4Bl zNML(NOsc{(dSEesoq!m}#!bISC8cU?$W%}zrJL(pF+QLTbW&&BL3?73V6nr`m(v!C zEPdX#SZ6JHqJ(+@kH0#c#^8Ka6hAgDJqU&Q#WLo;QU>lN^!Tmow+*D?eG zG?9;L)XDE!r0jbaW+C<6SYTm7K8A#m;7N4CKsE?!zi*&bXpteV zY#XC0&*W+R6oMM3va)(`qv42xP#Xe!W#~}*`)pya^fww&BkE`6n9!mdmGA(I&UiO4 z`FIoz1RWQG0D?S^Gr2^s4xhU&>n{SPa6_6TB=sItz^s}3h@kFq^LQ(fHrLT>6dxce zJU0~;p;DeCaOP%5;r&29QKtf&GL=Lh?qnD*HW(=Ew9%lB=}wP-h?@OoBV?!-+pxvI$+c|amU9(ivVH{MCe=yRBEDwQ4U ztfX^uVDzVthcMuf@w7rffxxUz_}1>m9e*SM{$ve8EoHNy_NJw{kB}6|HGJ)fz~D2imz1_<-0B z_iAZjaUuP?pZGBIZRXSBiP=bW^?EDTQX*IazX?3$&2P2S1yZw*#Q8csL=KxYRZh=N zMi0!~+&qw33%q_IlCbZ!=i^Z4^?9tp)}-S670pGROC$GS6=wBf-DW?Lm4*$jM81Ho zj4^XatACZ=pGR;2sE=Pu{VPg_vsAi8!rG3;*pc*>2Nu)W(~|)K*0A;&BQfilmKpIZ zpwQCa>cin`CLWV*Ot19w5>2)SKp&ZtzscSz#m$SaRSE(8d1%|5IjdXjr{M{_avb9bIJ1csBrSiZ`OAV6JQ#}+}z`)`W8 zf{B+z>NwTtRxYY-kub#?9jEY(n7^L5EpK==a$>e6AxfVQ*mOZ%QSe+7#d}?wWf6{l z&WX@8G?hLyk*Ma!N{8S{gre=yAV@g=s8CQ&9&7heFxe2ot=2DkeJE{~FBt_z*Ug$k zGSs4|b@7BqEOqRdS`YULvRu=@>$*o;AX8|%q>$FdOX|BJkiy&Fen)VZDa6NSCp1BA z5W?3;CjC&!54$w{U?`N)QPHWWJuXFe4Jql-al&KD!RkC~%PWR{FU%^mqU!n`QMv4@ zPGuL*MRS2j?FEU2aE02(Q8$z;<~U(3<&gBu`ua!GJ#Tz_nm9V0&aLjHiQ`l0O?TXp ze(e{2Hhu0>pBFS-b0|(MvAU=~&s2Kby{E+ND*@j>EM=jh&kSZDr!k-qp&M=yT2pQc zShCwmYfM`}wSn$RIpFCSai#eujAhgqmOFf1UN3Nw$^At%YmCNdk<*~s9*Q1^tfIFI ziiB4r)U#)rpKr-gkSA=o<0hVR&;&X0&iBkqCMY&gdR#p~7g_Lzuy*`5=gNRAD?E$R zC9mXb3vMh}cX*sfNiS>=mSzR*v~qLS*Gu&_gJh069chkvgam z;mjS@)!!@Y>))s2f97QpH#f~?4i(JH^eA>4+yDFEpd_XQ6DXfRBSlg&dWjI4hT_hIu3ew7g<_4lua51kR-9`_E(oOsH@I`{foCl$ZJAY)T}~6u&YobAs-?5 zrHE*olM2`=Au&OBHKq|PUxXxZRqdRH#sLOPAh zZQ%Z(i{F$I+ma&e?Ngpb-b-`&oO-(~D%^L}aAd+*L!#S<3A#s0u3rgzsBt!g;u`3a zq7eh`x=?2$qI&tvmmg2J-F{SIEqa1L5hD+dB0?u%@xWl97EnOKc|-kIu;MrAS~)yo zE0jCnm;wo&N3X#>*vglnPc{GI9!dP=g*h>EqCc>N9K_Dyn zZjLW8^q#!$jp_S;^e>4HXINffZ+ff3BzllZvCQ;Ge)!L(Ga}3U_{Tn;8cPBe)EenS z-+p&GcI$+AyP#iD7!O((gfx~uIUSgQF%0lp2mm>(MiVxLMCDaQ&WW%boLbfrh7@C= zpj`00P#jnQJ7RW*@Dc=r+zgMjxE8go62PT4Ilq0qj8vCpKpP<^y zD=XsBQ-}~xNzW8=%YZ`bczL?P#~EnBQlnz1wR!hwe60CWo^MBr@Jnh_;mz?PUZvKh zguM=akFylgOHRlAl=cW*pU;>J3VktJ7FU-4_rCNLR!CaR^hGV$}gaFbS{NG zW<;M4v7|Z|$m@`Tk>Xiam%#2pc}p66kA%k8zIxWhruV=9waQf}K2P|Nkc@tl7{*$! zNg+jHUbMHxi)nIw2~WJ30bQe|PLUJSM-_^jP#^bId56knEzHYnQG#DEaQf?*!8g~r z5E3F3*3_KtK|k-12npsO0tIG$*BjrKKKy_BNqHyA3BiBWJDzry=cG(^UaJ0AcGIo5 z-jTllyWg$uqR*tE>ArOD>rT3nnYfURTBF{`J%DswBfl^}vQ^w8zAfe*|ATf71M=Kx z*|4=spMr<9lpyKzs>{K?}nMkI}gTKqdO|O%Ps-S{F*N+)G8z3$8J0Om^@9 z^gTjZ4zFoU31NA9zNg7b=xFk`2xKXRX-4rNrP73K5f z(Y^EfCC4lO8;2guOZ*HkeDrU>Wn*>czv|Pb5%Xar-L<3LLf6(IIDV`hdURkF$&%G( z3*yU&JCkh1pCHC<($tX;73V?!&mmjd zh^QAfUjsomI2P0{y2q{c`80WaQdYl&Opj9Hn~SQ(pELq&aAeFJU@NM$k8lwERU}B2 z8UOO{Kb*e({jX0WLe+KmsKQ@isi;hEIM)z!6*&W7$b`>mhYUr^s?IkdWxKJlB2Ve4 zSOKO@O|y;Xva~3sV=0+=ag#|f!V~~sn{yioYzevn)y#|vlz_dDx4F8!Y{p*t!F0>} z_@4jbZ%CVq0RXNpJkixFf@h01W@S;#%c{lLT1?xu^)!6TaC*m`_o|8?qD?(7-51Gt zU4USdiAlHAHwJITP2dE=AP1)bS?S@iQCR8(vkZ`73E6Fpm5O!@6}+yMB^Bj5CkIa% zVboAoJiC59bG(q6+y^K9^(@^eOt3}_85-X?50_!dblSA(fELGEH$sq1eXub{m&s^Q zMo4T`Yh_;S5;P)%>c@(V?|ZFftf3S&N&RsFFD9v5q3Bnq98)4@P)Y_R(WiZYtwXxf z%nTF^(-=R+_f-1LCm*U7?7!fyuU7C^ll^Af zz_`owGUYfcIQ>w>8~RSUmc?t zht7vEg1vW3ITdLCEqBNz;ZP|Q0Sb+P4T2w}6IS22tk2uO(uReJzn+kU=iTz;e=!~J)N5{{k>0>7ar9~;L2amj(x^g<}66)LJxyXg( zej*d<0rR@=_)t1}`#lnTN}4N{Z~iSpW~y-Al;^XpV%U~KWW5*>I}-8;HW&$%(^+4g z)%heqdlrU9zhT%AUX0{C$_MYH zH#ZeSfzZ9u$TBQ-C}0?`-ouE2;ejPX*la`JS&^cGxxm1Hob!m*&9T|c6Q+MpNlBj6 zx;mmN&8``c;<_E(xH;-HGkk8oF<|)U5-P6dchs*3&@@pH{XHLo4T z78}q8rYhT>T1FYM;YSqC7(H?##-c`Mqav{6-WPfEYFkg+``*!Ggq+cIY7s6O2UuiSi2J z%MG&d2_uCyX2g}lS&%G(5bH{}9y^ild+nX+b@$w!Za;NQn^(n`D5D$(q3dKruKu7x zQ$vFF4l14jd+&_GMi0#`rKc8G9IqE=iUuI~Eaa66wO}=(LuXDLQO(OZ+@6xV>Z?M0 zKO=tbzUN+ZdG+)SJNevHVxBM>p$|Gn2EvsQivR#I05JYLO!EZpxE`QU;4y z)&Ae}oW52086}7DE)@nt(zjWu3I6k3^nR}jF?NBD4-m48O4r@qVO8Yc7D;sk z42fSU#(`1M^yv4xJe;-pi=z7x70s%IXwRAp9swTo(Uw3$7;71iBCu0YcTxH7@6)l$&9U%3gRqV1x_|O;|V@_Kdg&S`ITcLL4P! zDk6E3O?gaGLMW#J<5f$H8C7( zXf)Ua7$CG(DKh24Tp#v=0JhLG1_lFNm;8!JEV<99MTz#>L0>}%ncU>E#`>A37cJoJ z=7juz!B>GKcc9Drzj9E~7{HJXxN1#|QJ>_DWIV_?csD^$ViqqrfLF-@hYIE;e2^lZ z{4?V!=A*`hWU3Ve3tfw`CB=fr(vlSmw3hmYCT&+igh@b>DDWTpp6^WWde671*ZdKM zTy#EK`^uUnT(l=4$T%bZE`bAmjbi@eX+n8|2=jF9F6zT5-aNm!;qV(mrX^uP7>&63 zj`Aea$Bw4j*o^7cy9u{|^3gcxEdqNnzX`1GN*k@JY1i2Jg!58ss;FOAc;m50FQz~K zC*P&dxo>)l1c%m+jz>Au`4Ufr&T<5JrO*~2 zhdH`x;vwogaFP+qfiU#DfAr6#p)*o^%FA@g``pGtrKZA`G)fOa7|K2f4+%$-2-h2` zKjAx0rst51xwmwFNtd)MkEEwIqTIugG{!pdr~;2rckO143a%m_bOHY>_ z#oe(?Ng{)xM;N#c!{ZE2EpiT6rMww5AJMD}kH|-%lu$AVOTJHJh9AAxq?Sd3;=4Zh z9q9-E*dJByr`;UylB!g>mQSg30L@b0!G^x)~*!Q+$Q8Bu5t3KOdF z7e%#y>Mgg5Yi!Ivv|;Ajcm*3u`r8tfAleWlStFIMRDtMy_ob6>d9Ut9?<U% z41|@XSq{M?1c`glf)`}bp4bmSKUqNbtF3_RPe6oG+XPW29t^D&^kepG@@0W?+Y?}+ z|Jdzfnm(4+uAECxf8|rDrqJQ;F+F4DXy|I`whahU3rw_rkVg^%v(X}h#Z1Qg& zDO2u~^CR~mkH$3mc*hi7p?N&!$dRyqj35KL%$Jx$rz24&frR5f=BbxPF8Y`-*@jSk z^uYn!Qh40pS~I#bj|cuTkaq}l?&IsSeLknYFMh^^mg&kF*^%qo^#_$q6=Bx)5_8D1 zc$ee^?Gfr36O|}EYeq(f|Mc?O@_#n1ln)imbuG0QckrYC=5LI4wRZlw(hgc&s;^Ki z9)&`9q#=?=!ZzD&|8EV=xm79sLcQr6e}6;h0TdDqlGVd7~7~4Sj5PK zRThdAD!V1Xz#_9jvvM&vl59JQz4jz{-umwMq!0b!52w?2+%CZ{6c!@FMS~K$R6a`x zbScT+gVn`3MXv$uwywYFi$YPRLpM%TLrGIhr=@7v>~u0Dz5k4QpDamPO)3GsF3mPE zt_1(266`t#A&7t+8W}g#6zh6Rd5P$f2t&b^6pRwP5-{uXWFAvH?K7NYHa{iXo*v%?qKl7CmKDUD+poEL;4VM}%&-o(Y^;_i26}_)ou@)*iW%j@+gy zf2I~8W@|mb4J7F6I^T|y|A7X?uqf0eyR!a~rPKtGBQnGn;03Lmvw}mZw6;P47_Em+ z$O;Tn(cmH@Bo>0a2v?xhhEr#c*_>twZ(V~hme(C&T2NioP|2ggTVb5`00^Vuxp>W> zI5T*~_kp+LJNEnzC|ouu1A<)MfFSF%nBX3FWVl(;LD|o>IjQ^Eh&5S>p`ZTD(=v9f zi9?|>YX%*>xP4rXvVyW<5ypi**zCcCo{uml`xgCc50S@Zqc1=>!EL5vdwTz(KKi@* zxjt9w`i6Yd9DS%@UV=w4KHUGSs*AjHtDz8$!ZZjMHaJ!p7PMEVJi;Lzg^kyn09PzgnCU%hJA`K>1D$kjwz2v3a4M82MQxmDHw;;LTn?nwK;}V z!1zc1?4L<*c;~x>W>SHo=`8|YYSR(Rkval6$q4tTCX}!q0;7p#sBy#hRhLygr`&-% z2NKo-y+bX7tn3p)1Vt^ta(Y_fvIP?Bg0qc`h%tG5#s`uAcJie!&xsbl|yWgS8`zfK7)}@GsrCdbsFQvDlV}K6txIk5v;{pbp zJabCOE*(c6hB^`8w^AlG#qC?Vhs`zdjOkiHXYnF7)tUg$t)X$jZcx|nTkm^|?Oda? z$di%b#&fig$-bm>Tp>u1&OBcOD00<#9A{}C$B|RxI6^fbuq4UHZ@*jNLEVqW1r-ho zgb?F)Q@wtqgif8gBmLH|{6{IfQ|T5pNUN!Ml}E)q?YKBn!kGLV;V*JSb{0syvu*-v z?)(YeA3gVwV`@F%+1QII!V-9GuyBJ;L&4Y!a?xr4Dew*rdDs0B^2PCReNG7%;T`z% z@PZ1Q-W~~VysP5lI;CC&g^!mQQ%KE`LUGFLmE^i-8s$XiPO(!ELaxbs4Q0yO2RR7e z80%bz>N)L*r>v>-{vV$?t1hi#p~worO4kbT`m{@gx=^HqKf}8+0yMv>oh=F< z`jKdJTo6aN?t=;=0Rts5%4URu!_*%Vawri)Nwt|>rEQBUXvvWh#H68-59^UQKNc1| zP9#42(!2h^2h#ig&<~1lYg*T!ST9?_M&Cr(g_luF^@^#Bu3vN^$4?zKr<$~%5NI?b6G{jIOL~hSY;_tuqanel zNe*vF!5mS;unjQEj!W;YEGVC&#C}uM`|b`Z1Y1jr-NLS{5 zXp@{-c!BB}V1-tMhHF|v0MkMws4 zBM^Q@my=r%ui05C+=a`_(GJ-3J3H>YiP8uu7U%4PIhmP}z~5EuuO;ig0XZg#aG#H8 zXeb{-Uf~I3!bUyE5ROFG6`0X6xF0gLpEk8N8oj&rAILA!E z`pvznxtCCm@$9P!d_T*4pW#(?u3C-@g%b*i{E#5%KT@x6|F7TN=w2D$KJ;L2;B!** zqW_L=CJh*DEhK`a*h0mmg6j1lrdU@SOHfX9O$Lev$fiDHoAk(%#)H^WVWFYE^ykng z4vX2Uj6F#Ozx%z=+ujx15%MA&0a{qwFuhHQ{P+H`KjEUpE=eu^BSZrdEIgN}ktssK zn+KssSVKbAs3UFqKJ^G7@m^P=z9m79_a%r}Se>~phZC`Z=t?=#8cI_%*ir!3#jt!g^TuP&fI?5aNAW?)ANEIU|in7hCDDV`fgW^_oUn8 zB`L$6ZhO-^6+V+NMR@D?HuN*Hlz9Nok;v030uo`u{Mbk*$AxU6wh7TkxQ2Qa$8I7_ z6!lM_3SolNSJqc0eI+=3Zh1AK9o*@Wya{g*p2UN!i+r=LT+y&XYIuz(8I&$Y0Qv>t zM=rv-EIcZ_EEiJBYL*8^IEoM$j1DxXGYhb->rfO3zVK{7mC-~@Mv&J*C zH`WCw$5Rb2K5{uFM75)}w4#vM&;R~8^Ptg4%x#Ttz$?78;)&#ZOy#`Mwjq>zfhb1< zvTRIb1%yEcVX4mdZ8~&JKUx5X z$y^IZaw_o~Mqmo%*3{c&Ma6pL1%L}Xfsf^*+zQROcA)IQ%Hw<5gC; z>6s$4Scz*j(^4)5lvz8J;&V{VA9W3M<{Z@p`uY@C?@?Yy-oXZ}0Vq#}om8b_SZS9O zDxD;eTRWkEv2n0u-z6l2OO|GsITPPv6~EmFJ+oNB#(< zH>P&EbLt1uqi$xfGQ(ZADIv9kVic5aP0iZO9IOyo*ETdepnSU1ZEt>y8n`rMGxs@z=ZKecl8WC*8(=IJ^QTI zL-f4q)%;19Z=x}ID@7VnW<823$mN)#%F7vYM3 z6j^Qs!E??sFOXm5IETEV024*WI*2|eIrrxfZ73p#y6{ForV;YPu)t%&YtyG*&*)Kd zF?me|{F!wY^)n77S{TQgiyTrM6R6AJ*<-FRUtUmqh8cOYD_RGleG#2MJYx{T!ng;r zk-8*8n!o$>W_ngs{pbSM)3i;29PZ2B>EudHN>axV9Y z0w2&?UDNZ_eM64%TK# zO+sD5S;mpQp~0!~^nHK&&xwai3IS`=f`WimreG9?vh4i0nJyTOfl>fY7ZczLi4PsLnamUO*JqJgpw4d zgk*h771q>pSW!w`NMXSp)&v?Wfq{^Ku+z-62z|Y`ry3ZnT@(yq6}B{a8#*2mS86I$ zsH}-{Hxp*~y&`J=A@g=clPz<%X`mDi_6YU{!Vh6^k#BklHvi9itra6f^{{pqVQl*Fj0e|Yv}XM+4G2Jd0!K$PfX8v zNFdI(1!u3T^WxmRNI~g1dP*$N3jee;p59GytZ4xKN_um-fTQRBD_RREItBt_5ha20 zL0IDnnf+PH*#0ZlJ#_orhfz*ZXA|wEBMjsa8pMu-BvDvdct(v1#k$dmtdr1=%@m3v zP+_I1nDaIoF~$!6Hb_8WJVU*`(xNyRPmxd`?{5ex69tMpX;uAsBG*LdSGgrqD{1X0 zM*~Fs(n>4+&LbCsh;^jr8A-)pd?bpEL zJKlS*(cU{$FxUMc{xki8WWyiC)7VwV#TxFrl8r2CV%JVw0te0UdOO(;3q=1HpvqUy zFQliRP!d`~nD7*a5<;8JM$h`Kb%Y4s1ag6dGI9z5Ai<+^P>ct675rh}_rpJuCQd1| z#3rT?kK#bAO00etua!^+Ar1tigaIx-RwLFVxegSQH)+&#`u%S>P+frz)OwQQsR~zD_#J>{vD8zMzooY++)HYX?xGiB5S)(MW zb)FURg6#-dHwdCl0urQ9UB#aWXL2W8fKUlu#YV5_Ry0pkulLIfsOh?dA}(LLX!tG# zf4f`qkU$)%fU;j~0&eUj;kv2wO=zO0?s`{x^N0Ve#;bdZX@cwK}N z0ixhJ+Ednoqzd2Ql=cgH8TO96aWw{;TWX{e$0yRFSRzo4gNg=lmaUc)sK`xehtPyM zLQ3M;qO~pU-_9=ySO~`U~bS87DDU~LAr;qaq?Xok+4Nc-8z;{E`iX4^C?ja z0Lo`W=&V&Go~c+@4wFEWtvkXP)QZ$p_z0&{FB=)lDMWs3Af2qP>rm&y=00-oo$0=B zdyhVnVjxVTYwYG+1);96ry~4dL{iS%a8>us%9a|m@q2k**mZn!1}9XI1pv}sxOOXCfJ}w0!dAb za!-8{%+%W~i9@Weuo@ww?~1=P=`fyOe@XQxBR|LDa?FW?{d*9%wli0P+A(F;a-~2tm}5 ze=`zLLbai}TatJ9vkp zVd0*k%2+FSa7GRU%-ITr%6~i!KE`Nad0~bSqA~>w3nF_wT02pj5}`Ebl?;gwpb0r3 zyd;!8AP^KHO}79Q7~kNvMK~;bMi#vMM7Ys;6?TslMpM9&r_axuS)1^h`y(k2h=&D3 zHvN?Fj>%5-s)pyYmp9TQ;w!Uf;BA3d9T4sED#G63=`8%8Psvo1_$8_DeUtZwNjGgg zc1l@{j&yvF=mH_j2r&lCJHmjh@uFZfPv3QeM9)oqnnMM110K)gzwkGE>RYWh!Ry5e z55zr%S5!&|Y?IIo+tK~Hi3AX~019hVjY1w07^CVz-%v%ltz0|`gte@0o!i#vpgbgg zw+r0#O)B-Ng5QF9S4gSv`OXie9u?`KaBOX5>)O$Bq+8CjSkC25W3L@cmE);}VT0zd zi~Gi-938%(cT2w%MvzTToT#TWw=Sh8o)S~AlGVMLG6v$zRe2rI!oV^xpmxOE16Aa% zycZO9*jaAnW0Y@-^Gk_ND<4x+E=7NDL8T+1xUR%Dp&VD$O9}T1@l}_g?Nj5j)up=g zPOE+EX+qWBYZAzHDKU^~iqc!4;qvt;Z!@BB*r;k|wg5!%97wKfj>hkKT^g0L1X&em zI>Lgox~1v6H16pmNA%2eJf0KDX@z9yH$$#%8^tXp(Onao%^@F0;L{MwM4`QIaxj*z zSlNLlbXX@7nRe5m5vdMPfI2B%gLxl4bvzxt|9(vmt%M1UE$iNw)1}8BN=p|Wmjcs0 z41*5iS;0J9D)0%h$?H;B(yg^gs51tOUMzdoWe7clEOS9#hhZbMBYYS45kfe7+Pnwy z0D~kOAvScZWMc6YcygSZLf`OYC?>`TaDzQ3`?FW%R7MDD!k;q7G_SbrL+Pofuee?J zQPo|sM_|Ub$E3MO;la`Xhkv*B+gzhB{mxSt!r1cQ9W?d1V}*BKk&F*7?S(v;>Tv}n z<}(s`;66}b`8-AOw2d<>?eJiV5{kT*dM#;fuF3e&YeJ^uX+7QZH$Vj4w5K>!FgM`Q zs7v5&>zmtWAX%h&SXh-PmkjO9aA1@0K}e|00ToBtz-)f1lSfBX=b_E9DdD`K&{M?5 zsU8pdemnywL+yw}VO&!lNK5Z4&!3K;Jd^Hy)7#Cs?BIhLX*qi+Jv%%I1Y25cG#y9M z+De=N9&Gsd2u~mP?Ijao*JH;j$7Bg zZ>jEQLJ9ZLBd6(yVU!agG79E)cj&~3?f~Eb#99ri}&K4He6e@k^;vR19|EQ_n2O(_;;j?_nvk-nrI(<` zOH~|Hzq3yvIUE|wrmd{(nug*EFRhcKiE~E4nbr&Bm3B1IVxV}J5Pkpl28f`W_7sN- z<_0_(A%FhbkP5#*07b{U2$^8HVW2uZ2H2E+z^*`mBgfee67t0D`v+C6JSIV;NWrLT zH#UdWa#q&+CI~Si8x-fEP;{o^wQzEZ=;#R#&)C~P_yJL}OgrgGhy#Jib)qX`)LiKcLMaZNa1P@Agq`%FAr+SS(CB2^p01}iz3mO@+^_#$T9Q&E zgo6dSsqfKb>^9YF3{r)!d<*%LO89YYwJIj*zI5VVJOzLmRJIe&(KFF~_6$!2fB{x#CHl8TFH;jL&GQ528~t?j>}q&> ztBbUMub?;uJERfh32y}Zc{KrQT<7*cbmZWv`lL2as!4sjiP}mB2NpU&{ zgaM{+*LejCSJDNMTGj-0AJqDTl(bugrZ5wrrnkx8=s(CZ8O(VB z{Jtm`!PzA1as|AcJ4Er+E55{GF4lYt6qjI<8QOLm-jVW5H1fXxe!ufj=nG=T2s1}=l;Xo)Sz@nkRa|Ow?LwQcSrU zQWi~lG}ALvQZix-P%Z^#fQ7YInpf`RmSZX^Bz(k11woeKt%M(4=qX`DjSTZTC_%L& zB^P{9SnyHk*MKVwB`rbTl5p#nz@1hTv2NYN4obWwN*{^|buYDnaij4lmLxO=IVT|} zNFq@xo*ROorc?1OX6E2d2*nUwYnKo_R`}s8=I2jN3gyK!2UVsqtFvVb0d(}Fd&2Z7 z^oCbRD9FqVLJD^2Iox{p>(kdCctY>3raL9T`X;1+@E)P=p?(Qg0?jcUCQI(2T`z)& zwuO!0D^TR{c6i|p^La6hijs-2X;i33M@xP>+uHqw@aVERv;wl% zetp9VyS>tz{r+ya_WhC)&}*0^?&83yuFov@z+0< zRuJZzg8=~ong zrjMtGo_#7!Doi$|+(frIyaM@$vVfbe6jK`Mh8LSXRGu}44X>b<3FQ|d+w8>}X_j*) zc)MmE$oZL^+%KLF-(_vMKFhg>PzvZ1)^n5mpmSWRTcTSfzhxARjQ6Dlg*=}SfY(h z8)uAt(fPa+1&C&UK?PKlOn5Mz`Z543$B!KguTgE1zDeGR!eg+|5q82??2*rIvz$%;js;c z!GQU0ZEaY=3@E>_E|08xm%Plb;HWBU)SPVWiWPbASlV8BQXm2WAM_rc$rkw!TZK@> zOW@~wLm1-y@P33~f|qJ-9i$Pt27QMp5Xw_yK@ruZ}68hme&zrnyD2ZtxyCvT(lZHeY# zQE+MN9q-rwj=CahD_KVaf|G*?>!&_Pd8sEJQ~lSfKo~<5OG=TuJf~Y>)e#vI5pv|5 zz?V^qE(DbT|Ma0S%q({d@mf`kPj$z z_K*yZk)77as8EIq_Psh^hYIE!e6COb`@emcWY0hDQ|$$u?*T>BCM8*mlCUsFsRT{G zl@GjPT4~YZmUy)UCTz-3wYwPqTiUPQu#yvv3>paD^z zoVn|@wm$JJN^u+CEg_Q9OC*cG2-~z3Nj^6rfmZ&u)rjEL5A^7gaY5QB$nM^* z`i3Zs*V3k$78>haqJ;s;_3wWD6RF`oGrKBw6i`M`({-^Q6K?8LXk>d&!muG&u5My` zMJx2Lu3`H8>^-1W zfXE_5$;(i%hqp&4lKfRugrjf!{_jp*3Xk>ZJ{y`-M|&iU116>Chd_6D69Gryr=W)- zzveWzL!oeD1v)Ici^lsX5Qi5noOx~m9>6MZK|P~mphq)wog4!ShXO_$9+6CUv1cwB zjGUR26W5fW9uc1%?TRm`HfDNO&rc^Cof3_V^BlA@P-qXD85=Ahx=5vDq?l!0k;<8J zh0r7GCn9B8NCtSMp{VEuko)wAeBlC4D8fulg;6^fq&2wMH z(|94&*tNt!Cxl!=peSYTIa_nS`PggSgwKq^2~UuHR_!@MV>waYf8KC{K)Xi5Is`$$B$Rvt0w)d*>iOV>vXO>hF)~epMqX2| ztJ)POM;H<+BGjhM^d0YeYZ@FHNdNKIep}W1>q<&LDY_HrU!sfWwuGS=!%~mDvbx*% z(#ccFUU?!+T zz-Z_q+@>UYJ47M@2WpUG9iCzo%%7|FUHRuRxrT}2P++<_$-PbNJ}WMVv-E7Y)PPQE z(-uF16_10T9DlPH%)hs2V5TvxOPF7tQ{k%E3gBLIcS`36f{F;)PaeuhLg2j_UI?R8h_^xqSnZP973clA=Z)C0Jp*Sa`#p4!QP6VDNW?$uA$KFl`FKzbK+b8 zF31z1{0EeKdHSgZ0|G|iypxv&$N{zp_7Y*_mRfH|-yuP&rI2JUB*6pHuRSqq<;qFP z*F@`r{jZ`>!W+LjH2HdvWszqI_%lx#Y@JI6nCGmOOIR!-;$fhb$N_)yUA(_d8DJA* z<5Do|GN6V(yt=kAMEb*-s{F-TKGK>N!mh`HH-it=86ERF9_?diQ%lysPbUsz}qlmjzz27Y_m8NoxABJk+ z9lKH}7%B4$D}G++N5FL}%XA18?TldI_Jo*=ygo|qEyA!U1Hw>dg0pqaItUO#c)tk4 zqG(W_jDZ=%2na^uFh;6*2;ldIsl($!KOw?^bne6yV4vvU>< z4kD47AX-#N8-gh7MltbV)MMItGMq5#%nf!*l!14`|~9?KqPr> zWdxZOTd1~DQ0Y(uN*Kd3@2m28L?pB(WnfH9Oy&^V?t5>*sBYR*9C|R<`Dh;gcYmj6 zWp(>6kBkZJ!g`THp!%AU5p#uM6)SdD7gaovFnWVfGeJ)g1Q?wRse53f_CnpUwU*YD z+^?%58G%VmnI+5S$I>%>i;Xon!y*r`rwxYEa_B|}-*(TvMmHe@>}q&{=P(FEL}*xP zgxg-iW=7%GF|#RjMSd|2~R5`xQd3QRatC9KyTBegld=SRn|?6xv33Dl6Xs%@oMpI;>yiUatrjH5jfnE&l^I1TP(!1*WFg_$as3)`#(ropS+4- zWe$%g!k0WhURbDdl>|;$Q}eS`C-{L)V`*d2lTUESixHq$%xW9}4@cRUbIwVK4WYuk z=VDuYEqjBm#E-&D5Nh^uHU9egikSj{g%b+h6^xhhD3T~ay``MiN_y)2MJYhqTa)h) z4NhITDy^*nRr#Z|3(zDGT!hM^VVLhNd#J3(s85mNgnq{V4i8qJM2iUos@`|UM(BWy z5VlIzD=QmpbLaMS{#@nWrF`MGHVEG>xgRStd3=lyud6N%GT?b6zX#_XJ!i-jDZis< z&S-nI$a)2G85TP6%1&SU(#3fzFypv1cifUulUI3Fb1=^rDysqls>%O@rz@Y?B+K56 ztx7x-|D8(!v`6q}X$@KmOUpPMJkW{5=nUnqLekd_)<#d(TWc4uQxv@-4nI^d*ZG)a zSp87f@Zh*R(ejfJ@m@G6@^naLzbex zR)@MhEU~CQ4lCOm({f2d(P*GZ6hnYWt_Y!ka$&Rx^j(EBhV>62Zqtwy#4#a!wk61) zIrRzr>v^#8P91}D6{EN zfdDiy8{#RWP|se8d(I0<1`0i)D=g<WL@P zlVX}4Q)0YNmJNMSpo<5MXi`b69Z#z$d8D9G>4X3s=G6Zo#9f5zH57u8c@2&-o^^ab z64H@V0Ilaj%zS(ysSLv=#-3)X0!T1%flCZg0(NpS5!tQYe* zq+^WG!vhjJ4mup(ThV&@?MFlgOYRSW&e%Ox3<>_e`bMrQnc}$@1MA>7UKA*Rhn%lf z!kdLilk>%1VpktD@bbL+qA~A-YLHj2*Tp5_I9MFLzkfU&H-T0BIDGA!HHqh~U?L>#8uo9!z+4 zV#uX7A}qqN`Xcs>@a`2^>BX;yfseY1P1tObL!H)Y<&3 z6t#r=kOcA-6*faHxRCKtSly_>6gre2rnc^h*)ijo)r>5F)|C+0WZbH^PPXdR)^KP-c_@VW>Xk z62_(YYontkwWR7lJVs6if27( z0m=gJ!jIVZO}H_V^SSU6Wx|j1a1nwEVcN0S18@OCEEJkOCuW;_T3f%Tkl;BwkrH%6d+XJ`%UX|`n&-*! zx7YDOZ>Ac)DoXRkD4321(-CjQXme8EB(#JdW4?;P!fxUns6cF*L8P!w5iE8wn(0@fz<2UZTr%yVy%A1eZ8k8l^&@6K7E z4D_4~$dGU#d9|O3P5et67o=m_Q=s=Y5LTeG&nsC9kv7}%0WsAbfFpsQTN2W z^^2arSFH))%W-wOF4M2v)$q__YO*kBXH@v}s=#p{}(C~~X zoHRWuDiz(}5c3SmN&=TcTp{OxhAi{E=7Z*Ju;xrUA1ZUK5 zg!<}_H3e|7&eMc6C>b2!Ue2%qrR)AdV&~hJ;4yp z9Mphr;{odL5qb1L?VGGOeRUIxAgyTFxgi&2JlFD8UT8aaLVO(%Oj-Lc77)<(Sh6Q~ z@S5!$r{^>nH{5yEiZMcxJR6$jnQ^_V`%uBW(1Uw5fBxhz{ltgs>pMR+pv_HxkQO~P zB&eJawkM#41ZR{B(`oRYjN3JpFbI{lhzT~Ms+5`GJsBkCarRgAf# zd=6A%C=t%hJ>z|#U&LQwZptEp=L^{-d5Twy0$ z>Oq&%E|7GQED33aE|lYFDzw?7e9-8Lku-ISguFbHZh0Jgx*mcOj|tQika9dA0|M*` zQHMk_U!KjTdfG^N@JJePgpD6ny^`8S=avoK&N=DZcu9J%1x=8Y2(*%uQ1aARB}$&7gK1c>t2G%S<1$>>&8L^CqKdaApc6rn<zjr$Ld*xXIq<{jXN}dFa8sh$p+Y z+WN;M3bjzw*ws?64>-gq`~o(dE1}(@gb1MHc?-Q068e4Vl;)$dc@2fnU(4G|5^|B!^_CFP=q2BdJ* zV|{#B&9?-a7?x*v?(#~S8d8BNIRwyWROO@8ffCD`8pLzayfgO*T@vF^%nXRC|LCoE zTM;-JjF8I7d~bUjma_UK*lGd*3@J=R#dw!O7;Y7e1&+mTIhyAbA>!bczKpevB1P!R zv)xe*&#r1Zh*WM%aRN`JnOY0ZGv(<_LaGm&xLJChdupCl=wg_8+GEqF29zG|+4yKr znvvnLveuiH<>jGZ75s~VJ3+7TlN4W*mf8x>7S94tlUx8^3*k+jLqGRd|3|5dTkEp^y5xDV0VoJ#xnRE%Zzeq9kd$78X;@9H{Mtk5 zt6x4V6qI84TAXZRDy(OYOs028sl5H2-F^OY&M6>xG#AV2V=_qmzHeMY2+s{KuTMZ_K~#0t zzwjr&JN@EEK9v?$RwU2~FUkv{hrMzaElIS?OG0t!IwZ6k8qX%)fZ?6c_y_SPmUX{8 zEb=vdcug=d)8}44C*p zKR<6iLCErb3Q$39nUY3hhJ#C9#;!mfv^RDsl=24v0~*WoYQY?zw+x*IlFnSJo~KJ5 zkBfA926)NTJ!N_q;q3rV)TDT4j*X-dd3+1=8|ow~>sR+XM1LAWa-gdmrj4+d??dwy z$|a~^c>XT-gT)!;L)}kS%7#lA4h9M@o@)qC&yu|mw}c@?s)gf_7hVmXxD{QX^-vPd z_Z7<>$4+15TJwu*?o`=S_fDfHWsIR5T_>a$UMj0cr7!NE1LDvgjcS0VR7kqABH%@q z?bq72SMzMDo=eG>RF5l)=UV42pM{~;IkJSr%6Z$Kzr8;8SpZ{rKjcFwYVO_rVFV1S z_1E66wehPj=K8OsV-6L}HJ;XkKlfK&yV(U3m@4M5fyY6&2E$R~VgYr^B zc9-gUSvOeb{O9n5EWjRBHt$h*CcpqKiYaQl?XJEwK0PS}+oJwHNtuBJW;A)S5^$ja z3IoJb31Q@7LH^DbVQgHxJ?(_INiDO|iQibLp*#a!6rljWG7!tX-rG#iLdYrH!`wle zB6hK~BPA#`;_m}3237PIf8;~ylb?GaefEowsqJll8ttQ9vcfP5^VFLw>Dc6CT2|<6 zOhT5aBAFdEJ<1;d0j3s2V zTqJ0Bl}L9rk*}?%><|_+WVPaNK;jv+FF|ezxT8m*H$pxw)yzQaPdj6N00?xe0BC1h zX>74X_o$r#E>sj-;_+du$Z*j!r3ka8XO0)Qw6Y|&XI)Ff=mCbTxdp;LEYECI4BLHz zEB9VmS05f-4-Pe&l1X6~y`g4eP}5&L zcSW=ro9Rs_6n3$Y?@DiZ&s){E<^7`9Kj|i3SZyTtZ6&gWfqPP)f!9I89f8h&NEuO< zSg_d=m2g9-($ZH+=Z1RR4^193tQju|#8^8#h8JY0X;|%%;LixN?3uI^le}-?5*8P~ zOQJI3@Cc3!AJQPLxU8EZ-fx&MeLFNwj?ojAA>719lj3us9;1iCq(K<5H=P=tO5Za) zq&_$U>7g$_lIC`YWtmH1>mFpVr`Z(>G6{F}rOWfnX%eNO6NMKAicW=;BSLUVI1NdG zp}0tLM<_$N2MNu7CFhNT!@tUww+(NF>&Oq7b1a95K((3R6Q!B+3a;^S1%42d`k7@} zwq&01fEMXnQdx830^a^-6EQ{=2&Qzj5fn zT;mz7tgZZ`zMlRMtuC&=Wmm2NF@2zh7P8t{MujNlLT$^oP)`WNXz-*qzDvu7?w**L zRxUwQi2Qftht0p2&-7wJ0w9ICSo{d3CLcDA<&2kEL1}y;QeoI@%)tPLv!AxN~V(nk_A2bwE3ao}dO(n50VR}=TUJd`x9WYUcj*#wWRJYuejP`r zNJH*eLmKC*H1?`IDZUqt=mOTwBMT*w6YY403g;NaVI)+9y+VkRXNhKX_Hwf2?m2UK ztkCNN{J;nhLFF^EX5H?G-NN^P7fMJuiYy7+0Ss||jI{zk9pDYIUTE%AzKg?MhG?6_e!e%{<=4~%>$gilw4i(Hb z9@ks`!cQ;g*R_#{6(YL*{^RN7op+|w_r6x`gO3<-21L^kAdoXzNV`r2PsZ=lZ(W-+Tan(p zcuOQvS+Pdkpm?;=`JOE2l}i`X*zwa2ry&Qe1w-}+)&{1y5*MR z>FFmgrYE0#I;}4)rg5RnjtJ7crZCwt0U}VrGn0Y`%e*~0L+uFc01CCpvhRj^MdzeG z1%~E9S%^n&y-OZpz^UyTYE01B$J|I!DxB3)Vdu7>#o3gPuu$aC!@Du8Hv}j@cq+l5 zoS6`S*%BT?8JcSj$`D96^ZZ*s;mxTsT`+We6$oP`z;_g0YpyJ$XCHnv{qCnfFJaW3 z#znzDC=?tDqMdZ-ctO>%{t?{px{Zn&=HAoOVpVPl1fkHH=5YYaSS$*D-Y_m0CJg_k za#$eAw6@SYCSb+$$+@Qp0Y&TNNQ=mWkjE6=8^c|T+L#EPhL_R_3lXx7&W?CQc#*{5 z_R{LgURqd^XD=m!XK4nAoWo#EaDUYP^Pj&XFVRX5`XKEq42DS|0qqT!;?T;zJ(yp) znzwQ=6vo%D_FnNmt|k@^Dxi|^KNxl^D6%jd!$2FPl?D+9DH8)JF!uBr*CPTU#WUWs zH$AYpx`37Qs(BqMm>2OVKloE0{iqK6=zsXz-`y)T>EGRI4gBcV!pfQTl?&?2qV~Xw zH;gI2G9_;XBu}>(hNn)SPWPNSnPyJhlE$WH1jQZFB2%pdT?Zxo%?HeeA@r7s2203= z1ZoSYr>ppp0AY1oQJCw>Zixj0NHcOQU9whtL^-l{`C=MS(<*mwbj}2Z-N5{pSJ^21 zE_s%N?tLNe+rOzo&=f+beMKB&vHQ}I+ zuiHh!e`3_ix!Z+#0bK_E?Mi&|Gc*e$F>cFQ218BWiTSv~yCclCW5$L^egkjD;x5l3 za&U1DD=VSfOm=B&AB0t~5j)40>4RK@BQK~aUa{qcE9v}WkEBPQJ(sp5uun*#j*iF( zq10Up(|I^@PSE-=-{j{|bcDB1tSZvI<2XuoH=Vt_nkH03HLNQ4V(H^J;%(Q3)>{zu z4fPjB0NRT{;B#O0=^Qcxpiztp9-9?&UOv@Iey;`MVEJX#U|Vp<+-(aniLn5Hg`6dn zGebiP8ET(6xz8HcoDV9m#9E>rW*DeB1*lf+yuX`HO^!xrk>g*$gSi$Wtn7oTQYs!t z`QG(;GTd=zZ3&l+JZmUqqcx)UcTw~J&!hestg(9F3Xoy9UsPre%W?T{CYD$T3%xfza!W2S| z?WkaJN1-z5JhfZaTBYbu)@qlkr=dR&;SkEEcpvUR(+-mb)jjVyS!)t0PL9;D8|3f^ zeL-T?-$=Wsy|3u-0(`5*dE&&Jm-3LnYq7*uGa zw|mje)%N58Vfl+vBj(W{0j^rW2H|;`0!Hi!9ubyxR)&4@emoS{2a(UBm`^Sgo1XDP z4X+Sc^z2cni6TiMmz8M82Tv6m9nl05>D+BD5@Hv zL7fVa0tJ^eM)Uiy98f5#Gi?i=JUJ#Lp>j?XoW_FO|GHX2-ZN&eIqviMzEk!>@jRY$ zV1DD^HQ2K~M*c-qAR@pKcJ@1X$GV4I&u{o>yqvp&i9^5HXM_efRNULu=+UN5uPUhW zp$GGPtLYl=|CxXOTgd#M_~{?}!2fOd&Y6#oH&)+x+w0z*1}2ZV=3!iUgdr7&4N0-| zyGI8nLl}h`sd^9&haot?#v6GPd6M!n{}loqq2SO+O@(+<_7>c)L`mypCFbj&>~j1oQ5dr_2GiogP*>{=GWb55jpta;ywEnaV_42=yEOa^LU z==@7q!TuY?N+DyuCZCgs!K@GZ|C|pXgg`YsG$I<)=#iN;AY>PHFodvL(3}wd(}qU) z)^ZX%lGzag3@<7+y4wNkI5u)S#6yvvjs?C;U{=q?Twh z4QOnD_?YtrfD-@YpOpUhI)N5viDqp# z=vBOoqBu%;>{`mGT-xi}9@&2HrErhgXe02aaZ{GyXafo#1w;;)JgUJcs=v~|H!i4^ zMOW>uI{za#==N@k(;O<8Z{jih*iZk?+`s)>Km6w2zLURs;?BE2xC8yZ61Xts_R1rH8CJH#5z%CezniuuqqvPV?k<@Y?u3$5 zGa|?=N%-NZBWcH74%rZ)7W_ZLMU~`i5z4l@Jf=X9p%^WM@D`lMi5izcq`?V>#}f)A zLM9m?!1#R*>$tXJjr$H#Oe|k3KF$S_$^CK(`$2W0xswnFfyUf4#mly_x+KW)R+{M5 zJ<+d4C+~ArIbp|O7T{$sC--vML*e9c%{zS;aZg~dO!*C4G2Bmv^YBa5? z4rf8_5c+yX>T>Fbu$Pua3A3)eStRCBT-1(<7f#ouCklj|TiP!a8?qMGWkmGJOC{G5 z`8*-#H1C5bYI%!ev?gE8-qUsN+k;`Vs%KNsUmx~9+9pp#^in8WLe;p7- zY(&+AQ4b`ernkTMJ^ISeUH7$a;x8O3m~Zmo{PBPIulGLvum0g@M<%8}h->WH0xcw9 zr^M#HNu57IN+8%nc<=%g;05SK7#66u9w|vQydMbf`Y&LV*!)HA(jo^8yS*{pHj)A#P^~i*_Uzn2ayt%9D<}B z-$uxTyh5oE%E_LOyJ-6S)PxXTlR~996c5W#aOQ$m0GiLPFZbbN*(yd2^)8*Oqv?R{Dqf)#JYf|X?Zve zdx}PZMaVR~9jfwmKD3u+a_-8i*BtAw0cy}Zd3fpiDmfReE3A0dGoE{&yfq>KK(u}T zJSS7#fWjOSxo25xA-v1$VCd@L-`CpW)qG0{2VSp82<5f^TlS9F`q|4V`<0_YK?kag z{ZaCu>H_=5Q%BB>UYI+l)%WUn9V(a`@Eivx#*g(8+MxyoSSePnyC8;Th_WdC+DQfk zYA3uHhdO{1w^2>R*`etVrQ~(1MHpx+?`7pB!dpQ|S)s`5;S(pV5k(gKM4%L!QHE zg&QFl@&p`Y&rD;-t8u7?!RtC8eO)7>0@m$b!Iov+)|B9H(sWD~@aod4`r!;IH#4U5 zVVBD)*KY$O^y4Bwnst#-*Bte53?WCxZBH$lgi#dPC3F=Y%C^ScqdpyDswo;!V!3a8 zO2wMuA`=Kcwk;oszNqV7hmu;tmUtSH>*Wh;(7ay5F!?#7yFhA=XQ^-PV*loBF0Q6n^` z`JtGU`!pnk+IPqKe>16r!UTnaPU>|I#e(>;2{oBuK6d%bTKxhkMjF-Zo29+OjF=Y0Bqn`~$ zzY#*^IpG7&UggZ7cz_m_0x5F0O>TSfhp`o7zV#4Kl_+;n`@?H3sDIY@px` zYc>oec+K3&la>vGZgnv#0#tYEGX_6i#ap==@~iDhSKNz(?^V5>t0|^xXl>uW@#bO# zv0t+X$lZqN=*?nKtyrYELG-o=7$ZDvbTLrAq&09XxUJ zl%x;so~fgN|136XJ3N38v*8+{Ca%R;BUccLrMfB0cgyCpasZZVvcnj!Lo3C@$(wIa zh$9pL=&N(*J0=Q6z2TJ*nWB0!`^{P+0;&N#Z;ZLGnR%N#e zVp0CBRkcl)GHXc?>@c{{-? zFGO@8S;5eb7y+NdT6k3%9!%oj`7QDl8cTpT0Ivny+hH;$6k%@SP4W}bjnXwFp8v?K zINziE%cRCPHYZvcg&|E$X-%PZVZ$H{kv`C7mXaYF57t2uw&ForndRqMT{q6lp$sH6 zHx!nGae+V}1Q)Dt!hCMHrFp0GEAxZLLdQ+mD7+W&H1$64Y5wL?FeYrbbZrPPJ1BUM zkylmdm(cS;Me#x&%?l}+_QfjyD09^&zC7?*QF!Ir{C2Wm&y?RN6o_$A=yl~6fihD| zCvd~S{NnsuHJ@+Q`u*!OQ#1cUE!Y3i%BEW3z5-u|3g!kpG!ZMVv}-^JC4pY@MnnU^ zFQ%}WEHwJrvpHF8#J=5=10kHlH6X-LKvoX69eYiZkb=@=55S1H<&LsxzJZrurPtEY;9-$r}o; zD**w7-r87Qv~}D)04<9YhTz7wo>4X+yT~Vz$l#pvhz2H(ikAPBDESp;W=q>e-OTzypC2M~Z}83-u`^-%)U8Y;fEXixyO! z1iCyN-U{UqO4~x*&km46gfJO9-`(Lpv^EHDIWH%ycd+z0tE6M$p9_SSS*~Cw(D(38 z04&@qYMBSmErYVwM*u+rQC1T9geO@mRammAei(z_XDvqV&&hE9v%=|wWa*Ve8vnw1 z&6Sm(5MZ>iz?eV*>0VK?QOz!8>%Z|@6++X!L4`wD7sceI2!f0dqmJv>e8N*!6yU*a zTlGv{jKVnRnUppC&4>e!A$v<@JZ<1a4oR2&kHNqzlzhxF^8jcD8h@I$N(r478RkD2 z8XNwg6!afoSY259X2$oe`0k;CxdF4TO5=@o@nH@X5q>gdyz?HBOa@Ix0^a!;L_>!1 zvXQ(H$wTOUTmN}MRxP3OZ+^oj3_q7eOf@lVVS|$rZ376K*wV!6Wc@4O&=AA%(B!lg zA9*7SwTR^zI$Ux@u?aI&*?T7+8_}8ewcFkc!iK9>LK0!+#+ZukvNuE6izXoY-}F(1 zq{toU+vG;tp$C|uH6D7|mv+x?&rFSlLNU%sAndZBBg9mblHPzeN6==H_6>mn#>OVo zu4rU-jdThHwW~bK;MABpiK@>FN|^pEBwY0@fGvyOS(|-H-V78nYL2~n#qawb6mDz? z@wBNPJ%hT3Euph$S6own8`3R!uO#*H4J?51o~$I~fzfjwW@th}x_1;`Y1&mFuFMP1 z1J9A~Y=hK;{ef<&+=6Dv@K+PC7RYPB%Zp&++BGMUA!Zfxftr+!_IIf;xRoa56?emb z&oQ(a$jSDSd@f4P75TbgtS`bm9Rq{)*K4$27!|BFsmQdXaNL!JRh<*KLT zm*j--k$dBNEkS|F`tPRykYup)g&1tQ2S9f1g?E*GTQ#^2uEDD*kg8I8 zJ~2=Yy;b*L+;XhceTG)vM)7f0z&4n|1N9t(F4a9Y6f*UaM8O!cEpG;xeBNBlC`z}# zfA>3w$47ovAeA4OTb>Qg^a^<$DwrGapcL*{k0Qj7yhTJBEkx2f*J0S2C7h*XGx7LN zVHeh2A+Zc}6US6vRzO~~RF+52b?0?JCpp%OLJI*D++iSeXo^MNBiB0^!K1&SlqXD) znOw_t3iPzSX~>6o!ysS+I$FR1cEucj?szNvm0=b-j+p_oj{Vp^UVraM5}W(X)-m@H zY{SkwU@zkY5@TT#1BM{HWA6MA)`a4Eh{N)x4^I#8;$f?&;y7cZrx7RC@- znmI?z$2HgifFd(rjDsd%61o&kZqun$H7y%rMIhw3C%A93p)i`1U7x(1W?lW{H&@k< z=X_dJ$IIgrcvCc4qxe!nU%v@+Id7ps@eHC-mjomnY*{%(e#W>rEAa>`22UJt<|a%5 z2qf1~s3YePu=gHQr?k{)4#g4*DT6gwTPU>*ACC@`c)q~J={vHMPEHP_^P+5l-FjQ$ znE{0&Svy8@`7uTKj8?`x)-W8x7%25vB`j7Dj9w3*gF~%^ z%Uq1h-{c&re^OXTbIe+%^#KojP|vBkCpK!+$|#&9rH&T_FaWSa$n=h2uPTzVj;r27 zHAGca7G;g!fbHKtg`*K!sd$tXLo0%hVE|a6Yuz?!UF|+kx!6_r&vQrfdUrXjthJyu zrO@N|4vr5012u;IJ2!I7FZH<&70eBoVL2)d@{VR17Pr(k3k~bkFkL4vgn?&a1=@%3 zQ*eNJ6~@Lkj5m0$SYU2TY#~wN>9J`G0;~uun|XLk#IPM&Lq<~{k`wP5NROLJK@Ae2 z4w8~vH1Sf1hu*@bq+u}Rc(?@ysts*oO{`Zd&1|O@Z-LFjzw<^iZA$D~ZwxF_(~$61 z_Fw{_maRI1DOtep!2#m1P83YKUI(FD!hQM^-wwnTd|viuOp-`=Dmny8ja!-SsGkfR zU4$qp9Nd$~cIlZXO)oQY`~C7-jyli6zzm+y4@HyE+?yfU1(H%Ysri z0qlT^9&d&*hPSmPfk`gSiEq46DI4Z+n-&8)_kiZSu0qRx@u@Xc;XbNvqOcDSYW=c? zs5dPFyd5%b3-;{)TDUXcUQGTS!G(^OXJPL>*D;ccIJlakDB(dXUO%#9phnG=d}N6kSqLq9zcHZIs82f~Re|D0KRI|K_cy@A${ho`32U zQ|*7KU~YhdkvLg(vXn5BS4KhC@K5-%$ZxQ@f*g_0vCg2@Hu5RUPc^?QQ zUgRolZKFgGpeQ9v>?lO!->~2E>U~T=P2wLB(`^+fOPRMK$81kI>zLwK#)UtRlLv5L0P<|9q zLP=sO81s@*lVf1FY5iRcD<#!bSaExKK~Uuj=__A-C_OITu#-nd%@>Bp;@lZID%u%i z&9|-p=s!a^6Vk?p!fFM*1+#Ln7svcrxLBV94j_aCggLn60>&N6#Y&n&(`*>nd-E}& z&_bX^4$eGixiY^d4`Nyj6Dul!+=5I~9*px-j29(?2dM7_OgWPOJU?gI>K%-f)Ttfx|o)pP#!fiZb6gr_Jj0h;~%e;AA zYVk)Z@VUyMY~fHgmA&T=@&@9!|JR8yRYSYqkQfLz&(8_vQu0|=PWrF3E-2?NEZ#d9 zPcEqCx#!%cC!6Ui3NVbj5;4dy{yz1O`JZ*4z?rDWRH*#2qruv=-_(J;1V^0g1FqV!EBc$O-Q)kIBc{-y*W^pi;O$KS;O)~FA@w!No zXM_Tp5~=!~CzJ zWQrkE3PD52cV5*{SvB`^(0jRB$n9Dp!hU-mPgP-6y})=zvESn{1IRx~A+a2eE&V6(>c@q_`DTf~LrrN9kaeZD9I*3=Pk0~s> z<^2d7#pfkI6df|d0`>iaf-}8+_LT6nG(YBFL*Lk14Mk4;9=^3+HnPp@2t(0}rKM08 z9?gX6TR^StsU8M_?9PvPFH$fq_tKFNr05W1AXmmWMRU?zm`!UJ&$&;_6AwL>R_crC z))W1L{;Kn)X!nPdJnt98dT4A=MW7OZhVxoxB1+oAq2^{qOTn5oRtMs2&^KELTN<^CvxKPStO2C04l5bsHkMlUs+BY!u`^tg`A6X zDE1a(T@_EYC`RVf%FeK6d1{(d^bFi=4?eS?E}Zg)^*67#s87 zHX=|gQc@@v@(<9)G{iRspu%1sJ$vjuGZ*A1LMR`66{D+!#4OD7UO9MdQ3SDm_U93= zB@Q~*=onGu9DdrBu`!>;_^O8CI$^o+?u*i~w_?ve#^gqA-q(3?Xg^E|m}782tMM~; zp1R}KCoep;ey#D|44)k;m>cjEl#raO_0&GUz1{t;*hCTv-sG`ZBG{0 zZ_~VijJgYv=>H+0e07I42nQm0^)EVAX6rgoPK5ZvqDP2@f|J#}2e%X5;FKhlA~DrY zea%)m$|bxLg^EP)(u5pT^NVLkhzKu$Icm($rSlIym@Yo~P^!09(ve$+)7?`l#uVNB z2ry<4VOGoZDCCvNx%H~#k97i>u7xpxrtspQ`faW)RT zlI6Q(Q?*IxI_Zr{NDclL3-mx3ae=UoIa^p=MHsYUx4frM-9gbF+Cj@PyuD(XhA_1) z-5z@s_yLB9V{haJQaZ=bbYKy3qAxko+4zKxke<= zfrQy8D1^E`3krLpei)uF@-Qt?q_7+aJrR=+2J4Phi}8Wi5=uI9WF_B4jZ45P!V(TD zm+)wLvIz6=Msx%@6rPtqiFG+TQcG(BENr$EdQ!sKU;*Yb3q4on$C8P)X-ojuqNYW? zWmIhX*+(y@3+j(G4lNGX#R|tj$-om(dKfh%@NtZ({lHV@c>vLcORk~#n&?qdUC72@ zau!GiIJh?nw@2tx^)P}&H`LE2a#YXtVyfXOAR!f<@*Iz6-#WX-{y*s5R6RxS2ahB6 zUF_-DFSIJ~9*(=nd%}ypt?U?|BVO&j6X#+*hhZ4c*R2mUuOmWyGJkk^HeCABUw-Rr zU;i^-eE4ghy8$BXB|F8Tg1JFcd*WR`^mEVt_RsyT{;sY!G_^u{p(x3;Bt>ABOIa*r zw3say1g4YbosDCm!Di1ni%4ka#hR1kd?%1R+1fN>DB}IRO#kn~$YS|c7I=A=8V!2I zkR*n$i~1SzJcO}OCj6E#DQwT|+z6iqLZ>9Cz4N`%;wSp8M|`<>F=4%1V%egOS5{Qz zuPhm2#NM5;eaSmyD{&90PMrlxMW6O`t0G#B+we>nH-QG=y#NNf`XtEZ$*ic){g5j2 z8)7g(4mi&tq*9A|86DeH_-tJYW#jT$F=DUCLm5odZ$6d=hlM1Q_td9)nudh-ZcB{6 zLOIz}wBW`A4dGxEp*t4R(ulj> zK}F6aLS<1@S=v3|<=I2^eB_x06_$Zc6!H}yfy1Gigvs&Iw5a->0a4S?W*cA!CQ3{9 zgR-(S=`{%y8;=9-GNGTk`qF0~xs=W>hzwNsWI%)RTdPveBPxs>Qf>#d6vdMWd)B0j zSMgePJXP$2csshlfO0DV=MOQB^6@j&x<%3KqO`JSxb?t*dAIHFIHIbE*M5sSxY#xxFu-1 zp|GGnMFfwo3n$l-6OOS_7<(u~{`UFv0NTnV3q)TJ%ekU(_9JL_MN8IuGyx)?Pr5yUjo>OBe{K?x(S+#$Hc9CgBJ@M<~!HEXwNP zva5p3O@+g{_g2!0TSPxIGO6&FzQ>ds>4i{-5g?M(C?sk(wsm2wN<1Kkmq-TzK*&hB z2G5O?u@|n#+U;^IGke24dDdz z-Z;0(HYA=99bQl_^fTa3!d?7%T^n1b_8-9;6C%!-J)I*wnMl}2o=n0YNU^T*sRu8m z$1bWtmO@&ReTEGa${W!98*(fJ7>K;^_-${F5U^dCYj4^YQY_`$2iMv`&*;T^I_*83_j+}7)x1sh-{smR4C(KLCFOO@ zFA9mtLyc%YO$DVW1KfMD76f_TZocCOKJfm(`YXTliGOwj#n=r!)uDp9fzx@*dw=+s z&;8E-=hHo{-goahsubZ7=N~M-bEqn>rGkx*Fj_V{v4|rsVe1pUVsw}VcKFY1!m=<+ zoSDzrq@`a6$!gB&CS)9sZJL1rom)oW1U0^yb7er&)XJR&so{|~vm^Qy!(ZKsIFH|; z1Z%Izm6TXN?R`-iQdUtv6LmSxC0Qu~f6WD@yobVIFr1(9R$kSRM}*?4p~bMacTp%B zw~0FujVKOKQH+7pa(;(@gx-_Fn0?~Wv~*z!k*j)3y(h#MAd8*7jdbGlL>ieqZN>va z5GWueCY*mlI5uf8rXo!Dtg#TTD%c1Oy5+C(8VFXD9LZ^9Mw=c7;UDP+&pGo!Crh^{ zz>C39$cj54s<}SN&xfjR72LUKHzq39K!g&l2v8?&BLsmiFF@Xi!>Ue=G8#W})LBxe$g&Oqd;G7=y_bNIOj=hD|uE-Xzckp?+D3Ay8CB+b{o^RhcDoUu6BP-+QzJPScUSYCno=@zI4+nm@L)y?d`)qzKI!7bFV)s+ifAN-mo%DO@TcVhc<$ftGY4T z7EQKBZJ63xj@kw%uL&1n1!p(e-{(IIv?$W@v8+?B59$W$6NDaA^h&N`U6RNLJU+HUI^k07%ujAH(Q<#UWl-l zvpJRz)VB4S40B|7*vf@{M79J00gb5;h9b0Qn#L#^bAo_}a1__QV*p;P-x0IxJGTdRgcwV+j@lJFv zR^|?c1^d8uh9*ZH3ur#&yqFvPV6l3lvVlS9js7Z58W-<2izh4FTwj$Z*Md4c-|&t? zzUDfUP&Zb<1#RYar*WYw7dLRJlo!#xjnZ}kLN$jQNmgq>TYIXi*S)E}=)PO0(x)H4 z61-~iknGIjwV-gaa)bH?xIQb7u~VoyNY_dm5Ih?~zTt_45+Oue)^{M#9GDc?JIK3|{zdBTgqv;Qjl*K;L`!FsVl5z42q zD6mJ#9}bH(+-rxNr{-fz>#!&)l>gk7`P96vsb^OEQ@Y}B-(XR8Lr!<-!Q7B(+<%fY z@BLH%vff<(Jn?96J`h8)bZvc@;v-9AHUI&hqD-$aLh zfbmn}`sIDBUzCx9Q=r;t=2g8O0*^{|c{eaUBOs~RccNK>aAQeT*|N}iK{1XHXaAtU z0zw;nU(!cvhM$`E5W2sNnBmL@BIXX5b3YnTLY_&^P zJ&cuv3mTa#gezVjUSP~MAtzVQYjba{D|AR+0|cK&Ry82`V^(J2q%)B zEF!`lIWA7<<)Ho5W>n3`xNapwgP}A(nD8$iLRs8Spyz~g@gN9^uuw@BTL_Z8cXvr` zVueN`R-aK@>c6tSD6XxUz<`2IE`aekpMj9eVT-8Y zh|Ogwhu4usf^#$oKLk>_hYX8~S;{kI%aNb#&-mXt4-sx(_8fGb5<2sJ0FkA;B?1i| zGI9gaA=JZk&WaFGkY8Fs`1+xcL5)H8Lb!tP6JK&(A?L-a;lC2b3U`7qW^jiAt2RXp z-WNFx8vzkY<^HhTnJdGNc{V2BiWw>}Vi#`aP*D3iI-*eax1TvTMFO9E5Z5!zH*A2u(r_j|6yy`}t5mL~Rn& zFC(O(`J^X|30~oLld?nsl8dq7q5EJut(;-2(D#6LQ>oAWQ48ao3yK@Vh}jX~1qHic z==IfKR}YCjzdCw}w*B*;HV-AdqR7j|nhP)m28U6AGUiC^2Qt*LhxW5$9*bAy3uzun z{LjzL9edgD=S5!d(1UrA6Lr0Z-Tj?^{$ERQ{=O|m;pD1m}(i94QF z!aoR|$m4LV7a`VaCN^y6JnZR&wa;cXi6c1xorm|Gc+UACCkM6hQBwXqdrBxD{o(wB zYdP>{)>qTU$|7RRmNwR8w}b~pq)4g=w}dsuYhTW(gp2$>;-~-$u&(1L!atdhiQ^II z&hJF$Nw+ybY2n3je^|s8`Y|tfO(=+J6D%tr1a!_<*^AP9v`eljR7Pv%4Rv?il%;OI zFUGBFil7wmr#|c%I4F_^aUeCF& z35A;|PZ)y>hh0#{*o}4ws1%?M=7QB&KZI-1+wnYVYCr9sGI|D=MWpE(oBVn)xt4>+ zRK1C-h0mTZTvpxx)#SWYe_sFb{12Ln@y%eP&Y$JI5zix(Zsaus)WA9@g|x1j!n^mr zjeKT#;rY%j%&WoM#?>!c9rU;8--in3C7gIAJpT^NwGLZ^sEja=77IcKK~5;eyit{8 zxWim5svHt39srB0C@6%IS&9iO5uPG9L)_ZdHUb!m8eOd-kc+ZHQH4bfD{oHvOCY$e z!?g7~3LB{iP~%(I0^ZtKwOjAL93-1bq*pdfH5||eHRRA(QI2I3mfyD0E6S-<;g|3m zC^3&8K@Zuc5oth@&6#2)%8!w4$hvIZJ9?8ha(ExqUIY~h;j*ETaZ%q-N$_Dc7Oy3g zu7g<)LFO=@W~o=nXOi1k@Igu%0;Rtw7hur20=~19a+~Aqfm!^wLz?|%XuD;Nme5*b` zR4^~$%-{9FKlSnc-o1b02nRyhVWv{)9$_TM-Ai5}hddB)wqy|KIl&uzRK>ClMPqi| z9Dk3#-|;t=;y#Zjqfbn??yyYoIu#4q3t77zk08hg*$n}krEmR`s@j_(C$xYiyyv__ zgwl%TYQcbTv{e>@FHmi$)Yx3%wZw1d1+tJe@(H1-<6KN>ZzdzvidD<~$$PM8lZC7m z4IZ97pYW1=ekU?G895I90J%n3$}+4C4yQrYxr|R9ml-`QfCI#gC{9tsL!m=xjqiX$ zv$o=Qcy9$6I6N{EwIx{WSxG?UQL6hb#IrIk%B3iGKWpm<&5_$nl2^i7r%f&e8v8sR z4$AwSYZq@aiY=p_tdpOKFf#iV=7SP3@Y2=~;Jr~%O#XS*ASPE1t0$|0@eZVlMJov@mniBK zJqi$Jxl6Dd({<9I1bc%K0x1I1*ThQC&&|gcRLvmo?D?!$_h!pOaJQ3?fxv!zhzkd(}V=3z(c z(e*L;2^ee0+SB)+xUeQ6&zy$=6vUEYof8J5AQFSgs5t%Gz2+&Tq`4hN4Rk~d!k!nQ zvzQ}MEctt^M+7GxPV`pd*`a{84W-800v>)av~@LaB$Qs%55?Rd>atSH`48qHT7YNZ zjA!P#uX6sYhtFbvay>UzvjG{Js+uop{~P_1FTr~TYh;6nIYar_Amf=iBpOpppCF&t zUk-*2+D$jK{x&zZ&OOi2zvXWqCi!26M{w`={JC%Y>M#HEk1Gi92M{c5;y?>wvD*Ui zA0ezGSK&S+Rw9|~4uR%n7w}K)eTRv#aIB3wIQznNRd}r0mQtIZCE%-tVkV%Fgxavk z5zw(o*v?@^_oTJO1zV)YZ@WuS-F|&H5OJndw}z_1vU+lo%};kmUijG{=wjFD@IE~SQ; zMj+4QM4@wUW*d-jx93(Y+4g;OjEWL+406)!`B_=!?=ruxljwL;kPl5wC}Mom0foc{^`$Y*7vZy!;eL5{UFj=N&AXDn2cyKxHjr^< z^VWZE2QAib5RcHC)Wjd=^@%bB-i=`*p;(tU+$WAW)*ux8E2@E7l}D1)qo99`}xjO!N-`TP}EsO*F14awzo6Uxu} zWuKBNVR6=Ad2vqW36Hr?&scM(wyihk>(GOFnV!oVKKz%zOVa08sjJ`z#bV3WN~Mq* z1{{{Z1F{+-*K)_u&uIGPpB!?dJEIBla!3SEo9`B@FsSF_Jqi$M=EQrTsoqhe z(%iI5vd=O0mNptm-#zF*I8NhQQ9kC}lTSDYLI|m!mdk`ca>&dcm4pS`tc2hS)YyGx z^5(_z#tUIHW7$T{PYIuOKm*~)gr{R6kp(zf%YxTR5w9RZY@NR&ycS9ZjRAw%U{rLeLH#p11^=!@Vi0xJ}AK&JyNz;8Um zpqGhUSrkiJgP5~S&sfiNM)f}cCqSdGs0}m1d`!ya^gwTV*Dd4eJ@-wgTTYByaXcXg zgi8vac`opzFf90O_XWxufdudZkc=U$rvn@}57A{mi`ig0-OPIVkSi^=z$R`x1F5Jkm0IS~Y6 z{6t6y#S=nF8=2z4tT<32{2S%KzfmlBRiJ{Xm$$N^n%lntr|RFtd-eD7!d$v^_Nnlm zBv>GRbgsk6aZ8+b$jfkF8nH3%97+n$h?)w30^Cd77Yx7U75Ckl=eBUL*XO~uJq6#d zk#(6dz%F8-=-gJgg!(d=!bwvr3}Da?#GN0Bg? ze$jR8;swC&E4VCBV`yU>>dT3C=b@~;qM=ztGYIqH)kOHv#HKkk!g)(*EG*OrbA_Vm zkcCFrB~W9$qQJBiU@8zN{HvZL?S-BT#D3l+RXS0`btK(3r5-m!I;YP2;Q3|cL83VseRCY?;@|nXI}fD4Ync_> z-mr6WaSXY^HYuy;MEq^!^GNc$b|}2tPSI9zLEYbUL;j@lujSQ}L(b1-anwOv}~ z;-FIE*pA@tgc_^!ceV4`V9C}?gfojJvw!aW-MpTwV~BIc8fa5IL6k~J*mYpBpP9Sj z=`x|5V{&rRwKAtq9tT+Q$koPoGrV`GU|!~@aPRm2*xzq%*KZvf?EMMRj(kCdimOra z9SQalhi6z(sD=WP6|7B3VH=wbD;k9pECK9boEzmA4E+=$heR-f3SkC9M*_jk#Xe+qRv2)6|beOWU{qaat(pBi#(5& zpT`$W#=B}iYG!CY&>Rd-oJy0&?v~;lPEGZ$-%`V|%{8$tBkYPW;aL#Up|!LA?LtVD zhoRIlPep0)IpLqCggL0ZZNYxc02P#(1_~% z;`x+tn#Go(+9f0u+uS{2^qsm2Dw(eV%uFy+@D8&2PO@2T{L+b7b*INevF zr|C*7nun(^uR7loe0SNFK%u&NH@pofh};fZ-f^^Q4#t59`G%(&g@xo2G98S+3zr(} zH|necs+>bc8DTarQqCM9ex4m`>*JccIh0WGZYmZ`mi`?j6S8LS6pS|@BZ?FNQ4xtZSbFkmS4-a!N--5}1 z+aLeyNMITU{lm}y!vE4Y*gtTW8aTaM0`pB0NVm7PcTYEWTSo*{9`9=H3_&O2kb+{` zEHcOAS#0cWqpf6FN+|%trSVhbGKq`Fq9hi?UlHnwm5!2WZ+0zGH#M^mjw4Jym<5$9 zAP@vxPuHf|)RlAR)W>7ef`smb#Lv64GUUAAhD>G829zEeR1+zy9YQwHi16Eg=VWdc zQjwUCfPREo01=Y$%^UP~v>5Y{#FCsqL@ zpj|3hZ0NZzEN!Uim{_B=u=>>B<%&9bo|zmx}dO;yW z)|k9EfC!vZ%BNonp$~K(&a3`&!!VS$AOg_L5H=g6;g||pd&QgpV1)Z4Khvu<1CJZe zB8(UEIYETU*_?-SQa{3w>v-i38RvDuQ?SA)-beX&2{(4aWYw@z=R28ZD8uDrvBi4J z|7bsl_Gj%wvSC*~$ciP_bG+$gofS6B@JZxP!d&)084JI&aOaza>#Ky-7-R8-Jl<>(TFE#Mm91EN5pmDan+22= z-<4b)5VP|1VA>Nw=AJ@=%X3$(6bFXreUj<&nMXmKcMW9AaBPISy^Co06`l<-bcjSr zA2@!MLq)!F+aqDDr9E*$A{B)Zp+u|BP_$W+1>~4|o&Z}Ijb<}BG6QC1a1N%Rm6ShH z_eqW#SIg%fRp|H1d)ZRB?;W>`r)^rbLR6It4!kE2N1wd9rRCl9)yHQQB8^6CusIZC zgzlpD0CUwnh6c3#y_%arCG&UXx#9U?5G1t%z|t5HH4l(m1_*6G<17Y3zrIuE0Yz0v zFB?*fD;t5}%a3f|u8oj!L1uQ8YzZY+4|WtcmQ?;u)(8jWKq#e9HZLap=Hv1=e8#*M z;yHwpC?J=TM=OSdjUCLvtlX;4-4sQ5gFau7j82O3=(Ts=lTM#HlP=F*{@nvZzp4H_ zR4_NytR!qgkCD4N)__S{18bT+P&pnRL~Tb?0r z(kvWYc&L8|Cs&}oI9Y)QTL{KY>1`AZIVHiFhh~J*kr3`1mJr@hexYCRX87CIQRC1GJ;JQ@%|<$QWJ32wZcbnZDU*8?8oO;~Bn=Mrsi;=>r(*}C zoHpxS=@Sn=o1Rf+KQQ<}nT67h%KmtTk_c}V1ydt&ukrMY4VdsM;|Y*S3F(Ehr=zAK;(jx0(MFKt<5n`_kLWTD@7GV=2+0z2N1HC=>yr}(t2y8tN=>I<5qY}s5* zb8$8sHytHZ{k!TxRgIyTmzXE7%WNoJO@WlLme6OO()O>I2UaJB3r3kS6>8z#NKce!jq4c8+kg14>-9$Uo`-{uh7nAMb7N{q>pY=`?fvM4FmD zn)-zDvVf*Kn3onO@$nFBAsM2JVGc7`=n^i=*ckrq3Bk$nZVKh_OrYCnAhoi%qR_}- z8XF(;wVd8)^>w6-Vl9=llpn%TiEH} zhRmWYvJfx*RNPV^wx|VLOhEi!8~z!?veMz)e7C<_s4;}C=B!6VgFAaF#OzgbEXJu@ zZ7G)l7ZhHK5p>F9n8}!P=rT=tF%D%hf2u7hbo8ZKy*%y$LGB2z{qxfnaD+xs$X3Ku zR&~NaHWYY1jNRamC}3>A+zk@%t1Au369XnpW3raIm7bbV0V)Z3os&>j_s&*&VxgIS z^Wn?s*`;-PBcQ&>ndqj(trx;Gpwi(d$MYdMJwopi*qC)~8zmYKXfo!RkQ})9uLmJ0nK`0P!v5wqn^NChicae0eh1U1z+(B#{K4Jqv3Hk2js zBy<);8_wn(7#R*~mgtL^5pM{=pmw(~VN(+_V3TJd6Pq~a3w-Jb1%)?LEYF;?;aI&7 z^wmfs@+>ylLuXViOim9vjrWUyAf#4=hE;(#KZvl%WjSTToFK?8tVMCsKdf{FO|sM@ zMgp!c3*7acOC9#X_&`-Nbwp#Z%@f z6h;6w2#=Y4fqJ1F(k$01gqLM5_teQqYGia&q@7$(XBXR7 z`sl+e>GRL1Z;sB5favd2F2)iPVXXPf?7t{<@-8vAe z6iom$m;m$@B$$SSlY2pddJTq%CeOt)T)|89+6%~a^|fE{AM`ZhNai8dQUFCzHl4Yl zNnWXksj7%_l~7tm=of{ye-v4nU=R^8u$dOWxev}ytBEjb_OH=cgP`nGXJrrC@$LNG zI6g8_Ud3rxt-EhMal+4PZEttw6Q6(J!GmMDnf^XhFgMfF_y))F^FRIrcU?Ju_6K%l z*>_0*?or660lkEbKYgqk{XB#j-_&yh3QghHoK z-@sC4p|c?o6#Px)d=~ar1}GvFMozk3ytI%`oK!z{73FblHVKsXRAIX}iqTNT+Kcx~ z7$de}Y;FtQth^8|kpzvc8qQ1zn%KM9qO+%!HzWU+wO(vPJT6XJ;@u_uW`$=Dz#qFd zh(tff0go+$Ke)_fp(9@eWrfLTr>wsA?y;jEyaLYCD;RJ^OgWid zLN+Dz2t?N%E#v0eil@}z6hTB09*1vP)PkM(lul`Bi!6<3}l)^Y#1Lv>Ot+X zUi46<^kGr9DHH`b9akVvZZ&5SYXjvQ#F6cAnTtZRap90~34Mh(9-euoak5t**AJz? zUnvwN5&NW*J2Bvb;#M!s;2yMrwmtn-(GN;)VLR=Nxm*&^gajJ_Am&VeSP?E5ZKI)OkG~CkAvaAAf7$?+ASc{Iq zqei^BgP1WkTnKEpLJoNxykYsA?XXMU$Uy@V$`U9z8`iv7D5l~u;YH-rS8Gp5zz<|wZrT58|)z#w#mIsJF$3}b8lh4ej!6#?ao9;W2 zE?imHJa0>2$(t3bYh0&#YGFHl{81?vX^kFP+=c__dL|RnZ!1VHuL@Kd%2U`GCNpbo1 zF=ZY*d6Jl;SUceb$2AIkK0L@W-&H`xzFZ6IY@dhSS+CXO+Rv@HC+!Ct{|JvYJmqri zK`)5&nf)QGmi;dqK(T)Z6ru*|y!Q6C@P_kL{FSu0a78Ge z;k2y{NFnB^tW8N)<#57Jaj3z%A=rX>^|%%Xoe>b*RaJ#g>w6H}xG)i1nw1On5fs#6 zMMk3AudH7LSh4tu@GYK*Eyp}2hnzA%z@O7>%wdp>M5AwG-l*;# znyptSO+nciCC9(Xz0gfD^j|2w68_M?ZMkbs@bWaTeceaX>3gNvM=uCzcFB-t7YX`% z5pE1#w5VlqTWgeJj`znsg@Udo^2d9Tes0rEIhA561guyoE5b6y+cq(^o$3l z#!~&lxwN72E?iztSC-XaO#?Y|Y*f!cLU?B*eSLO2{l^C`sPR|`I%e090bR$e$tX-c zUkCwW-ZO=f{>^%V5kNqb$VXA%YU=r@wZh9994Psk9Qw;(2<~M7#90>RR-^y|vQaU& zxtnHH2x>#4XtDg<_bG((OtW!fp-hKXtv?rdVzy-E6<$!=PiU_(=Gj6%EAi^uE8ceT zSV}mv{hho{s-OFr=J)N<NT%Av|7)4>Kl*((L(I&7m5c`M&PAXdb6jbDBy}3 z8Bs!h>PR~J#t)|L>ATbH%9YdI{0KctFgk~@FF(EstV3^9 zEq#hHsi@cHXek*^9tMG2!dpg1TR;~3vs0~JVjeI9L>M8Mi=+8i#LtT`iSNfb%2>Q{ z5io9D?7)N-sy&$O6;OX-c(XKQSf+&4a*Yk)KK;8U)Kd`zoYUlk9GN{g5OJWQvSXxc zs3T_Yu=>@HDa3d*t<6e6Upk+5B&18_ysy(%Dj|4d>O%2HO-l$AlUnLkJjHh9d$|X^ zHQjpTc$gn+%}SUiLRBuz&D~T{aNNe4;K`dyODdq8a47WXk=}G zdG`1VggU$y*LCGk64z+xsIRG`rl>NV0}SIJ)OUIQ{zv5%`Mb`Xk{l;w9P?H3VR43o zIk57q!;1*durMqfRA$v{7Gr1MIEu$oJiLPg&3|`7b=m8x99O_D%+shCyr&ge!04zc zvaqXdh4;9Q!^C+%=AiwnY|LE|>di{qWFYG5j&@b8$QLWds@rRYT zb#gU(9BhJ7h0FQ{EbE#$o%(NoPpXgIq8!3X+JomwmS?{dReztT=%t88CMMF*r~m!FD;uuqb7l|3u9Z#&Nu`9QVW=oX1h7$Xfh04UNdJgp%S=b&rf2$o z3AX{QWgIzN;ZT{A#0WV!;dEZ*6uJ~f>aLMPP|iVgGc}?1=n%Ph_Cnee^-2kim>pRj zPch4@9tW3*LdgmPLKcu!1!`eP;sejZIig%oREeoLF9sZ4Gl;N;j;Fq$5Z>Bi>gM?h zO(>9;p6fuWjSi}qbTy5O3g(MnUlLV6?RbUElfn=NJ3K->O%?aL6A#bHkn#||HUu)u zGxJW^65&s14oBX9=u)?cIL)-3JFC+F_^05)#lF$y_umw-`kQh{`#e5 zQxw%)w9CEWm2|w1=i4>yyj}JZ+qszh)v6NOAM%O_K+JO}KpRl|6!~+nTJ^At!CZjzPJ^mmcQ-}DUL)CE-DquZCc{P@R#Fav0=nJ3(X=VW(wKWz3Xf_; z1eJt?LQM1}Arb91!%kp^Bo8voK&i#GtY)%6!{Z2|PF_&M`;|Aoi$AmQ=)sCc`CvVw zT&%RPp2KTGP}_pV_TI^LI&5IgW1x8C{qWsfl^@L3;eB9v+lv8_Z5XUrgHcqGed2L_zb2cFCl;W^Y`2atvb zI`2YF5QknjAQI(G(Q;YvaQYBEyeM!2p*DRP#}9?x$-o@kM%fy$#~8RPAM22pt%)#Z z9BRw=X2nqqqwHecIb;L0|TPu_BunHps&p32)8DDr#{toNh z9(AT-iWTDbT|bt;#^LPIZXy!fVo6|$?xufpa0YJ1zYi76&G=Ma#F&2RzyG10t?kB7 zjE>N6L-B73lc6CAZzXn75Vb)qL@aY9*`Y}99hpe0eRrqL(YuxWWz#CACZQA6=Bi(i z3qBz87C}8DRN2VrsKae2m;$9N;iK4mY>v#*%T_k1fDH!KelvK}6msjCx+OK&W>fEW zJ#}qEj0sFMV6t7HlDxr7ayxI;{CC-eSop;dMA&21MZ!Ch_9eD$C79>Vxe9h7%9pTN z&RvjiaR*ADgE82B%AOa$OV1f3V$^Z$NO^~&77CDSBHW`BDGj;8lj{|dtV`_7lgDpM z{Ug(9b8%LDX7f77mIdyv&xerGGqKW&q_u^ol|y)BkqFNMC@b|)=0aE*Ay_K=WA4gx z>3BTKd^rclTxF6?3H=Ef3>*4x|6YH3^wB5MrieX%^U*75mOjabmPaVGyox36$DI@T zd_p1B=?)@3_2`@2v-{o+)$pLT+mR6;Vvrq;Xw=Z9MQfe%GGuRM+lst zIp3D@{({;zS3^kG-WFCHaR`^o&%1o5D2%d>syP*}MulavHHraoiyhWFU2fR<@7rF&i?x`s$+TE|pY~@pwH4#`|GFdct z$Z?@m557Ee2t7XL{wy?ejS@mLhmb(@xgEFTu<>mA6mmn6f=UEcHVCl8P-NwWbpKmG zkbx@Klch(#s?_-t4 zbwa_Hze^~$`d(+A_Kz{vU_lV(XPeL03DxZfuoQG%S=(_A0e7^H@azdwH6hsOZDE}TA8`Gi|O*`j9C}joH z4jE+23t`ePcq;x5+OVglq9Po^iit%-4})PNEt&_U$s7? z-hfbDo)fU`TJNBg+mZz9 zip)BBMR+2LJ4F~IEZkBc8NFLNLM!qKQQK0KyIU(04ig?*n6H8h@n^NWw9uUuSDmxU^{weOhA^NWJ;vY_gZdJ$?^JPvuFK}3qe5uvG+ zNJ~mI5NP2QFii$axZXwM)43X2v#T3*vp8d%2$yH7GVxZ+_~=ew7Rv2wmsOXOpTB3f zT<01)C>c(b6jc?s^aqOtcZuexG~%YiV)y(e&Ey z_>nYn{B~{VNcP6Y(lv6ZDvZe3TxO8IT4=&xgNSXTU>%;zy+@F$w(BjR5qy!L21?64 z`h5#*?kz|*!|IQE3AbcMi`fVz97Pc%f<0K2i*kuXJyrZ9#Dg|xPX&pDczOw)`LRfF z0c~ckc84TL5#)PmYjaiiPBAKUEuHWSqXOp3WlG0NW+TR@t?G*X5MU8f!lNJrm<1nU zJIks7Bt%pz6ft=xx=KEHej|NM-blJ(w7FtiOt` z+ovR-8=}k4iSbgm1=F_IxBB*&?I6GnDEMY$>p#9y#MYsLd8Irljq_*!wkACFC@4oN*?zmgUe)33m_cq-WYd{_d25?Ksz;g@T>9bFXm{GZq5qU3; zerUxb!=Ov=A)E#vKmw4?mcxQ3kBC+u`VS{@A!zh2D_cn7lRSgolbfzQi|9v8jS|g~ z5Li2^uVAY;os$qs2!5=l;L~dtge;N(`PxU)%+B{KPjSlec*^)3dp8VLLf3*IKnbxs z^Cr!ThNP$q_A)ZeTiM*`IfsETYXBzL=o{30t)yP@n?-M! z$mdXi17eK_Wl$Un(1IqI39Q7N)DQ0uF9yB0E65n|a|9|C;ZpZj+E%o9Rk}wp#iU>V z(#7=Exz$uxcoKdEdw86UOIm#G7wE;HU@bJ6Qyt?bZG_?^tfA9yO2G}0@5zP%O|S^p zqC5eYKz=zOuX#h3_l4Ch)kzTwgZqrR6XaI+jzQ9=`&`ufzx2rEv};tUBC5~@o=8nXft<_ajM#$}<|xFH?OaE;{DSf&6blWis6MvPE!H0*$|Q`G zx8a>A!K{t5b@@rj%;hvZHJ+L(M*Ql>{*QF$JN{rgb@w~cj>e{hr8jV=rk+C1wnlLg zr)w*$>mvMBZNSAh?Grl}n4+H~^N-2JDAuB6|7YECMgG3WzF@UQJ5w1qm} zjTB*Y9SuN(JDTRY9XwzZ0$LVSS$}3)E|u^rA_YBnWldh402Wqift*v8&&80#@^J(G)v7FL zBBPe@Ca|Wpx%*^wuU>jM9XUQN!Pu2nmqd)ILd2(j_m_n(yPR%&%ZE}^@tJ-&%iOX# z!%1yYXM|K%9${U^_Khm}j$nu+Y!2S!Fi3%emT+5{%;+aWoeP#H$|MLgZ7tKn8R~ev z6ga}NLh&^b^mr*6E0(--CRykPA`ELe=N=GjQArXIaS8kuM3EAzdxC7s4sdvmqC-7X z!&Ti1Itxh7*M&ET@^#K95NF&oo(sy2IY-Gf5z2T1QapVF6fzR_1dM=3)0LjNw3x0e z)Rp5PM-=^lXweWp*|lGh|A~;}zP8q$?zn&Ft#Bd{jFKoop;6S^T9fJqkj~95%9|ta zCqxwWI~eWyuhHF1B6d!)m(p*Zn@^XZRf~fw-)x7;?6|nDDaOpJt(*YgP}_z9 zp;;IZ!R6}On%7pNzW$3Z^vrIi&kq&M&Ga;`F%}7^_iIg#HS3Kh)>oJJMr(s_9vL4J z7L%mIdgS^<>JjpESQLE-_O-BQsZibY5`?w9v1 z@I#9FvH_Eh@i<+hlQ~a9v1wp4q70VHxL@_H@v%5PeuaTC-Bl@D+0yH*M z^s1s%Gct2e;ne|r0C?2{gEJvW^P5RA$?69wHXv_^kl3yu$BdOQ8pkr83-k5#@Ux3) zxxTCUS6*&$BODiyT?jYR_QdO2!Zw0DFf_>XaEL62%M7|8U!}rcg=cq_k3(U)?g~>u z*EzqmqHAgG$x|651jsWHTQ}k!MA^K0z5L##`LrZ5PQsYfAEB1X*Hm9uA7A8M%33VP zR1Kf1mr_2j=1`uSpzjF$DzN4Gyq$8cee;;d9?H2BJ}ZjJby)fKV&6D%-?Q;zXP|S2wvnL-EVTTIl;Edd)fA@CnuFI;fuPw}OG}ji-yzQ3br^QvN z&8%MXeWU5D`gi=s7p|mvQLv9GQ9m^`BSe@AE8Qh9`kjLe>lRPg$n;b?e&$R%qDEmO zQZg*$e*L%yd!{2nq##rgh}5*;wX}q)Dm_iu5S+UvBw3r{L>mPXO}rbdY|giS{;@Qa z>Z-ko7Pw7;40d<7q}(PXEQKJ_M!Wp=kEfl+QkuNwEjj!}xJdDNE0j_rQ}Qe%?Hxa| zaEaVaRJMn$9j`(Z842UX#Pv9&2ImF9<95sypf z7>3aqFGy3cYxp#YU?tq;efCSSaMh-$U?{GIWRk0%73bJz9$QFP#N{<2uV%7GEXT5l zmkF7nz%_;{&h=`7wyk*3MOHEJdj$z(Ki)7QFL_?DCLrnur0^*0?9&?S7l`Dt68h^x zxsB@jeJ;iYQ711I&NnI0*{$yM@n;t0=>}qf9y3_(0m$Ze%;&*Z@kmN8b<_0 z_&%Il{ZI`g#(gGA9F+4JcrsEihKSTDRP8y(p=V%_$GtfQ!s@9Lp%ZOMof z0&r`)^-;ZJ%;GEMb*NxoAx}!w`~N{1;2-Z{#|K1)@+{0wh;-{s!;_Qg-q+rrj-5Ph#Sr0^sQ5-cq7a<$mK0&3 zg9;<;f@0aBEwACvQTdKA^Y@@Yu~4O^hD1LWC}iytBNi#>*WX2#l^*R>h*qIV4D|`E?cGO1CvzQtlG; z12QtY6;5l(JM7cFYeZRqKYtFwf)Bw@ZUvfn2}ARnq3jThcuVXdo{{oM+YVW^(w3CQ zMJ4s4&@w`SFl(c#q;Hb4hUs_DFY35>t`X+yySi{7-7 zA^ZquAkEo$VD@+gN!B{q11g`Dl#HE!`3ezN?O`4&m{-UX`|zLsYb!tf6MwA!CqHo4 z>CL4pX+`0b0l|?GWM6+`O9&nHSwA{s&xNL9eX?X7s6dEG5uCjBw)FZpzDX7Pqh9iX z(xNYVSWE101g+iiwUKQOS>k7YINK4N?kjBouPJ(N~{8^5|y9ykX z6$Oe=z7uAF=ZcNniC>pwe(51oP4pLQ5rL0)REpv7hEOcrr#%-u8He2vI6)lgD`0Ut z`JB5&qU>@AE<$Djh23W*>u-bxmS`{s5VE5%HJWUhks9k?Ihm3G#sVgHqe)4%hM?#I za@03grKD?Vd{ou(LXnZHiU?s4Z+34J{){kIU4@H}Kf93Xcr@AT*^#%i+3ZSVQbw0V z4dYOozyI9u(p9&E<`}e-MJ4x&Zvh~I904Ibou^sf5)>YyRJh*u(y|3(gyBY%Lm;m* zAmQ017J&=;@}~tj*nrQCJQ#+7mCN%hx~q*V1aCo$b&l81k zZVwgAD@4J3?4SQv!+o3c?-?3V@nmxsXwh< zd?d|1^H{p&jUPyTGa>+iKz_gDB%uv=nZ|5*bw(%^;cmwTd8~0*m>&>Qwpzo#3AZKx z*z3`Gtx&R36d1-lU>Wm$i<$g)Y@e{0or!6OIs)|;N{PG_maSpM00Ri4 z0P_X0X5mWI3riNhG=(Wi*XTZX41N&QS4FZ7DSm1pVTJZNEe!b`P0lC`6{SOZ_UT1= zF!(0K`2k$$PKfjCB2!WbCc)Ir?63~(3B0%s5JaXLGxG*tm%g?w!8jz!m#86%kRf$H z@XgJMhYbYbh+)Qf#Ws`TvfhV4O{tX z0KLdT+>;LfBu@P-#386uSrp6Imz3H*D;`mZB z=E%&LJcSu47zDP8`jm9-74-PNH@!LCqp(#lLg%;|oKX`( zO#HCk!82YrjXtro*W+zcX6kvyu zf!F7~FwQdX)gsBNS61EBCC5=!Am#f-$sSZpu}1c%JobmyuA-eQUe$hOSjHRkT`dJD z*MMjigeQBDG11Ptpx~PI&3|>%3#qFN@X&*Kr98D}Tz@Ap0}i?Jhpx; zQF0|zc~`e&rm9?NST&4vHsyw=6Uw-C|F~7NiSBV=jUltO%AY{K!oi6o7Y; zb3jH@RRv>M!yb;m76qf`KXZMH-ZMfh1P}qF#{v(8>?D0T5qvZL{Kw6Wc zU0iIYsd0Mzz`h$^56_`r++QmqtURlnMpH^>SUIe{^;KWrvYR=Pf*w|m2L-bYHBaVT z3kC7qO;F~ySmz#cW^ZO~@g*F(noiKGNr9f9S*h#B&n~Yy^f#<8^~ej`6?oyR3+w42 z6$%DhK#+&}<=@%M%;PvHm=BJw^X%ih?eJ&iKtI21K3~7;>YS)r*K$=+5l&QRJ!WqR zZ?||T`#hfPL03bmJoAVK#DEL*xd}4{h`+tPuj)P@zv}gG@;46^%uW7)7~ZG18=-8P!WrUX)0ToOkbbvd=PCJUUpou(4oLw(9YT>4tNa`EYO z%j-Xwx=-8^g^1h(a@uZHkWms^vNyrs4prnjmv*rS)^|w=gHj6x61k`dXZc>357WaG zB?Gx*5yAm4b%-%@nia-kpNHy5y+RS;GsG9o?8}HeXjl>$H{nY{P6}@cebpUYE%82| z3v%ZBz}q4GCna=g{z96VJd%bdlmJ!^4h00c>H6w!di05l0s};z3R1)xRsYnCQhNf# zS@SX|B`_{8W>ral>P#Z68H)Iz2T@hd+yfpLUa46K7#?9s@-LaKVVIWE`unNb1$iVj zg~m{Rdr8r{^zfCHbWXqn8v#J7Gt8O4s>%GTg{P|9^SO%WDw@$xKD<`$!OAD+VcMF# zxUlV$N9~dyPaZ^senH&j;GI6hNH`cS^YMPnc`O(;4wXj2zcc2JmutF68YmyW;Y^`aLc zER<_poFGRsDB*3mnaxQnAA2PHyC@U=+u3bw~-Co!avexd)@; zI1T`V^#Bq!_wHbBeGSeZUXVQ-N7*>ekIi0WL7A3z0dXF5Qxq5WNjQ`HL4q5!K-+3T zR7Zp+o4uk&W>UOk;+Y!}eLH!c)rHk`?)+R@uLm(F+;Fr5z^G8%zEgd#0Z_&|t&XKj zixEP5zE@R{^Y8F>p&wF{FnL-nDMeGgFt<{k{bJqTmH}~AsIg5cuOvnZgywqJaQf_} zC2{7l@-P7+)Ecf_@hh&TBwp;M47j+@nE&DVkBKkNKY^-iy)nUiPI{VWy)ej;CRS zPY$23JtCn^3_Uh=B&|CZUh!PKQEa7!U_`(X7VC56etk8s)O7U9W*ck!l7+71V#lKvTn8Oj|Ufk;0_Y%rA z<|}(bVb$iFtu$a(X6PTg9=qz$vQK?IPfh z2_Vuf^c>d;7{JwEMPTx22ua<8>07AihvZVmheCV(@+7xJX>(caNp_{shIQ<^dJ#RS zUNal=x`I=T@7hLiO-(m|g=-UyJ!eqW@l-!7>(1|Gh3^WfY%JOEkZ><>`hy{^&i%z% z+n$iaq!l_MBPk-Zx-UPK=ck%y>4eKdrLhVk%*r~5+MHrcj1P^ZkALE~)A`Hi(|z~8 zCcW*AZ%qH`Q=dw^0>#MocvfHk+2?&ouYeB@70fH(A!)7M3+;vgUForN3PbcBO;cxX zPcz3(q?5PZp2nx99KIQVy%$T#!oPE4MG+JkhyW`vUnk~CHancwY1mczrHAJd?tG`N zB&z(2=ThExZHI-C!ZXXWZUsO}7dSLK>iCIc1o-5IsD?+#v8IG&T_FMl!sy7bG5>=? z!0mP|i=9B-IR$9gRXA)9nv6!|D@LTCmd`zzzWkBJbmv>&laAbeZ))n;euZqh@d((& znNFn$4+q3ZZs%~IH@uZe<{itB(CD2K`Im^T=e&spgZ||HtaLI5mjzmx=$xN%STPDs z5%xvNJK3*8O(%oUF=7sZjUGZp=yzr=ARhpv942IPDo;K6_4Mq8i&8qZG`k{%mcn8E z%HL2|LMY6G)3~X7Vaz=Od91A0?dcFE3r1oob6sUj0D&Pne4BLqdXbJqj5ETDyr@oU zDD+uVI2J_QUA}@ZG{drJH*qh|u z558<1gy#~EDaQXCfJo(gZBK;!RC(Y3cwrByS{KGQ@Qh1AZ8=pLJJ+EX&gs*)q%VH$ zOZKRL{4f3Gbmj7F`si=}man(F-S~+90X@ts_I0RWUIC9z0iE0TWPYBV6O4HH)^x|c zZ&u;t>2$=QG4*|6%Ok*uDX0P<_7*BY~6)#h2lTbKRk#ms_h50 zh4uAqysLR0afX~w*NLrTYz%b5q=DADx>Bhsns~P1Sp<5LJWf_Ic1CStSaNqmBD;>G>wc42S;+))) zr+gRCMHmWFNV-R;_J8*izmqOsnOE~J)ynAm%=NH5LQ|jU8Bn~*_)+-I|L8A_0+QXZ zG;B-2MKiWtb&`})5CC9QN=J>Yt#pe3K4_s=@7HU{9$iNP(YF$wtW_BZ4Iu(AtZ$_i z3=SVx0T5J#a1Io{1bYb0oPiZt3Am%Fy~!-p+k2sN`ThB(JQw=d6hW1jkMnKCb=u*# z{YS+<%g-85)eZOnhG4klIkfWeUJb?g#8Xe%lezD{*QBMTrS#0R&*~J405n^_rW1bo zC77(2^^}JS=4GAk>%Z7P{hNRAH1!T+cfK>-{`T)xn1q5u=trP|A%p|-YN^UDd6BTT zN=U37^2wLCRjr?P_y&tA=U%FXW%2I_300L*K%8@fu`Coz$j5tZr;#o^^GG@~B5PZr zt(Lrxme5bQ7ELLYbtR{_Rmcg_4H}xph8j_cPM%`~kW;K)NGeyT^L?0R;aHn+4G_77 z4TaK%6e=U+g3{`0ET_jl^-*~(J84qyL91&DJ(W9#%rV7%z;LzEqdNlNLv?z%$}*9r#nwtnX|iYp8%5@Q^MDe6gE&22J3_ED~Xk>B8NxTrNl!;1pFng>*U zuiPJVdGKWqFJ|inM_Tp)23es5DqnI&E{EPYZdvq6Z+pv|(nAkFoazF*tcen6Nab86zT&bxz#9#Ql$GC-ZE~xAXpg6ZhY9^GlwVcCk;TW%Xk}aWQHic*!8y|C{GR_GqjjCmYJNcM36$S3N3nD28s8J*^NiFcVZjkfiS@B(7 z14<(Fs%UVBkeEViLkgYs>};mTKKrqB_KTm8m$NF%ov~N~6W{Qh6>HYa%TD-nD-qT( zWZQX~_#MaOpHd^?P*)C%Ri4p71s;WR5gG~s7qtGis$CmFe;8Ph; z($_x!mGmEe~a`0UH-D#?Q({dO@Ruu>tbTjs&C7-_a#g9-m1! zchfP=-$>s1C4UyYhp`jvh(Nf+@fAt#5PgY-C{YH?BVFSJu0S9?VVry#D3i`_tpy z&91+B^8WXwK~e8hT|l^~OM;cU1KjYicViQWfRE5s35EH6%fw1-T7Qv@4^JcnW~szy zV-y;TYM3OtCh3xNQ;**rcNU|Xjd{UrT)6cMwX%wan zh-7h#O{^lq*+;&RmM)%6cfIX{Y3SIQ=tZCB!*F0r1EecLUaSTr(+PXQ0}fllO@`5cLdk-ht3XS`xj>qMhU?Ms2)JDx zIHID?BZ3pJtN5`9Wv`GNGJC!)Q9kE4(XeIK1m2m=9fcuXeDu<9sH$RU!}0U_N4fMX zzXzqyw%8>6{5&_$KQ7RboU^kZ%E2YP`NH>fFx*z1OaGhycy6FEWdLj{_oA`KK`2XOa{(iQQ1=cD*w9`HV(LtKurT?7&{M^YjI&4RGl z#?<`$Qu@r7A4r!j&!;D!dLq5%_B%fF__=3D^1tF=haSvL`UwBUfBoSPj*X6d|1tGP z85*Ckbrn=7Ed0V^9O$hQ7k8{UTcOqbiZ@9v0Hgqtigz2)`mb%>=kIZjf+*vA4vCfU zi8ozL7@z`&O1hLR&U09PFI~B)V$WfF76`Q^GbQ(#uHR!sDar$DD3<~?IhOUxqUii- zP^E%BkY+%N=||3QEcl@jRlI1-Q)A;&EbD?ZtJ>dCX{>sUL%)Ya3lE=~y@kel`syb? zn(le)x2G9#nE^irHoKFR90~y;L`V-IP2nQHxj}P;9B@92A)CoM4+TGuz@)O z)s?A6oK%h?OQXT^-1!-Jf^z){IVOFNTuDpb+pdg&XC8ViedJ@mBaXQhRrC{%i{iu@ za}ClDMW^qPZ;3uU(Z<+eN*NBek|nsHZGjwfQ3~AUCK@vB6i`U~$!Tttf;l?3kuD1I z+;KY`Q*7^u5ndMNE z1lxcZl#i%44c<~qlrQvtsnb9U#FmQhLKaCR$phF>75|bv2fFqxFD)y!KP)5}N+&4k zd*lTXTBCRn*-dT1*!ZZzJL~R+f|ZIVG$5$+>e{-110!yVwIdIT(!*yT_@n>@jWl)V zn-w0?JSsm#g-Uo~k)uFR5Q5rr!zXch(GbkuMI_9tOv`qN464B5&F-XgE72dt9wxJs zLu&0tXIQ~LD(YYC4JdR-ZOWDqSPy*VtLe8s@hK^Vh6xUN-gqzYc}3H%u%ILVl0$bn z?vJ7k?+j%tA*=WM2#XP7B&11bko({nAx(Asu#)|+n;uG+&#tIw(p=7AR`0XKW5mU1 ziBMBUQRROZqvqw@MlqhK+j1)j&v%4w{XFq0@^982&$AjnJUG@|<&+Jz7k?*Z-(2e( zZI6d1uQ55isCCxoFdjT~JSUt-)x?}Qk?y+luJq|oefrXiAH~gmpkr&A^o}%+au{Atg1Y>VGK&;JOr8ikHkiGi13#`bleG?gJFr$f!IQayz3V;lXHp zz>&8U+M5#U>g-oO>CHWU%WK6ltxk||bjf=mNC-2q1%-tY2(bVJSTSTpvF*B(9LTR& z&kk;(<=R3xsAOV}sA3OALKh*h4Mem3L{LFdvZO|v8f-=OYsN2oI~@5tI$j!R0p zTgvhNqoe6-^BZbi9O1Vz^0Fn$b1mW4vQDb`g>Qv|sR9r>MpPIZC5+X1CZTvRZmyQp zk9&e=t$1>N>YjpfZ`J!fC@!ot4!)V!L-G8)8nS209%cb7E-skTXMAGJMa2VBI6%sO z?bm*t;^ePh<&>|;w+f*zwy}5iv z9)~I=)^-HH+!Te)jKfSMIPquzDZs6^vAZD;X3hL$gn)Kbu-8zr;P5bw&=f}(QjD&C z5IEvlG^7}S?82+HAy_9(tbjU;uPF`V<;Wu%R_JVfbyc~YLAMdEE3boOKL6F(l zX-0F}FM5uM{N+$fZVBvuH&z6}3b3OM-{EPq)SzO<;TWuE-@ijfQJ~7R0Md-GLY{O& zOQk?h=ZHj^b2v{v@l5)?PkbglJ9|lN(`sp~`>81bPjb3n_X~40%GCw04#oJSZg;&S zCCsy<0U5b20{|3mB=54NB1*z)6T`JMzaiQmeHWfoxVXD@E>xR*9<@f;POm#Mlorme z8rC<7SF-Y#;|N^f0VDvLcCfK%dzEIMJt3(n5!tEAhrwuOY8ww z@(YC3^0BNH)_fJ-UzAgstFpJE6Kr@{Tk^;WZ4N5`*pm0Yu9`3MqQe6Nzb`fUiY2!^ z_^b{U%uS|XMD6seciw$E9e?W&s57P78_N>Mjb;;-P)#+zQufQijb9dg+hfTGmJMe? zC?Uo75Z-O&;_y$l!AYPN%Q$ajbPS(5_u~zo!ze~*!LTcM^86KT9z2;$HKfwfuTi>AYX2r^*5YQ`p|#~4iq;=B&1G{SlkPp&;7T@rwblCvOBf>7KNvF9g$ z@AK*Rzw(e0y?VYHZ@)recwHn+hLo@Jtm+;>kul$JSn*i8b^V5rbHlEOk>_C#EV?1$ z@zCwEPoXuRL7~dyVqTt8*lkc=Q8(Tt%8j$>TpWL|axq`Mw2|hbhw?t2x*{mcTIx7) zcm?tReeWHC{Zb_J4{pz5FoiLd^G@~@vtrk?iniPxFQnuZIajBVob`MdWzN0CIu7Mj zl#Cz3zI!a=DPd5f5or{cQGExGZz~z+hqT7@{0JALUv>@)ih}8xVWn*jW(Q`|S z!PWmNcpWO3o9H3_;{W-Nf8Xd(-+NEo{~c*m5L++$5`xLKEe9dU1*TcGmaE=O_4cZ$ z7_$iLr*Mvy?;|uzayO)8pk#YN?O+}-X!-=J6or`E&Uy6^R>uL8NO>T5AQ*9qVAm!J#sevp2!T( z&x$cuN{>ceCZlvs69tkvAHwOZTtWcS?2CT)gt$Q7VR56-crGp$MX-{yK`8<2rtU^_ zS5xTFvX*?As`w3zP{z_K5=0!o|zF*;ho0g??8Bqhf`{y4u;fT z-mMf0hVlCO<}t%g+>#eut>G$r#zm)6;${4RESMYSK9oz;ER}syA^~L%s-9dRFatei z|%m@e>P`iJmCXh~Kr@m)eIY&3os=y9Rl_o8Q$xVUTO!9a$FRa$w3gjc@#csSYY1Mq^vzmuNK`YM zD&m9^pTl8sMpySL1Xb&k&~GlJg~vag)}HyYn4dR=zJiTe9+H`vkz1jZ3Jf-KGmJyI z5IhXpG+UWLyFy$Y3pCeK5OySwqwhE60d1?-O=Dp`J@%z9reFS*kEW+C3&t&l&_`1+ z34FH?(Al|fitL!~3p2X?|~o%)$Vgj&7D&U|(f{DzrVJghRu-b=e`U-~L~9eOY~ z$;14)zx4-x^u)~IEq$ZMQ}5^)60V&Prf96w3%;OuI)cFaO8>Rlkii5*?m1haghRrX zXe%vAdo1AS9UmJrOx>{L%I~nD;}ABgeuUtnF@b zRUtG{H2hc*YJkfMr45Tcc}pm;U0Kw4RV1_bcIy(h5`@a*@O?a;hLlOa@+*pw>AWp- zmpL~fp;}kSs9(peD=#x8X6Y4CaPXR*J|cdnMU6$R4qzrwNRB&!Er1XO?Ep3xp3wO= z)8vVJQuol5CJ3*IP?0R%oSbJ~r~^WQpv>LDGYc|`ElIjZL1jnT!lH|pu_cK1?9)%G z`P$iZQOdL~Ivl*AK83^#85gi%fN-Khay@tpQjjPU!hk$6psaW{B!GJqQi(#_{J1=p z=*MCuEG^Ry!+|`MP0cecrcqRb%G1i`|034 zmFw?&KhMuW06=tpg>5@Lp`x_Qe%hpVEAOxBTvv=ZHvg;Ub*Nx&f=Bs_|K0a?NxuB8 ziAmMFfD|M7o}s^Gqm&I*UC>oeqiS_kZ>j3um*lA9@PuSCgYva3weWOe;}&a-ggx-k zlFyMn9OrYRDPlJKVQ{HEBK`y?2#`pMOds{nI-ea-Cw@Z#9aBWepk z@*V{-#C!69$P4LPVsCDy;cQ~an^1Kwens8Cy!*^){#$8FkL-#^1t8|DY zVUO3=FC|FYEBe%k9!K7d6WV$nQF{@<4?meK&;THi^q0O+I7|s+k&4oiU|h|?*5yUD z+{OT}MZ~Fk9)yzsMnHUe>%?F>kAlg}vO3y-zFPu*QrN2oOLNM)R2= z@L9o>?-itH9@U*UdfvX3=Q~s|-^$s~*H&)gO=DvNuOXSe-GB&^ggNrld-*PCZQ_`&9?91PckXa?%> z^=liha`ZK&wh7Nc9>tVrU?cL5u&>ZJU&I-v9;!Ex~lJE!0 zxe$HzPx{TGqn#+KTu?Mf^wLLpK+a`Sk~+|xXBF*)w9rxW+9gFzFOW)0MQ53Y@~ox9 zIPFAQ*5ZShLK(Sa|Dq7I%pAz+oKfuraxpcUSK@k_yx{!0L-?3$#i0!Aq)Kk*)VX_& zkx_me?KEts{giETesPbyC@X`@h{c7%x_3PHXa_3C_htI>q6W6}Ag=5EKE~L=-0v%V z7yFmt{Ps&?QXL=f31O1N$M!}uv3$V=a}Z;B_(U)1P(~qv zjC8z;WAc=W<huWSg4*? zb^o*+42gS+16LHa&B_>d=a!or*Vj$ootj+`93(bX(^cW&hLhn$B734V!^GLsYCM=b zB{?ohe{gNsVm&z@K3iU1_Jr=LMrPJ^CF)B<!AY*8IZ^~B zmEe=fo01O@Ibm*9=fA9Dp%#GEpb}r_?;=ZM=FZ$`RnY9*yw+U*%$4TKr#>ke`%N8B z=Owssf<(T4Zc3@ZtT5`3DEEZ;K*heP-Y5{LTAx)p(2f3^m6MGme-yFKsz<3iDC17f8P2wM2Oyv&O7PB)cj+7Lu{PPr}EXhd>2UGDE?)f_F* zw+B8mcQ+Cm{@ZyCD@nA_X&BBT5mb!uT|DZa^(Hl}5a1y8E5&q3{oQtj) zKoA5>o+vq)Sja_m>Mcwli0I{(A0H#h5CxhmqzI40!wbdo;Wg9SD2ZF%sd8F47@R$e z$3kO1r`YyUJ=vf5tS{D|pf8Rc%tO8zPyBp^bg4<#T7a$mxZRL}C%6CB1o}a@FEBXM(3mUn@Sfh{UjWLMya zZSp;b4o$@3D1v*5k~BdS_a3u|fyZdUDuXpv3jWx(tLr>Tq$k7WVoVvYOQ;_xO4||~ zxh|#aN9Fwcx^Cw*_N=&)ku@eQbdbeTUc%D73LT*W2v$JYje9l}glW+1T)F_&I^*Fh3>V_T$52>cCjRo*8o`-K{NZZw$DHJT(cyW zlbd15Nbksb%s@FMrjQZui7;RonIR#nf){`cgRkc=V!;c;lcUFBu=l>?fQ z14^MtjDU@>nQ3wg7#8bDsmG3@oNUqvGzClteHW-w>3Lmek|2sY^m20iNQ^v1Dm|$_ z@2a+>r|}X2?CCG1}jZt~FzpZW`mX8UxPOnq)G5(8INQo>%0u zFZlH(wNqZ2Thv&T`=R%aezS=A)0eu<`)^2PK{>BUMP5bAz|UVs2cw2GS$pYh&YF}N z5sx~TT-=Q2Z|Z&2(9>uxq>ffbqwvwsS_2+1vvX%z=HSSYWfY{~fW3$O3A?`S-IF^iB+q_G)U_X_A$mx{FPUn)jh+OoH8sa-m z!?R$ovsi4S+uh}>;;a?a~(wxlI_n}vr}vwv)#8B z1Ae+$_Y{m`V&bufXqN8jp~nv9o?gzo-`ShL@vHw`QER_`MY)$L8Ag)CM_T0{yS8Ma zdGS+EH{bECf3LZshyW%KJ;9msRE}rQ_>{6wocV5!UQf)N7^BW9d&AU_L_{xHXA()# z6x_rh&m#0F$Y^ctMX5il%3chwzMM)=jzUdKtdx8xcxGP`{6~Ulh(xy6ca;#|YBs2a zQ8IpCjmemN_>6f`l5r4-ShAW2)=H&ht^`pDlX6b`;hM0m>k#x^_KhJJ$gm#C=)0c` z&P1zp8b85ABd0)KhVz)~%DKP_Qyzq9iS4^`P$bPg810K5Bf`qGpU_5|Q#3%1iCUdW z^`al>eCO22YeIE4b{vi(V8=}>5<61g8Z92o_6lnHJD4 zW%Cno7+dlgV?j-sBs^$ZY=@J#igZSkhHxSeK(2>-N1|V~l~U`K$mQl<^XWASj4Gnp z6`Z!C=&-Ly>kGuHLyF(RF;2FH8UfEr4H?CPM$h>Fby;GABx@;(BT^xHVGYCT{bSEwZJvJL2bypB z=5G{rSN-cX23EvQ&X>u-gvY?-gU#~h(-ec&DB?JNHS_kNG=e9SQ)2L zi|@tiYf1@nrAs_G;&* zz#gMsWk%;TL+%Gf0SYi>pr-^qk+^3JI~xD4lI!H5=H!TRbesz?8Cq0aPYMG`{nLQT z&CKkaq-bDgh3_djC;fx5hO^aq=^T>H=WeF-x}k1{x*YumnuOvE?RgP8wQg2NgJQp* zQ8f923R^ejAjuoa$26D4teZlD#eNl@ZRyTgpxG8$4ffN^{bZ$k7}e8>_|cro=)P*` zw*GtQcyMu{wSVfXXF*m&h#?AH zuPET_YgPH&3mdLc_{2v()ck+n|GhR8$d@3(=x&8xU1ITL^_8r!8uGFOD)3bur6jJM zE7CT%($YOM*ORbWKK$(}3wahfJ5VxrS(IVkz1HkXC3gMlH7NiqH?gM*eYMr?$ha@a z@Gq|{DE}Y>r)FX+>ODRwdEax7o^R&QEjRO0mEBN9JxO~gOynh|(C5OLK^~BiM&+5; zqMQ+i8wY`&*+52PM#+1~158+IU|dHdC&c!Qld68Rub_k~dfJVQDK+eMCpapf6@Di)RzH{Zl*{+) z{7imc=Lzd*=B#7qenyWox@}F2$>Uhl;!KZnt8qwzMV#Z=f|!o4ibLi;Qq)_YXYp0H zwLDrNTzm*->AoCt>|pN8Wxf4Qf9!94)r#arzUT5IGCuBV7FT=R z9agdW_iy~lJDaz^^(XC!Tmw;R6);NKr@oFtGBU|gj5?WgFf~4&M&WkMncBhRHqLQq z?5w0oU>vM}Mivtp7V1Gb9~HR?LK+Z($neovsUzC(f|B!=N0FUI!ewDm^(rd7ydZ;& ztjUU00BF&S)EIqYq6Kb5S{<$Uxo&1zQ9!9{MD5D}Z8cp(qCZDGqD8w9liDJVRb=n! zlj3Z7E*UW^vq`TjO4W_xNyQ2Xl`v=*#Wy z+~WMte%a&a9_?xpBMm~a9ewHzbybv%(5w@ zs`5K>08~`N`f`h6(SG}?8b7BR8205(mK!?fYwJaGi~1T-jm0{{xu6~#tMtOS^6?`X z%XR3>fI9EuE|7w^^xJhY`Yz6c+8UfpSHyrmc`ijpvtqeTDF9I zs0_6O9GA!ukOJHhGhmbAWP0XOue8QT|m9ue9g~27m9Ofzmqwf7B_0{@v0dtn_@j3SI*?xv!8BOE-W?O<&Gl_+87_Gv*faBVGa($u%bOizm~p} z$}(!G{i*%lxn2}ok}q-OfK5(C-cT-x90rG`m%0+QE`Ah&fZ{~0 z_K#3jKtBx4F&dI#@`-rlY=G^Ea#%oI69hGo1D=utW{2ccTwn>Sjc7y11?t0yW575r z@E3IT$PN$<$ypa#E#t5OE>_=NL^C2HqJ;7d+t77W(QJ$R!z#L?v3DUixLvgJGia_& zaGrv3bS_)EC+FrToAWBn;vQ4hX;`wFBW*NL#y1kVkEq|(m2 z%#HAJB~r{~` zc()b~e@@%|tKm7F;PkdSju;=!<9c2B)z1x^A*=-(w-D{l)T~#BpDH*?o!`Y&yh0?@MGg>+8GOznkU&Lf9m`1KT=)S}gG^vqefDV?n1~YD zABJ0#Kkh@Jd?Cq?!JYt5-<8^ep)iCY)jB{-Ip=IJF8Z7tnXkY8BWb>-NR0!{x`v6d zM5R5>1;;_Y2q?>}HuUF+3T;Zmfa6g38|aX~N&I_3p!a~of{7Lj5#LXwN2t=L5gFtL z#-q=>s>k8GT^x&8V{S6Q?xA7pJ9E03H$=+dnOf2HMP7zA!3@un(|t8XnP;r+p^^st z6g1_E_DJg2Kbh#SBbrfot9~xIN9~InYL7E~#Z@|;3ppKa#|X$>9g8qxz^}@;_-|^5 zDlZz}=Z$v1evfC@>!c*swC9&-K-{ue1VByBI-w*L^ag`ZD5U;rF-Ct@_xm@8-luZZ zj#nop{G^p+;c_N6IJM4!GARD;=417K2{&O ztj0?>rClbd3rewO`?e%vrX{h$3Vd5ILv}1=Ob1GuTAvK&l?_Mad;+2pqf6hjt9Hjn z)sv7w2VPTj)0K?>3F?mIjVRK@BFGRE8F61GNQCRMP9nDgtR?5N-`mpIabh?&0B=B$ zzo0HfG&1NGtF&rz3t7?X*!M&C>QFh2tLr;O5{9THnoe=Os!8%tQnF*QWam!GJ62{{+?HBmJl3l`IqwO=#TI0om)>2V!Q0tuNCV7qHu zYVf9oz!Hgm6uo&SiG^^WL&F5n&sNzOF3l-Po4Xigs1fmzK(Tl(P$qe+M%}6LxsO_I`yQ>iEvh~CUZ81 z##qAn2csJG890KqE6*y@0ESWpyd+<)-?(Ww3Y!G%b*S$yudHgePB+)3Iku}v;B~Ki zjrFtoGO!d*lGHy^4uE8Pw{&bI5}22$B~cLLpdZY#A{z1%7;D&BRtDC!z~ECaleHo9 zid4L^bgn~=28Ts%0;5XAr~?v72K0jQC!ayr!EhjCDbOI}exSlUr|S1vs_e~FgK-8U zEb=yZw3LVE>cCFhQFPW948@*8=Zxff7^&#*qo_;ArI?eKBMJ~x{T&e}3HvbarYjc% z?|WdUfQq!(g+!>1hM~H1?@=Y7CMKK<4uptnPZ1;aHLw?XF1k7g#ueLeJttIzc`Qbm z6qt3ML?Gy95mtpWX$uisBiuTgdMXV+ABh&?IcswkwSms>pJnjly<6*D>geap;}-{# z5!YGAJKF@bV~nUP68rU>N$2C)P$E43#@W{kwTSRoI39jTAOE6W&+4_U*K_hY`z#1X z$E9cLbAqZob}$dX!OTq_fBS1LEG@Az4lS@aD3n!nP0gUZOoIi519^6$*Yz?30^ zf(1np=+5=$|K|2P4SZ%4;-6|`Q!Uv!;B922J$(mCpusd^8t z)1DNbfu-0MBkUXn0U|+-nul>e$ho)=i*gpw!xz+UU|NnQ+E<4fG{gcN3wa+qYeAg` zwpe@ukLbOd>a(suPHu`Q6>4(S>lpIVHuEy{t}8OMNnS(_5a^TK4o=b3<1k(nmRi?J z#{^EL1%ZnwVU-z14VIWy41AnWeg-OZ6T0GzX$wHtOrjxZ)4*sEl0Fn~dMuZ?LP!KAUR9nbBjR_iFvg2(Fb)rR}5{oVQVaL&0v3fQatxjSbQi;r^R zw>_mi4^#ei?Qr~~*F?|KFYCQ`R6BV=bA0ctap;;~zWw!k^?WjRF!%Xh{meIi)niIA z|4+;3Ry0Y2dWsUSjkqADFyJwHU8P^7Uyw!G*Fy@d!3q*FLX=Z5v6C`JKlhd&Z$A9= zQ?YtYr%|Z9>1fhvV!WA+3=oZ?EAY{onzS9 z-f|7hwi5ZkU>M1@tJhV!D8#B`)A`0Y8*GAXP ztVHqvc6g`EJswsS2Z*8PLAMC4lTzWI&MT?Iii<$GVNGen9O0w9ex6S6nUe} zCpH~2;wC3w(8T}Ia!GP8S9E=ExOjKuN4JHZ=_~iyJl*%*j~&eYzQlvW?|t1xwZ$^t ztx4|WXsMtlmq(q3Ci`}Oruo&6t~Xb%>@?2{x8GH<<(?H^W$b}YWW0~qhd4vzWF};! z-}HlTkaO4#>LxG-Ua7zx5tg?Fg5CL!;hoH8+6c?B^^nb%!vZQY@xa7^SYe(8KjdTw z#t}id^o`fw>o=P1jnEWBvH1Lj3vx8dLx?JOq{!puiyP{-BFe19D5;e1QJ|=t%f5{8 z%^OnrRf3t-^_-xx-QI4rC1xcknsGSTkhsU-9Z0T!_58ApGPw+5JA?`klvQWVJuS$L zJOVGO=g|?1ifuNgw;8*M2vUiqD!DF7drxb5s}ErQJi_~=2e39G$tzf zyOMX=m6PH8js=C`lrR>@kPHSB&8BLCPSg*^JR*&ObBLb=Y_o}Ol$Z+zP3H^LOv z`*1D;HXKgOpG7W`=U}*R_A-R<;wY^nBxl9qjlM!Tg4Rj2&vLwXC%CO1|LAu9H<2pv zr=QO#BZz7z+`L3adj~(Mef-hs>!1z_$0yfa12y~!v_etmBl`8K*CZP|n2|evFaP;- zfA6clTzP=6onKitmTlG*3FVSZ&j@4kNUQvlmFC$E>J(?1n`=FFTa11wOk|_hdg`c& z31W*LLOH5Gdhh$2fA+SYl9pLW!1FPEKA^qgOz2gQrWa5QP*En1vpAC#bVf6o{Lccv zgcWiHW_YIT!>d+LozT0&K3#q31*;NJyy*OoR&j`2?r&`i;!dR=DHv= zIi#Kpq_K6PIT`-GIzeK9vpSw*^tBDJ83uIfcx5%*%Nq=g;*;uK!S<5w&1I zYH|YSKyf7Fn3ge~!QtxIB==pQ=-Y#_z{?6Alo7Y&2TqCTNbm27pg?X1r@W(jB^(R) zBO^eLXJUfJjQ*JAV00`BK3xN2m?@%)hy;S|#ZSVSuCXC^RNnVzz^9A_b4B50`P{IY zHOS-)HC~J@KRC}Q;w0M9zEJhm;b{wj2_w&x3IItiunGdl(0BT(sR_}`)38!)h?9z& zb0!UTI*B^+$f&wC{_XkK_bDR>!*RLDDUPe%E*w$)bC$Ezwk_ z8X1V(TFWwXBu4seaPZbMY>Ry6@w2HJ7h{U^()VC*yyjloqldAtv4gpfS6!VH-|(7C z(XvKt7*P0Ej>|@0l>bV#(3^QvtWF7}7 z_R1*!^c#P;c}Ddo$ceBc)=S{@6bqVV#v^NZAR>}%lbksf@;wQ2B-BD=V>Xmwm*U}U zv|{3TpSi9WOsC~`b|vm z`g}+CUGF1UeiZkHDMc10#@`BJDoR!E<>+73->W9lQ_87r*F5PmekR+iUNUCvV9vbj zfBZM!@elsezcV@A{j+n59^mf#p~Hxka6iJ}Scx79hPd+V^Ua?U%WQ4ypm}lgPz)q7 zzDOMBN==gy0Em19Zy(Y+S4+&EiZb8&OTVf{QZi0uQJ1)PuHJKk;UHLHrK8BU$(g+M z3fVO{;Q)hirW_5$VWm|-8ib6(%wAG59izocpRRq;`+|r?iEPRCllZ4s{K7IKmqZU} zi^&nFhGj}d?))Y7!y(^-V?gm&PLB#`A{O4?SCYT4iAzKV>_e+$>Rn71mf=Mz1_%p7 zzocjp%j}{|AW7I^Uad#7C;lGLV+X^J1dO4oFpP{luLXb4n211hLPVkKqW3tztgh$Z zI0P4S%83V=0yXCu_g&$>8yO|h?qgGX13U$V6{UfoPsit47}zNmim{zhD_dh)yI$y+ zB{R(Z&LlHZ23Obyi70$EXtFT5qe*&)nWqkea*S+`crLHU)?`r2Xmk9pAz~1 z%Y{|7=d}=|rmvKFNvzfny$!w$7F`jc-(FIi;AgL{8D2Rm6Dk~&pE?@=3>GAT0qVDU zNk6#x(3Q33x8M6g=QfCBSp8;UWfXgb@neE#^ptQz{=0S@b%NE-s6;>EbizR;?#$(* zKMTT%H z^=142xYihDJ3Dm7$mz%lpfyJB0_e_+F_ep?B0v)~3^k5{V+2%oteg@8monbkS4Yv8 z;Y(i=!B4tAI8weBojOB?--eKg0|?LTwkQ%cF@PM4#*tBsrCeO61B6EfOGHxCyWq57 z(sAxUp4L)xbQXo29J^ydP#{r{SbxM7>?%Sa#{O-5vAO;1M*WpQ@aG4nkyibkNcyPfVel$YPJ52&J}JU{25^clxH z?aZ7z`sm4V@8|At+}}Is?f-=4^3Q48=X6EZG}AxQ?+<=V-}#-p9q*si?Z#3u_vy~4 zLjOOs;;qZqka5?lgxrLfQ<*#Pidp}`=6U?WLbETZ>6w={Z2XYDr+0f~If?diRNBDhWUC+R54IgoTbhW>b3#!$|2d3C{ZGOWBI`~ri8j66)P zc|~#*B}UVxc|mc|pApDB);Sx0S0_*#Bl5j&df?d633(S)0y~;69xBYhVI;I?B$mlF zaZLjvqjE&T(IY>h=m`q+tk_ljm;?7 zoK?3=`~wl3^DopH$$6s!4Q+Z(*LpBHXw=`b+0ly*s@6c0v<+(;=mk?cDGX;WPz;Ou zIt2_g`qM&Qz*8Y0%FZ&w;8YYaUSZ#jLP`PkB{0Xo_&yIi{sK|XAUe$H+Bs?{uwgJY z!jXFcB|S5rq*Y&VQV$|A0Sd!8rh)a&h{RYlO2bFLIHETUI01ly~@z1!{eepv5_ zXMe|^A3f;p{k*pLH~o+|%?o`~r_O)MNp-gzD23aQdBQY6u6FCVJMkA7NG*JwRE9$*sqxT4_-;gZ9SnUbc z0y0}vWD<@`hE@iE74eKFy`e6(7Zz-JiEV0l=$*OR-@RWbt}OIk!)BFwNzigOvx7gNVw012NI)4UVKY7ION zeU#$NcYIwc2bT3HreBwQ8PQqfrCQjHzmJ#zxA{3cnkpNgG2e#Hq?}6~-SBLgnp{E1 z8Rf_s?w=g?-+Y%Q=9;$q6}_mF`J8Yrem?H<Uc}kgkshK{olQKt>IJt}ZfN4x3zz~I=7deF^ z!voZ)Ogmv8lQ`6cE$ISX6qy+1jIO?Pv$+Zss77Qbg87!!A7*P;$x*G$$-i`b?X*J2 z*vazk?d`a3h7~zEkNnsNy;X;liz$ z*X@iKRXshX-aj#fi!(`;# zk>saPD1ur=xR4Q03gEhG$du$@7|e7V+TB*gp-#%*(YbJDCCSdda(^{Lv34%EMngeo z4(Ai5D(KQBXmL;z_ojWH?c+Y)?awKu96s0)O-md|2UG7aok-+RqaeA?dHS9l9sjDX zI=Ph3+n+H+b{}rNR;*uP_EAavQh0@fA)#zIgUMUMcu!X998M%zFX#w{Ba-r-Ihd6EY$rG4Yx%*F?;+sLGH02oR4Y_DdeY zxfU5!)C1^K@5M6|>e5QtvhPGla`t3`93()#z~PY0*XLC2Ln@#w0SHZCmyR3P3{rs^ zLXJ4NMrzWfh>UCIN(Y_WF1a51t4K%9NnfrVt8*d*-B45uqW*>Z7D@no*NJ#H5{qbs zYZ)z_pi4#4AgGkAiVFXuPSVlSZ z@Ag;$OGOeqRILN*thT5k9UJ?s!zqp;jvdb3-yVsoeDVE$ab#SnDw+xB*TQ2p$)PV; zcr>xkISaA)@l%8RJp9Ml!Q6+NE~D|M5ldth>7qUQbU1k%@KVBLx$^Wxlo8ldaoe_% z);&cufMgi5gveMV^Uy|A6B7&hZ2#TTU?caM=hAdc2ua-gpAd^ljcP>#YS0< ztlL?#bAhHzf`3lYjt#ZGYqeuJax~B=x&&hLwMU>*PA42Ekqpi(bjN_k28FbMF?CZe zU_V`-!vhqUqfREHx4r(hk57AR_J2Z=CC-VSFx*?+?=2GnaNbC?06XDKqqjY#Q8Sj5x31SVp267b_Q) zi#*pnKOqMnMG#ts+qh%kPGmIP{#Fx(oX8P18rtrN zJcS_`Rk)klO862hKkGw<9kR6glp+SdhY`}hyI>kfqA20Lu(;x??DgZh=4~H*UJ;R2 z!1^5Nk(o}^jzH<eK@((^=mrfsoE+z$Otv}K*f1V6>o_lH)}fT( zYIbr-oGTEK&H-mJqwOGjP)kJmhDd6XFjCiJa+1hR3m|QC>}UoCTtuVfX+XD-@{g#a zKu2Z1)cLy6&*~}Vt78~An1{|g0S{{Ile&h~Bssz&uVOk2&vx{%2?rEWT2{srg<3X= z?SMF$8?J;ekrL0Pb5#tO#Y80L&l-R0ILhWFO5tB|JoZ|~+9n5{WU0SKWw=cly4klkgYmH=oJ&{IpMr?y&XCjf@29gSgDML!(q4PZu3l5vL8*BP^ zRK2?%NCt+e2JuT0_TG+YL&nCTnT#U_7n&{lU?kG%Y64B+6n=YXM^<^!D|@RI>(UD zN9OYC$R?*#E=CMZ>c<7HZofbdFWN*W*`$8fh7q&lh&HmQ^M*z{GY?r{ugufb`JrKS zWGB@ULh32+Z47;tR}~4}F89LwNq?`4kK5zv89g}of%{-uUUj=1JDB@$%LLE-?v^?k zqBE74ZvB9#C?cz4I~Xs(h+N3UWXHmg3duq@Q<4o61)fbL!)o+|dJ2rhH2Pc7`vm&! zoFI^otPh%}#L}7szjs8`5)7P7mvPQXUf0TmK?o;UJC|YNyCgI*P{2g2K!J?F?um>n z7ej9rIfh_miQ21(BbsVSKTGPzyP`5vVNVhKmMF?N85}2$0e!RsoRF>|`^3QSs9Ha( z?K|j#l^*l1QBiILF-u=h9mDc2dNB^1VX*e%g>!X)=o}c3Qjv)kXv{=s*{ax4 zlwl*mk#eRO71&z)Vyv-9FqFwkS&_h+qBz5ka%xn>!^kpam@zmf6ZsXQPs1zJtHAhj zZU#ri^B`w|k@t!}I+R8X%Y7mL5==QSROCqT5TUsi(J_vO=#Y zLtOypXQ>|oDE}@-7U<3Gor{4l#UKGH zF!$k>edXVL>xPWim19H<9p(qtY{vp51~rzIK1p~g%nc|j5iXX{oaUe@t&VsCuLcpD zp}QsW9qflOVPR-YX^oXuKUc6(*-;`BmqG(Pi8N8hBCDq7ma1#7}G-iXNBYOeSzwWp*B&24xFNy%NY(?QC>+$D}e*$ zT{bmlRtzQ}6ldo)12U>Or=)l@Xn-CZ2~a4GFCvp*h54nSa%@arYzJGcC0zvM6g3|i z85vU2m`OYb1Cg2$@?I3ZD(cj>sC2U(kei(@$7j)EClllXgG(hp=L>wBpE{bUokgAW z=A0Qr?k1D%ry$pn2!m^1=S=G4eB_u~#cz%q* z?knex^JBV~lpL^_skg}moEB04_&%7GSLH6p4(7hyw*FI+fQZSDV*yqXbcBP!NMT5+ z|LALVo~zq)s#sr84g!HhcQ^ztE5E_)O$!dQ7zKHv5+mOaM-1Z?gT#k;SXT*ppt#5z zuzE&h@rb;Ubk=Yp-9;tfVRAvcRgDNu%5a|6Su^7(ATsJpU_(U%FltvqEdcjQ^?PcO zv0BH;__`EFh;hL1x(262P)@Lu*THni@gh;fu`KgaR>MGhQD9mg3K<&r_0V@i2|$qy zQ5T&Gt)>tXGMqn=8AYZCu;WaVgn4mk|lhIYQ(?LW@1^USZ9uS@v4*D*U&AzT7trcdbJ64#^Mr@8+ z*^UTI&*CT?HcH1$hnNO9jd~R07K(9kf&OV_uo-^G;7C!OaShUq+l*s9^rcK+Db`M0jqs(_CEYh(#vFUa_iJ zyC2ZY!ptD(zBKBHqCB9m6FC_4$e23Ef}?EMJt@(W(s%Wu_xeXRlo$B$bIpJHuRQL4 z>o~p%C9#hu1*;W&I-#-@!>pr~oV58_Oj;Rh5+0&K!$O*wS3%^wAebF;>rr&+awiLNJ{ZsGY2;}H5dkqNq)X?OFwvYG zS;^b_?qM96=tnq+F5z2vM#hE(0Z`VW_H%Utl1i9~JkIGU6G{R#WL6t}=X{37y-34E^MUdc zg`B4y0O5Ih`BtbkB5RF<)&j15iEaGsGFR-BBQ?)YQk8EJ$1LZ2f@UdmfieOwkft-5@C1qB)W|l#HCAm+ofX{Uf z^tMm&MBo@#m6HRKftgVf{QX;#&Ch(`ii!X=IY`J$4IDO8(r z#v-F2ugqmE_r(x96co3uUN#eQ8a+W@rj+Vj&Rsg!OvzEqsdWGn`KuSic00GKW20<5 z(_CHKY-Tjzj#kV}U?gXF(es5qIJ1J+5T0~x4Ng;k@9d(Q%nDoZor)|mqC`*3b=Sk- zbP8zz`Z5s<&dcTp*o+(o4$@GIb&hQyrp&Ag2&5xNhS3R1H_|KN=;32PLU1%h{}#Qk z`b#Nb%S7uphjn46$pA$Uizv^FgScPhTA&d-3RJ@%I~(?|gc{QR5m{k;lbRcb(CWZM zC?xL-A;D&@K!Mp2({(aAc8!G^ml?ClNbrZ_qZg4i(O9Iw&cjjIz{>Gxf3wiyG1OK4 zNDXUoT%LnEIH*_iqf@KSwIs2kh0C%X^J#^KHlm30r#^`y;M$3KemF1K=BnbF-1=VY zF(MDgeb1awo=@#8>-St#>3X72n`qA`oD9bkH2DwjlSz41?sn{8?$d4iPrm8xgYMMe zS7^Xx%A;6AVDZjz6zHHM`tYK(!)BD1m_pTdZnAl;CCesi9zfLoXlA^=X68XiR`iVA}96*(MU6jeg780fsHRY|rU`-CpM zL*569IadT9K%(3|?^&$}E!nM+aT@xM=n5lGv}IvS{fF~#o(Rpj(#|?^V!&cJIO=yw zzxN9N&xCif0NEdXarn*ty|ULiK!iYAh4C4pf_9)-ukF~!_CdtBjM;U`bkm@;|;l03aXhe3X6u6hIqtlk%$E?byNG$J^HJOn%?Cj3+e(NSTj0jQVPX{uJZ4Bm6Q-7(=kzd2 z^jD$y^MjiQ&6|GrX*n6?H%#RX<4}KRh@G=icCLk@#8!zpCU)qN@c_Y;+E`!nd36>< ziB{Wz?vnB`i(NxwoF`TKWQ%syfNV|(M^H-x)iY`*{EV?BD*ycOM*`e24<}L*e#WDIPRZIx0#MUCHl|o)@iIhGki+ z_-PX3tXxaNHN_4|-n!O7D`wh_U^r!9uk|M;KPiKtprzo|FwcNTiWnsrKN|xPAyxn6 zi<`|)yyv4$kA$^y2DJqLS;k_N^;55^F?s`G(o}^{DY9C*sHS7*y3N8$SNW4kIT%GA zCd}3mekTpW8~_#640JnZTH`+zw2s;xKUxI0)zA7R~{mbr+VK-+z9+`L#cKzVxt&oB_u?wuDMR2Q^(e4O!-7 zyoyBv#0FT5FRgwT&&|uhoVRhh{K!Q`BTJDhpt73tp_oq&a{0oArX$82kQhV+ls)F; zU|?qQq!uZ6_A4M_pk39Y-NIwXPVVK32Va~uHMF0)67cAY4QvO?sCE%*>}wVNHvaVpeEyV z_>P*gOw295b9VW{AIMwnC7fkejrL6snLdS$g|6$aj9Mp?mpITizx&*J^WGP>WVluI z=sp{Ya89TXX$?v!0LR30Yk>mY#8tzx&>1qCjm?QIhS6P6Ulw|uoWHPYxQp-Y?Cf}@ zz9uM*)gVQddpo-}Y(R)}%0p2bgOP-~&15D5W7W94yyRBMjs|34k%@uiu%qvLT#Sh# zQ=+Is^L3j683vkt5zR$C2$m#_PZVWlr9TiBjlY6K0W%AO0vv|S40PZaTR=nM_`}fz z)THedRT5#AQVJVuH~7+Tq9`{CgI$J8wv!1(f*?yp9SWaO;ZJ*M)S?*!&K8wvQ?$9K z#i(NyqjrU4e;8MsO;q#;?by){PPOD~5Y7bh>e9+U+Y@~vRRqK-c*hYYFrZX`3Bfl3Znt-EfVT{YQ0T7I)0igg&Xshq+#AZE03$9a`r#N|6q;p7>(w>64xGyn`_~Q-zf7ov zQ=?-hP6nq+E`;M-LPxKj;64lsj68mzlta}s`wypQcqxi0F<^F{g7~&LE(TfGx9UdX?nKfmf@ z^8LOHZcmimeL1m#V5Pn)$QPHEoO3d^&-r6yrG&h8bH@Um)WBG%Q3lSi6}vY)NI&`M zW=rG%KEqh+ty>MqpNsy+sMV2GjXzVPW713z>6p_Yi3UWRuucw=uVtIz###0rD@b{;Bz(P4TW^9aMSuWZ<2UCeaKmqW$d4U|nC| z6#g#bCOGCD?|-)Wk#|1no+eDDj9A!zo#byPaX=?PPsqRT>s+vLTkBiRrkuvU9L%Qb zTlS?VhKe%UT|`xrau!RgE6vim6({*`+}vnZRa|NtZ(|#bE8sE1J#t37g2@;=hST*! z&XXLvnjd8Z@)6c4laau|Bx8%Ql0%6~do&MN5y`L5}YiLe(TN= z0N+7n#tCcc;5=~P>r$c!#480_@Ey^K0OuU)_dWnK@~S+<*ugxY+qSyg`H{W~EvdohcT<9H*I~-Es>~~5s)#S(+Zqu1DX0AMLCwe(9-_!Wa7i~ovsp# z@gp_mT_>$+g{z2SNqGxuAsmsE)jKO?H)FFRM;)3bt#&XKOA;NRq$blr(Gh$Id9p{jtv1VSv*GDHnMBw-wtgtMa&oFfwL%d~Ew zN3jEmX57-*8Dt`p$ZL?3v4ClbQh?^dQBWUK+U#l@A{%6NhzaZ(1xwwKqac6A z_)NfvOp+r(0v#tC$dLibQEwB_Wkhb#8PgU0F3coJ9xbJD_|mKq?Hxv(w95p)q9DMw z30ksMiBXr89_a8 zmtHHjmyNaF>(DEN6{|k^#rJ)p`Js3Gj*TmnV5~CAziC{Ch6K3E8Er)kGD`bO;=8*d zMo0!~eSO!(iRUkzmjgo63mvv&DJO5s>8$IurHE~zxprg2%(<*fN%2Zx37A&EYCu(P z?nM5AiBHiYxfOkey_lABCKp2lXIPOHzqU)(R;=b@#qY$la}!}`vnLDZVJD&e;rKa^ zBSnA~oYdGUk|kQQsnvcgwy9$r=>A#6RPRL_0bLhJ0CsxX8UHif6xSsjA#5!nD#h{e znIi!0FX28X+fiIFY)3=7a3m>!8dCmkKN&}+WrdG=fIE3=zbsBp*bfU6;8JolIv3OP~*QSXqLPXUk>yTB10Blwvj}g^tN-zc~z1ft*C0Uz3j3o zCsLwCZ{K>RI!a2Xlf)RF2g~o2h{jIHuiQf%W9U3ePKAF*yMq`@Mknz*oD0{P1;jAN zb?T(zA|lax{nG5tMn9+0a#c@By!2@E}C~;y11gk zLq#;YJ6)|VomZhsyyOZrF|I0tQNQo@XL@#a!{IuU0*J|-Gz%;S^%eNUM#f8Z!#JB; zn{p(w{xUM;E2gAvwR_xYe*5EV&70r-w5ZUqa|Ewdi?*EbOu{f|I1iXl$}O>O)R@V| ztZk?w9)mflIu>n19S}7?*3l_sPY@?U+3G`~o24Kap&@3%h z(%Od(VpU*r8il$`-xz9rpat_v1Sylu2`h09e8saU8c5CZ$&l0;R+fFyP2# zS?&dEY&$s7YzZ2)8ZvS$I68zVWuzHbP^BS5Kua!t+l#ylH0(5tCJqoWRP=D(!-<81 z3V00m9dHc}CzxW9zzHC~}}tSL8;tqBj;E@D7qO%PXr9QD6{?uqBZM z#?o~?&e?=&H2Z+gnnok4!&L*~j-wbI++#QebjUat=*bi%iE3`$H;aUld@s=v#%fni zGFn?lWJGNckpmDIg|9>{Ln92)qUel4e8^l6$9MBGM?rC~0;(}j&(8!<4WHq3fX0H& z)}C81@FH)M1~el+q7+~`pf{c~U|P%5b3aY~h}P8PVD?b?HpHaHXVB?&|A>Mj&lSeG z&S|6pZXI1blXWg*2yaz6n{XB_M3vFkS&X!NFZXF?mz5VH*EBp9cdfvr^%fb&k} zW3+t=xeh-oQ4SFwwM*__QzCssmF0MjUiW+7`vA?ytMX7|HRT6*+q8;*Vq;(WT5=u} zGN{m&XQkmaD=8EVeopL;XuYeFS~Q4WWyI7=svfiV^d{^ID(Q)KYOxxA^x%sE>ztX%Q zZLz=p=l(5?IUuH7sYW0~?goS3F-uHqSts;?T!7zv9G%-sgX!jyBw!|W&hv|lVRT`+ z>Ho-)bOi;vi-(R))I!C4N}}KpFsS^Vmow&vZkX2Hvg}DfXq+ShpKjhou1Vj)p|~Pn z&M9&SrIDJe@Pm~VjJ1$mF^qI2ukuToFBzY#rWYU-FKz@I~ju%$XZy`d6b|Nb1zM}P@N6;(PRay2k2VLu|r@8 z?XqZGW(_kh1OoT+c!`dW!c%0X@$D(9>}y;sVBFZw3lqmeu79EF!n}^zb*_rx z7wIDR7K+72ohLbSDh=T(d!3>48AigT28IuEUr7zdfz*qdgaO%)`}(}hPwPzXZXNAN zw-9T95Zg#79cJY9eBMp-QMso#zT6l--#@>*EC2a^mG05`f92o$xiu{y->ce{WdC#ZSjx_eJiQqHZ5gj^t#qBLw!xlwNe1VQ&wl#T*G7k=&qNptOxo--nF-T$ z!!k7c!nt1tGxY}Eh6Dv5e%YNs|&F0(Q_U`7XXI@lt zT)2NJP9%vUnVuC?HkdiXF0CEM2 ze@x%@%39yu6D7D5VHablgtH#gR+f6KuW(9Ym7z4RE2@nkFP0_1mmUF z#$u9j^%#Rqo>$VL>lTHRs==`nkfFyhkSD_lX@!qt@HN%-+16^`?FGXgzl;C?D~(A+ zK~(e}9U{3VFa)6?L#;Nm4O%b}Xo0dEp_E9*MiQs3@3}!)$?ss;hTS#U4`V0)qE|Gc z3x#XO8O4s_EQgRBaG%DEa3#+bmHNdfx}cK6&^QZeQT|SQzA|Vsx-KVM;7}5 zP0nZo%K3$($Y|P8ldf6F>Xdv&ftd=9sLjbem58Z0naqc^&oMWp&FT0W6-l2u>hJ;w zM~g~z>dY0R9|LG#zRl%$^?b=_rH*Lgn$v7fksQhzB|nqrG-MWf_quL-`+r|&9^K8x zKexRCV+ZqqACB4ClQ(beXhJLB(ox=J7D*IVd76Z7Xr%`o5kgj^P>eBZmXilUIXrx; zp6Q=IYsgw9U#968aEIXrrmOLBq6{#3zs>Xe_Bc`x%R%2Qb^_P|R zv`7XP`H=B>W@pfR=Py0kJn?~N6cwqLjUuDtV>t^IWzJ4$#lLbA3^A7+-)3*F6^{P{*#=Jm;0u$o$ezI+>R9HaSyl# zL951zC_-XE!r1LR0aq!g)&h8(h3KGX31tcLUXF6iLX4Gs{1k|?P^t4BI}jv}U^V)= z44EKaz8`ueycW)8_)R~*Ls%`3Qlh;fJZ7?e{@0Eq+*H2eJcf?ul(QM0fX7lhn^EVI zpQU5hv-d%{@NrYIyRe;Oi0m#d(!Jc|WOD9JJA=vZcw}iwwUH!oF+{P#MwVn>5epMM zIz|Sx!=%*1{l4Db&JTS2%GIK{czRUY&6iMPLNO(|@hPvyY>^BRVK`VZ?`r>sXJmxt zXmt!j3feR)b{UUF!7i-W2g;QkYG@dvnbH>EZGZT28L-LbYrf)(oHwyymtpI4m*hzF zeVV7q0MClrdTvUI`&spNQPusfWH!1Ns9c|E)~|2qd&2eQJhmhdIV&fVhH;?PG>(VF z`+^}inszEDw7(NIFC@xIaO(sYrE><1fqV>=`k8|X1BSZ@$SN2?;dJoixf%|35LkX` zv0HS#+#giu8LyO7c(jwjOya^DU{_Wfd$W%!XGfo6L&CtTx$dM5# z1bZ)_uc%5YtR~LaEA&`Rr-SjTy+nl2r)hf-ke8x6z8ttsQQQtSXbMS*p19{GWZ>Y) zJ83}x;lOn`CU+2}5w!qo>ThYn1x;Gem=&Rkb_)gDr&%b=K5pw|l95$El>q^^)Z^R+ zrqy$@C5s?4;onl6BT74qByguWI+}O6-L^F}R}%_y90>_30{qr{X%jw|_ce}S z9`N1$kN&rxxgiwl+Kg7nSPfQ`PGWi@7AX%+YEy6_186HE6Is$HK6d5mCvG=f8O+Ds zp-&sQRzt=PW*2Ow1;I&Fm$Uv9Q#gbZb>}afKi|Cc(o0xG$+7HPFN}!~yNK3+Ke1TdA$RWXYn^Y&t84(mZie6^bS(2pwK(!-RpZ|uumonB#gU+nEHwgF>YN0t z{BFGwEr|z5#hv&d6*Q|zaoDV28?||C&%eyY@sO+bn&2XJ4+$w zg|m*xgo4cw^-P*E0*R*t7^?^d6Kyg9j4(UBxc58lyL3`26pf|C@Wl5-J!s+uGW0cN$j4~^I4+oE z9d&|S5Sxso%+~IXMI+~cQBVWc_9Wd;PLxbn&H-rWw{9LbZqQqJR1HBo!?vCE=C1CvauQ{{P6ZjqE(P#a~sabhV+r0+|23?s6l@eGb> zT!vz^t-lRbV&OQN5Oj=|!LGoh*1mH$x>f9-!0qmk7vr5O{yC7qX$2Bp&uSJV1a}>TE5eK+!gPCr? zU^JuSIMEk~!E(O>?$T#KrMiozZUcF8en6;&B0TMmofcg*i6W$I!Vx&tBZs&zC&_nF zg5bA;S3PVZRVZ@g+8pUROzE1?2yI%wiC`H2G>k1|QlV(`pQ+j{qtGs=g1quM4Wk}8 zBA`WxC($-Ku1PwT(PVl?5^?{^^(zou=1T5n+S+NHx#8LGro+r*)&zraO0+vT_=m?Q z{lEpsKQDU)#t!CXFVVfqt>NapH=~&1S;Jsp19|j3yiKrvnBP0o2wWI_;h8{NCzV@*wr?I5mhXowv zi1z!^0@JRxdoqTSZu!8CUi0?%J*W2-@i1=bip?#GoUpRsBr*-d_Qb#fmih93{flk5 z_EkLDmC$BqUbJkD=Rho`u2#y_Y=qVpo=#EdZ4w?yuPCt@j;1PEHjr$&ac2_cKVXX zp*=E2wtPLLbuiq8>4ohs*B(cMgW&u!sxU2C+gOH#V;e4W2FT-cgj=UW?mbkaTqCI&Ia#j2tFewyeMPTG*l0Yxl*ulJli*>Iy zom93o8b`^nf|CpKF-yoxY;5C^CiRRe@n;4r3zJVx9Pa$1I~`jSVS*&CWn1VgZ!pZ( zEDQj!2)}`e$S3IUIpsE}b68qlmSGX3rOCt!7534tA{LVT)Z;8K&AUru^cJBx6-~Tm zn-%3qo?6>$e&lyQ(A=a+y;i>$FJ4q@W7WGXExUk^0|C8luHBF%%|M22TaCz873pZD ztd;XK&tG?gwFALu6ZixoEbS{AvXO(L?@2JYlEuVzLTiod6a|2svmyo@3(Pl~%M@i| z!un;ajH3^_3xWVD{!-^k=JBc_YbuuC*kmqnhUt(`4F5p}Y5CI`^jdTtBZXkzn zXRxo#S~H6;9H0#)$FoTbSr?W8X0hp<+=hXbyoQm6aD8`Q_l;hf<|OdExK#l} z5Gdx+dU}ee!%!CvI`TR!f+Cs-1DuW~pHn-GcNU3qwTAmaWv|pW(L|a9Tx?k$S6@8 zLWFfraxPNN@61>utLh{VK%$M>h?yg8r6D^H*#4N** z+|)6bRNF%FBDoq%5fX6~~McyKk?BPHI(o1HUZ6J3Z<{ztmFEWV2VnuHjpp9v5c+1n^$b|1<%p=l@ zdY)*amG_Iv{dQ8qYu*TEk4cv<{iBA1wlC6@c% z7w3>-qCw$Sg!rMO!QPME&9TPYv{zv4U>?fTa1y*6%_~-w)|4u6Lf`}^YO>X7UjOLw z`eT=t-t@9VoSZzGoSxia;sb?*)OqCWpy*jBAEktv9dUy|O1XV6hO% zdTV15`IG|D@Ot5xEOTQBE}Uv~Y7918G$X^@bNq-Di0nMdlHam3;QDDl9-qe5aZ81W zFc#H9f@^Dt%pp=hPqnd6Cy)vWqMhROa$CNiT4`~g!sO!S&!qflnJ3qblazp%y|Ng%cxQVun}(ZqR9myNv8BE+`_1;cRFn0au8`X*>^xBZqNk{2Yje-h(Y%_Gkpp0C3)&Y& zbgLSVjkJ!*O50G4ol-;|6ee>0P(26(%8D7MQ?ngEpc~{wtQS)lDlxpT1|IL=ce)&Mxj_79@spa?w=N@2rF2c+swa-{FY3W?eUC zi|b$qrm^xl|DGYyukWE9H!oHp=Vy2+b1KCEr*Y5Rl7~M6nbi@=XhOe!wsSk~PevE@ z_UVx7DCkae>g}C zHF!p~idNC`IIS*c~#Z> z803Ae_@_i;UO7hsKdQ~$nNkknU`y?iX>wKcuomR3NJP)cxUNV=+DUcS|1{d~PO~Tl z=(JPJbE2218H$2J=*!j#10Hkx;w;SLT!A)<^b1D2T+@U=h+eW7(T>MbF(KH=i`+%z zK%(#weJ&gve`EAEMd>xs03)bZ=$yqh#yPpr)e%TxyaCmbH)26S^1e9sAS^^pNk&sy z;Ky-n^vKYeffdmY#~?y=(P+|teQ%>Vo%1?{AP|cdidM-z0r$a93=%=E*aPk?^-PS< zy>?Xh0=?L%6_jY`>XDNvZ~A!gaSMTEG(*Icf42rZ>U@A-8DAZJ#Pi+mhktQBxCS*j zpv}u<4u&xVOU&QSKkWE}>6Slnyf{Yv!~VHGp`a0|mHM3WZ(Z|my4!g;-tP1j7#CVT zgeOAD;ukP9LA_-~uH1y?0LDz%j8?$2GQfM!pUg~u|J@Exa|(H0C*%jR4nQWx;hC_& z8D6SV?X6>#4vS1VoWRA)kGKcSo;q4Oag40LFnA0e28i!c=!kY%UykHZ29B|^1}CXL z&`OxL0MpYjtAK%2u&I7DCo1Zrs-L0F%8|_ISSa=mw0hs)Q4yx{OcUA`!!|v$K$VV} zOwex^rWd`k$A-;|%|=3+?c5GVD$hxad992YOWh7oH=W*|A6+^NJEt_U^Ix z(HHG}oR(>$!7#=YovN5rT4%;RePRi#*?flqw*v@+ANvT0?k&n^b=1TA;k07e;VU&{ zcomjG*`N2B-ljx@x&Joz5>z-y9qhI~<}gRb{`Hb$eDC34@7K%OjDNktD=>~=Uf~71 z7n^Icd0lcvoh#|()Y#c&BpnaYoRSM5-OTxR^2j!+2%R)#=;1>hl)POS)Dd! zkzfyEMYIn_!P#wu^)m~x0EeaPKvT3-UuLh{g88CoKQz8VfdGaYbn{^65fSmi2)lV1 z#?ky~jTNJ&<2q82Q|Ks%l$9C@(=Y}{Fwmhbn^SbLN;JXeNn?(hpIDu{uoMUp>b9K# z$`H~>qn{4RYg7vyz36^&y?pbJ{x(w`dMKS)9W96%gfEb@#nX{0%HgB5S|V_x9dazuHFaIfp&^mq*jhQ>IixD z`76J?*W3S&yC2%*v<&GymD#Myuxf5>1;~PUUx5LLYNCgIbZG>(A^F=?qb^`AHztFo zt8IdTrahEx`!eJd7Y5uTNXB&D$T6sB-#9%mh&yVcV60FBC1oHZYA0B&QwPJu#;9GF z6QvIf`c?@Eb(H%t9404)(YImI5iJAb01TRx6pm%UT(d(Y;5ryVDmLmE4rJ{^g5Nz~ zTwvKsj5wOZ;5y+hxqh81JD*oAkX4&4i%(R;GM|FOqWmnIOyBx|&Vrq0W2@g>KQpnA zq$wl=SbU}hV@gQn+9yg7~}=+D+>z7H7n-d zf+AX?Hb)`h8g6+!#k~8ixw(ZOqR7|qZ-IbsaTY*+K!0Ts5T9qr(>kqF#=bbRJm{#? zso#G&M?_CFnP|1*7TPH@7#Nt=^s>78y?&<(n^FZ}whVYj!s` ztr134hLK@4%h9$r*PDGM{`bX9JCHWni!WSjR#YRC7^#iMns47&FiNJ#4WOr$!9mR(v_}zlpIf!iNh2aguzpscXge}XyIgSi91(x2I z>oI`=b#Ju)9u2ubcw`JQ%ESa6R_sJ27%kIu0ABjw79X z=95^saDk)tCZf)C+@n+SR^wl95s^^6O-4fXR&{igFjyVE)PLuA1rh$A55YWqP91XW zU>?Hl)PsAor`113444RmaG<(}kA37b&F+nD8NJy*^NNNg%Oaz(=w22wc=K9OV*oK| z*0R!z6*Yx^OlT&UJ1oY`Y%U45TDx}5)#m$3o@4M0*|174MSMg)2k2JOZWl;M#^+#L zmH9*`RL(;gmI0g7@8t`tO?P$4(FFzx>hd&wX=IZ7`VNVCK@ZL9iZsT+!FBFCyst4X zNF37&%V>E~fT}UO_N72#Rsb-S7>%qLKj&&EKvd{@7rpFQBHxk5BaJWLA@6dabM<;$ z`=Pj!ee5er>x(6af-+JzDMb_YD3K2#^1}$b?Q+66L`IMSXe&St2WO#w&lI|Ecom8i z3uB9avvMxRF`Z!2iphO3o`^&O3L7pA9K8ff%rGF*{N=uKj=-VT8{_PVzT#3RV5-qjrulhUyCFv9z*i<9PYvg=SUG zfi}ietvi2VMi0(OiGLYSAT0j9pj<`tkqKs+Rf4rT?#MwB;0Gwv;O8+ee)B$njW79@;N+4*J{wb|EXt{$5`B(oH=~MU;jr>e&;LMxh4swVGjd= zW5MVXVbB_x+6EHsB(E(QgCQssW?BQ#&5#L)-WX8@tLA0N$B@&ovBwyd$qRXa&lbcO zTU5OYPT~66x+4!N``ubsUxDh3#0m*w4E-e0l#Cq?WJa*pq1$HSU?ga{PqYLaw%~$E zAT<)xYil>Hk%r+rP(%S_=Y%zR2Av;}9Zm`wHPmFz3&)p@uk1v89Uw|ZQWr7Df$|V( zq@2iC6hm~@6KrSc9z|n555B8=160R-qOx9gHsoGdiECWE_?wN%-Ov;bCqgB>BZjB| zj}`2LkY>56xqba@tIW$^nyK0u_~ zYw|1+^@I^+!9ZCnqy(IgBQEEL!qEbq4XfLA{?teT$60(;QKTbYM;_J<7(SxIWcs9t zCc~eTPaO?T{zpT8RT4jqdTw@BB0dgN;-q1IWau?+Gc_`>9z24rx=t+*HuL8x7f8uJhdpvRS$i>B9{@;J< z1ApU{4oR!HgXy`cPmx@mDaOyTCk5Wh-ZIe*5DINTS5)u2`IMV|0q;zy7Ut3rqbDDN z))n|XiQ!B%16R!;3nKab1J%A9XbHI}{jn1?y)=D^xRqmOB4q7xDW06cAXi)~veM}fLMv+Cfhy*ar@FY;HGxESV zxn;C-1|iiFD{(6C19CE~r!Pd2B9IqN!pH|96Qh?Tr$S;TR=@$%6cI}DIVC~>PDG-I zlX1H-IXR*YR_iWQbfgt4cr*DTl<-)IQj*{hh*?`5Z;CLS1}DUWz2zJZv~MgS?>T?L zej-|N%VY{6OLXBj0;S$2ptNAh5#b)~{!%{V(cMMo~8v}bki9@vCLk4MU7UAehK z>}KfCQC#H&(rJk7a9)3ZS^NARzg^Dtt&SW~89;1ks0|k9TSpMJQ>h(L?EiGMaqAoj z2NO|Cj4_>;nUE%PoQ}GN$2he!QPKDJ|IRC&gX8Vbz5-(h^N^klnW}$$b^SmxEo;rk zKlRehFMj;|TTkYW|H@}GoS*#qKd&V)tFG4Y5ivMdfN=w>56coOQbQ6lI5H;DYyPM? zfBu{z22qT)VXTrv(~RF3NmQMQf(-BI-`ENEx}_+H_PfrJ;1IOxmswRpADT18i~CJq zl;_KjJSJnMQXN^pbvc_AsV*-HB15)h0flAB_6G@Jve_1#=7cpX>@r?MPELA99tj2; z{bgpQqU>=3n<<)c?;O)^Nz%*7@G?y|j1<<`(*69&K5eX(@K<7gS7V-l9xa>OmxO)L za;dEulD~p5Q1(M_7&n8HbFp;3$pqolAT1DB5*0+J&QK~KB8*-&5p@NHJVZA${}P3s z0R%;*enb%r+D^jktB8;~ayZsO^X)AiDZPjYsLeSp#-%aPYlo=QPE*I-c2p=zyOo>^ z{G?;R9)pbsZ|eZh~h?n zvO+)KuWMjx$n4I^e$KycArO1Zdwl2brgO3b`mp*^yyLT(hvV>5|HZex zf`=n5_sW z0xwauNHL(KCgW{r=vLMKIT{uQz)# z)FjZMJNLyjJCL#7*xC>UdqeN-H#gU%s_c3h1UX5_qnxbfVoIvdNEu*mPP$~kWyZi* zeM(|R3^WJ~tjZ0R6lyY`r$Vr$Tm&P<%C!_U7X2;YGolN_X(gGQtR)OSwCiad8)rZR zF6xq$Q;;KLRZnqdh&LK~EK!KrVP5b9Gr~ZlhD6bw{dYh*Tocy&I2Xnc75YJphzmY#+2nksY*|=PI4R+ji#8R2@=#G ziAX_|0+S6V1)RmHxyOu-V=XWp=ecXTr|Jjf{oBFD^OU)$`f)wCy7U+37rQDDo_u}0 zf2jU&Q-4M0dF1xZK(>XdT|1N{Ib>2l9ZMVG#P!U7kLGIl%vY*JSa!CBC=dm^w^EUZ zxfpzRf#f8C^h2M;^c#QWHdkO=$^Q@^jsN;P-}$xo>hLlQ!mMZ}B_k(;hA}!iRNG%x z$Yn*F^&M23o8hF2^c|sCuz}GJd*+3!&1+RiX`^Mx2<@pT4xFQTnFdQT8`c(LkW;dx z7~Nxxl`8R}A&cYH96-5NR5QE0>dJcTi3&lRo`f#9*LRw&y+O0I+7+~fdb9@K#i%0z zqo_syO)FPJ2hG6Dq_R9C1!ilI$#`q9kPCqIEQexkFd(T=dM0UMLkXoA1F83*MH{3d z$*%pmb7e`kvqCquSrOX6tg)a1M^r>RXCrXBv`ESTJJRRAbc^IF>A2L55VhbEfSe9- zWN@4d$pWJo`edQ55NV-ExchicfQJF)V6H*ZpUE&}_c-A`$Hqx%o4Ss}lwUc(1DyvV zpUU3~UuO}| z$lrxT4k-KcwECtqO2*fqNJ)|P5#kes>t(#_`aM_26(oc~ZHMRbBvGRIjIvkW7IYH}#}hExrZ8+~2u zBxD@mPa!+Q+TXfo6ebq9Y!rvD^BWE>aJ*a-D)ALzQTqZl+0PA4!CT2%;tXDXi3FpQExKIK`7U@OT&T75KnOVOb9<@ec)GEr}t9 zJU{suuL6fu=h7V!<3txm46Z(>!h0acFgU_c34>n{tyrs6av@&1n++9CZAG;)vod<* zD;{}d+2iXd(L5uqD@)zW$#msNaE3O}kQ8)0YI7`hsnupr5Z;OMDy+@v%IVr38=Wvf z!$h%-VZ4`6P88Th!WTvsJ#WxP>#0MhVm{j}e89e%ak)Z1GTFn#x5(hWend}5+B?xt z{(^0Si0k}CRH?W18;rww55r*r(FKEyE|Q@|W>%SgC(AF5Y$_#VN|Bbyf>9O^d9J3S z7nNi7g=04L7^ea8L(j#moH+Yhgg&nG0E&y8P0-iz9B#EuwB+$cTY(q0j+&jrFyz!P zK`{<>nmCsldS#ms@SM1*Klc_E7cVMr2UPY~^#YIm7WEqXC()>l4xkaK)X8{^eVvmT z&CjrXvf^U=NCw3{h<$~F3Gzg=p>CgzHdj?YD|s)()*E-LyvKHI>|pNk1$|h%(yp zNAfkQzfi=0LDR7;NskPTpp=#KmxbwfY>am$3FFR?dI2d>7qfEyf}Dx!Z7>2l*1}T9 zB9YYGY$<0G9TG9jI7hWw#*D}~aBQLz!$_hTTbNSgcApkjpLVK22uP!zD}0QmwY;<{ z4(+MX9!pkM=3pj@<`)*;)%etw6!<0N{Udoy)PS*eZiM58HFR{t-z2czuDKYyZ1}}- zvX;nnVCr5do`g(+Bf@yIKb!Gzh@3NqukPz(C=bV?vDpD>Y$59(qz1Q@Haw;=1XtZo zntM-JHgqcb7x$jroSV<-GZqr$uN*abVWHK(c5!tR$(}f8oGOr@W1dos89uy?B&<_* z(tJvtL!Z`y=cb}s9e(yvZS*ys8z+PRuD{p&J^mb(gD3(wH zLOqiId$MP{z%W`lv+|!);va+04^C)D4rh8s?;S@0Bt?SLT1n4!7o`e7a-F0^wDbj< z1BQZqh7mzH6HwhfQ^=jL4fJVPYvdzrM{Sn9a(BZp;v0>Fv7l*2P6kGS zg>CF;g3(5Vf`%M9JEFBI)gf(*@IYASh)pcuz+$33=5$TFzpC#bPNF`4J7J($@LVoOR9tp0m$6ue0}S@8{o{ zf9C;=jg_?(0D%AiM0x@LzJ^R&TUZ=*a5`vZ&9(ebLvN^GSTqy^0Ab-VQBDU~#6upQ zMA=sWRQe6v&u{toMMs!BIBjlY=fr4u3pk;;D$P^v2c0t02>vIryufc5yXfX6E+z{Ai~j!pq8vfV#Q?4 zEP=p55W=-&e~Lv?1$}-YhG=IRjz(|@K^#Po0*-(Yk;*YVOkggCfje^lYVVyt#_l28 z3SA5e;`2tjl&stJAN;;{>-!NONmxf3NSA&yh}#toS$O34JcRD!oqsNn*M0NNzX1F2 z@tOUnZ3y?X{wX`0bggTW8^PquLqUoP1P9jovtK59K!98g2pgY?8O1Rs?XM^?b#Fs29s0wc5s(P)7qEUl}P-_6-g+jaG&NpBnm1Co&R_c1dBHsQsE zp1;~gr_6CN9|Mk^?mzG1Gk46pZSgE**{_0B&hP4dO{ys8`50=P=sq30*#3O~muQbg zFWZXV4_^`sU;X{(M90gor~j56EG~*NRjUM3ePuxezM4#?Q$Un65{YulTW)CfdYZkm zXDz_*<(-K)FYe1m?uo9{9Bx+ayZec_FqO|2baqNdt{+I`VK{Iq6;YT$hoYW?P=FdK zM70vH2{d>-z~?3cgPHy$+58tU@B6;PV3omO;4qB61nCHcgz!|07QQ4+(;jV``78#{ zP!|#i2sPWhpS?s3%%nZK7mZH!OX8Er%!P=E22R!P=6o%(#_`32*;(V(~YF4!MCDDJ@uMcJWKv@~o>uS^Dt=tttGjQALa0vLH% z60#W26+7&tK1_6=A}M}K}^AM+2cAX0J&$gD&t2%^YNU>_#Icr57t zZ|mRZJ?>5N-=+i_T~T_m;WM?qAo=`#?y zaG{skFdw1SOwI@wzBg2Mx9x?Q{&!!IS|CW*f@V8K#1Mai2c{(4SfNFwf3!;?(NERH!UeAxVlc2D)Z?{*6K_eG5GQ`fjIZ= z_qC7lw{D*>oL#;B&GfN~>**#*Cog{%z zN{# ze9wvCa!3^nqO?SoP;eaO3_8WaNIgO%pGC2wAt?f}R23v5lgV6(AXRcOj5%bjN*K8_ zrBgo2vrJ}X-MUEtFsWW{2aYvsYoKpUPA znE}Q2@4Q?#-F8{mzfpaZk{%JW7h#_YRZWbtkd}}L_EfFNg7tH%)v^+075J3-dFK4< zhzRl=84XS))y@mvlZlZXC4_JUk}PjM6-lZf&t;K~rQl_cP(#zvHY%7lK1DqcV>2io zG>{?#i6IfqO2^9}F-!^J{W#T35`DlTP}BPCs++&wkAVqp^#)Xnh$NAGSfepzSHTR948!<;yatJu9}9(rThfE zV04aZQksN0zd)3(bn>h{TAd}UDwIMU)FLSp!H3n(zy5h{2C=1BO0=UgN(dMUktul1 zjhV#}6!6w4BRnP1sxBnng4p2ej3Mt0MoAAv3{iUA_2ooFUbk*VShwc*0SSpa3|s#+ zZklj)Mh=ndQ%c{hzpUyRUt5p$A}p*0Z5F{~aUcqXLO(@zk$ZSdK7WQU8u2H(7~nBK zx3HlMw2uh@NhlDR0Oe5t03HhO9Kj;Gkcq%Rw~-`Qncj!F#uw?!IXK71#TY)TE^@`? zUw<}m3BDl3ZsyPRO(aHQr1N2_hQJI+k2)==GP0|yZ!A397495u8Q z3AkcGN}fm}MS@-y+yo*?;lm8rcoKscD8}^W6$8eEWO~r0L)W4Vc>;<8jFhfO5m6^m z$U2Keh0IRDJfB7v@g*svTkx2tSMlpHYxkSP_KsP|r1-y0R==z=S{tq=oKG$%F~k`1 z42Dvo5KN{cxJ6(e3q;YSdiW_*l%KN=gUb<^0FAE(y1Rf z!$R?S0&_Lptn==_yB2IQRG(pH%$5Bx(|0l_!ICnOy-ev!X0ph$$Sfp+a6+f63ntz0 z&tjxU9D<;hCHM(t3{jdfn42V>@S+&W6h;M)DZx-@5Co|xBLX#`+>{(nMBEH_($fDO z*igNtK-SqaoTd}{CS{)A$;T})d0bXxM=7#hp#nyOvOq*_Ff9jT-WePGy6ocoq8<&V za zxH3i=Iv_N8<2}^|MQ!X6;P@2`e+hW-Bh56xrP&3>S5Gd0J4%2Kj z{4+o+Tn6|)j!5c-kk=UrYC?P@$dXpJTK5eUGGn$#C@1x&qZL*G3HgOc~H=K>kFK_Ltn4&G0J`1^>Y=o5#d_C=H;UIaRdR_AGNqI z3ynsqs|wR&O6&`1uyX0d!IIMCB}L3toD|e>YFX%_V3KroWUv=VQgC}Zq+&-GE!gc7 zVk8EvE&$Q55J8QteB3G{Dcmr|ms~X^P}7V;t$&)een^^x8`)B56yiYS#2JEkGDtRp z2gA+W$M0XVllLgHc9e6pb8ozDx8w5nef!Uw&aMR(q|aMkJc97#HJ0q0Agpw7M?Gsv z);Ix+Hbh2tWXnZe540l5@&rCOy)4pz7Q&T1^7V>Vm4oYU^F-B=mWLIpU~r4N6V~xM zHLVQ-fhzzBXbKx^q>%*~tagcY?D()fJA&w3P~Vt&Bp6nn!<OExIQ zNh0)54W5cCQPYrhndkR1r3RklJu{cxG9XW%s-TKk5iwJkSv4VtmzP8`4Aru@)@#Aa zP`(A}_4P>%&82H^WzEV@2L@KS#^}WFVE<8i{NntPaUI1pBM43wd=5kMpQ?wG?1}=P z>adv1PLda9TUdP>h8JhGV{g0~q3@f&rmocj0eU$=_sR6V?Z4VTGqu;soflOO96}sQ zY;oEiI@h(TY_C9-J%q<=nkUi3>Pj4BH9Z$dGE(MjGB%(4R6QB^h5KvZ)1V|QHA^T>?iX(YWT0p>D`fG+ z1P2F=Z1i+@HZ{O%0VzqQ3VDoPofd$lROnP@aqM`t)tVP&s&ve41S!REvZSyTMMlFJ zy&AlTNIYIb1su2gHc^^#=0_{6wv(P5Sw3hNHIimydO$Nn(ij^*?yzBU=f&}!&Dw;{ zP6$-4r_R{tivPe=n!Mm4sY66A%dwM!4Jbe%@Q@aTie$M8M5-Z0$%Clqmz7-p2ZLfI zbtq6!Dh36Yrvkki{y~bPxWLzmjU9a>SxIU^mvt;AN*`Bl^{#CktM$Z5&+)t(5|Opd z{ydZhU{uH|I8}A4M$o!1hnF>z1@-|*W@oRRs6-uG>l*=JMVWAfy1$SvgNRPrLh}-J zERs?ASwk5%HBKY>0*7Ry3PQQLjzL3Af((?=3B^<$B(+CR!EZZh@=lPWfD&aRP}DZh zghD!Iq=#-Wg_+XXnb;8HIu{*Wr$C~C^2ZDdo^YCuCazzJYNc=t*3Yz0_Fpv}*$n(T z!$xrY0j!>Z-F1aDBrH=NiG=!Pk~_r%Og>5(Z-^kXIYN0+QhSi2`fc?bNH6wzh>gSn z5Q~YLP?op_pWx3dq~EHhqwWq8?J4itVhS0ghXG-0w>!0VJ0J2C8xn{--$K+35@h!Q`ZX~lWhYr44-pp7@1_PWnq*`EFsx!mDnUHlP&0)L@H9d;qmcPZlk5zq16Ui7Iq@VoL~fA zLp7br!?2h@Cbf4P39Cy(WWwo)(r`+@9V56+Dh%U zFGeIfj-)Aw$WV5$PW^`1UHwJu{k-n@Y*Um)gN=+g<}ZeAq5)LQf?AA zM#ahKm4d77EyGi$uZ6np)^3eEO~oEZB9pH1i4V1H5@CMG1o%J<7d=%g7`&kdPa*`> z80)!NQxGDYKM4Z&QTOLC9^wEp%#LnufYernE9kUevNc@^j;Xjw4pz*mP8rx*h(@J^ z30_B*^Q1y^yJ7YW+x1)@W`}^Vml%bhfg!{ z@X0|rZ8g-e4A!Zvj4;O9FZF2TQg-cBv-^6@d}!=Z@Wg&&;ufn!&URih)T ze3>>%&cp56Z0*al=%&H2az#H*oYcLmcQlBiAq5Lq(+V42b_O*#*C-7~wuCapwC;#N z5l27)xcDHkmI7#XhYL9*VA)noid{dOu;gz1PaFF|~5OCJ=RM^O%CwS_+XV zbpz*%Vi=@ymW6c($yB*kl`Q1|Xb_?}!DF#(c>VpO3pyRr^N7s{6Q#zZbUCQtARyhA z#z!$d{S`C|h+LrhCB=QXY(nNVihu)4Ig!B(Z{~{|HaWoiR;x z^)Js+i9pltI0-Pmedm4Ktqj@&?BmWm=0!es!&j>&1`AR~Y&ibvDp07idXzc&7CDDy zZ)Cwy$#=O-Dbc_*#0lBPHjX18xz`wn)xs|-RsxXQ@;SswpAJrXM&s6*4+c@?{A7%k zbGi>VDJ;REONFDB%Sn`B4(K?y$-7-oI{oT)UdxbAO<%v%>%$Ap$(^}z$<7cH3NhxV z=^i9CU21A6rO4_&yPv9%+UtoYa#l{7X;gj*fGEz}k#oZ-a21@2#kG{)a%@GpFI%Oa zKP|RNf*=wh{r2V_iZZM;OKaEL^kBB`^?5ix389eg49k#O42->MxCuQ#xx!x|LK8>w z*XizqMy)$}VlowqHL~WInD@?eBVzECgbE@XmFQC)#Pb;e^8=j-jjaHPOG+oR5mD(b zxbS{B0JodW<8gQK8~F06mPP>+x6RhekQMfrN{k(5z#94tlyj<6lnfWWDJi!mQsam* zlH6bG}?KtUvZl7;Z-`}Xen=fG@rc>yY=qDvsvQCDAQ4~xh15hiDJvj;@h zs9AGNl}hC#LPs84bULi9R zlu;M)iI9X6Ig4;}jL;vB?go%RFU(2mkmM*(p!PsHFf3i$M5;Ny%2m4t$C9-JT61G; zI{isobRD?)ci(y_e)D*s{YpEI#o`f&34F;&OsBPa4AQD0t~!{O*Rt0ifwM?W zq?DC``hvzPAeoHNyFSudD4gLsnL%kz`b<776Dcp~B+_-l4Wr2^&`u^*SpgT7oX6A+ zu*W4s%AZumxhSy*b>!lx2Xrs95r7O*piWp<#ba0u$Ix22rcUiHIu9vH9knmIJrE{P zeQ@CI={0=LsS~Bu5d2J_tS*x_f=hR)MmqTDqEPmXLXYfLRN#jC3C&A(-42%%1Nhe+ zDA33v{|RCdsR&u;3*+_*3TnHKw-9deqq>Fybqp%p~`6@Au!4c(FZUkhtPT~ zeR_vsc7Z|u9<7%wb$bVx3oQseAp};@B}q{6>BvPyK|vCTHpbyplM+>|DMiddszgER zjM_=PTMp@tGMJVgiOB^Z#B%elt}b~#pHF2@XdgnR*s&QneupC_Lm!gNY;-Npb8*hR z=ef&Ck-PWphfD*K)xJfOuP&4;4g#JA*`qqRmV+`)d)dIN#iSdlqBIWfLbGBg$F!!l zl-*iC=3SPYx4C4ybYg!wTZbvW&aPo6i6}^?Jd_$dEz#VHp)7xS2G*7-EU?}6RHoG} z9JJ>y@c7s~R^)A~2?%jU@QP%WTRv&wLL$2Zui!XS#=VeBi9m&4HHce$?mgF48E z)C3(g@itu1SwOE}nQVLKaA$F(#QykA#5=j_hRX8V1Qrof-kE#HH8wj%B~GV>DV!D5{y)%?PanN7=Q)VjhS|-c4uI8QjgM?@5u4J*(JoBRDVh%yG6S{e#2$S^A za0));n5l!ycCV_C*P)7C>cbQWLJoQ)*uWf-Aozgclq3?Z%UN;cC3Yn*?Xt~f>|{sj zQx+CY#p0LDrGbNVOO`~vCn}kDmBobCD4c5j^5Lz?%H%EdnO<#(+?0ND&Jv8^<4~05 zMxjsz1VVL97i}uSs7~$ix|&C*pi53~kdrPHG64jVPVR*dR=3Sv>n^SHq>~M~M7co+ zC8)V$OW(YJ>0{!l@u)8Dt@(8gHVMyCoV;91PH@FlqV{HxT@kXU?(I~1;%?JcQUzyW zs5oq;F9L7^nMygd7q@8+2k2>sDePPWw>p15;jaEW(ZS={TRS|y?^*Br{(ZO3@|PVt zo6{-$Y|NF)+bqx}?T~Y5U;+#YF)-TGg4q);AEad!6!;8@#xU4`MHgy>vd^)N_s_Ivo$ z?%O579gZ#r$X@H$p;}vtDqw0R6GVpR_S`1QV4lz0=aM!cNMIP?;GFkZk4kr*m>iPi ztnZBqat(KV_o(H{Er8hKAXmR9+0x!Ex-8$Nf}=v3*`5}^z7f*YGPf6xx5u`sW7+9Z zH)?}wys&9tRmY2@lW*%PY8IBnr#<1%cu7gPE{vY`Q#>AMeEJgJ!1$|6tXLkDnM>?me?7K6_Qgb5i&5q zE!s1uQOmWl_MLOy`JOVD(f4k5>>EK=gpt5CK$4$h#cM#4=Tn2oY#+ltxwCg>!q+sx znFJU}%E-8T!>QliQrbBY_%OKKPugOMw%tS$PJX z_S04Qw}R-B6mRL=}zeJ*NCIqnE5g(M!tCc(hq?xEgJEDGz0*Opv2-=hDvan`$`j4=Cr&EtXb%CIeE zx9av6zaIGXpe~Bw7X4MWI4+T$5hYAnp{VG~)N&bfe(5tot&l@53FHSQFY~&r3!A$4 zs^8y9dguJKDOSzX6>&_t8?>gOWlRPaMglcmL`tpp=kqp-AH^Sy-RqRrJC*?A)UpjS zF8e_CEV}!;Mz}Y8bmRq=ggG6A?WwaGt+z^rsawc|cmzj0VvL!3m=;bocpeE_HFQ%F zllpYuwA5-l!AT4nmn=wBZOsXMm?aHa0XeHTeBYS!VPth&A$o!|Bjt9LPf@Q_owTxp z<|>?*p~g*)3eHLFDeE$QFRLs zOc&WJVoezPvRE@bQv5=gM0WR__5<~s^IEQ2lxp{EfBDPJ=x4ifx4k%~hX45d`d-Ub zz3a^tCbf|{%uum^3G2$PN+Coc;9_yxpc)xpBMad{EiwuV_)Q1^zW7@uGUAn?=1O|zr2bI%p0^xOEsXt!lr!gIG)$u zb!%Fuk1lj4wxy!|Y`>t3UVW!P4(`6&|7+0l+4Sgk(_L4l+^K8R62q-&DTQ@J8v}Nz zAO)nWLy?w5X@~)Z3Qn1kBbkOuPh|-IC$*qsP!Z&KGpt_~ut&P)$39(-El@tSK4s>= z`dnpX+82x9;7}>acq=JILq|y&LzXlK1OW0-A3DExKEWK(g(e}WqV%QQlb@Z(|8KFu?)ca#sWWR>1? zPro&Aso>1t^JE8`0DGqBAbna6kEz=3>z?FzLwO=t?|L=Li@tfI{%d@zEzBhFHtJ}L z&;I=48Ovl(&6SG=H@NRw1?EH!PKn$`P)|rv<>&6TdJ1JJ(Qoi}WkkY7RY4M|LjVCLk#Hu^xe}KX z3Zjc37#O`fQaW-fK&0QKkI#3FmlLrzK zK<&W2$^f*_7wLL%*T`Jj-8q9dSM^-HUz&Lfor1S|1nn!H?099ow5+@SQ*ElyXbNE#t|CD+Kwgdcw%iCHq&96DY%e6P7sXZXIs6VEw~nBbHimeTH$&;vW|D1nu)CtzsF>7dqI=hrSuy{t8YG~ z>KvMFzk2uWJ6-R>NS}(R6ZsRVTbd8Kte^4SZaw_H@$a?vqu#IX&W;z|{V*s5xk=_^ z-h44xtZt>KM-QD6$>T^p-KHB~{wc8vGqIyS^{gHwD-;~8O#6OE_|)_0u4j?C9+wA7 z$jlaV`s>JQqBK8%NE&iU!m*JK!bG292odp&CuP*@%(d{Jqa4ncKW^3)m^<0DYB+EA z8$W;d&n?5{2h6p+Z$67NNABr`(gsY-Qv?Ie5;?0kb~TJCF26ig7e@g7v1tO7Fg4t% z1_nn+MwlzoWC0P8l&^5{;ve~exrrbG07GeTC{(jkEb6iFe-(`vqL3K~JPE;svJW8- zK^vv33vdEac|(Lfk{pzMnMfk4P+-38Xms5#7+>^|G4q= zOx)AHskVv=c@vCK!Q3I>x%0cb{nh?|Y2WJ_!00s07g2dk77gnJW%D|j%vVxSXC@gT zsg1WueMIXbrXR4iP*(o{zo@prqUjJK#M#L%*#33K&~SeJ{NRh@A?^-t3y*oiqTX&D zs|69tS7z5XrJ}fM7i*CUUOmWD6jh!thZH)dC6Z*wIIxP;f&g?71O*%(6VN@FFFEcO zOaiD>03me%g={neqb^ogWJM6Og`6Nzsw$R?J#G?wrw(Tca5w!d_oP~wWN6^i`bL>4 zcDZD%v)#;CNyFiQ{HbBSp4FAAxg#L~afS^)&dO{{e%U|d)am;BGN4%(nco zU*0Eqt-Wv(RibI%(SRf0!QjHl*c22_;X&2);tIa(s8{@{KdN2j>X(dRb@k7k0+u!M zs!EGkZQf(YC%&93VRqBB8_Dg`KD0~@JdWtA9Mbd_8XASu=Y8!6ZFBVqxCeQ z8stM!6NfODx$E1UpKd8Y2ChH8^`+^?m1t+n=})$*k(*-#qr@TKq1xDI`G(41dIFB% zFx@$6p2f^LoUjKkCWi;tN#jKj6o~dyp!-SFgaD`&IO)Slc~!cF;%rLqUpowjgTUiKB7&dja>%E}5vnI37Ha4pdHTqf!=lO1;1CLZ2I6R^ zcn4b}y!}MEbl-+iKas8$^X#IGZ;Xe_880l{y{dmeYuKvzcgBuOgz;ww+T#yC?TGWZ zdg;g5ZGZ0GA;~dD0|$xh6J)E>$TsnMagbalcXRp5!JUsa%7Z?<@G5k^Zf(Rb5?ei@w<7Z+|3_c0C8JwRt9brx!&~(wp zid9|T9@k;|nUt(!VG^|1BURruFC(cY1AuiPIA>s=%ib!CJyQas5%c))(Z%GjCJx|!7U^&7<8 zu;K(wtEk2D+3x4pekrkZRr$UzL#!LAwv&8Ed?9-Ata_A|Zm3qs?DG~-J99|IhrA#P zMA8|v20L|WeG(IFOJg1)tpaOj_}hd@ON^Ojx5ZLcKX#Bs)YTCJ3|{i>;Kn|hSSHkelzgiwst1pk?M$Br`U0LZuyG(y2Vw@lvSn|xv5i&TiD$R2{c-MW zXnkJ2bD*fnjzIJ90wQSwA`yZ>;BBVgQ@66xCts4A)p~eNOD8+67(}qrH&ayx zOYcr+dz|*$W~GxHZEJn|CDY}L#l`$nu{Xx=OSkv0Zu?JXuHA^=57~iw^|#x(J8vIE zzJBqKZO^{ux9nv`qg_s`>)~B|<&z?$M3h9ai8hnJ^?d7Z%^M4<3Al1WYthFdXM^ql zO~G{1W~LYnd@9u ztWx6FF5p0*EM^~Sxng4G#zp$)^BWt-&RzP|V)d`rZ@-@zBtXx!8`t#sx9>O*{bcdf zNADOB+fF4xlSF;QF|_OJosG*rButh;X(T+#MU?U5+g{_!BFVO@`M)jlRwJ#{kx(X4YS;i7 z8X#Q3sk90nuIQSBz2W3!>VDEaF0pkdjN1w1Ac;fcX4`j8W$v5%Y_>)*(~dcx{9)8i z32u5|@NVIYll2deh5q;^*X?ec>JVAD!}daBeBG@tpX$;-U(#zMIa1DxlomZ@fUlo) zUq|XF7q%Sh{j~DIc=65y=&EZv&loqVsw;dBv1#yK))c8&gI%R^KDl1;!>i#cGsSs3 zVYTXUq(j`UL?XKu(`!{y!w?}1WO4+_mO3jwY@HNqA&iSIJF`Dd>)hOxeG}`OUMFYu z%=Z^un*M$=)b##Uk|29|qCg=EX-HeB=}}ubWON2?pjJ6p%oXr zZQA(J7cW5nqLaeSHv$oA#^973RT}o0=L0|nE5n}9l!@H<-7r3PS*EYr_vt0p9}B)& zS1tQ|wwqndyD{f-?^wu{%bgp$+*b&TgI2gCAzK5IkPw^$uGf}7^Rd{~>KYMPT^-Z( z$+$gDTP2%ECqmHS`bPSVx!{V6+mzuWyXqmykr_Sj@Sp~9@a`S#UA&FohU&&l)*r_1 z&U(A1{LjbzRqx6^J-pwi*ZHG)N-nX|&R9Wx(@k!?zTP2+!zs@ga9?M5w=b4LQL}S> z;_i)+KlT6o`n5Q{*1jse8N^_4^;llJqP@SaZ%63aan95ggMa*nZ{44IdFR~Gl<{#$ z`6<9A>EgUP^Q};=x|1oj8SQ%oMxbJi59`qly(_=(y#Gnz?HXGzOLu(bTIu;c(w3GP3^KqC_!;z*#H^v&)-W@NFS6SR$Hwg81?{8C%_de4# zaQUyoc=wij%NOcSA~!z`zw2n|s8=xW^=)fjnXj=NMovb)N!?jJ{lUf5^-c-$!S*+k zx+&?DC1|}J*is~pHY%wv)UR%~*c*KM+b-|YtTu&0mkM4KAcV;AXu>Ku7L@==rdgo@ z!6Za+NJQy%B%7<(@l2Rs-wrQTgiIW_SU&bva^;RQ&os6Dp3m9llCobenxx$G-eJ4y z4L;{Z$bct@H&eBqpCzrHDMoP zQ?Obdk^h{8A^IbvYx%W>g%9AARF*b}2ukLKX z@6o@q|M(?-ab@M!lQHk3Zi&^d?#gdNrb`Nj>?R}emB&?M&riy-ZUs!tgarQ3+O{l4 zT~^F?ei5ygwWK4N&^S?&WX?@1eQ;!H>D%_OK>P0Ki>wy75e6p5BVsVp=pGLvBJ04& zqf~?nauSZI))CKT*zy~ic8k*I)-|%ia z^Hes)j@$4mRCnw+gU6f?9%*o@<{|uJz4b=_c+u_=t9Hq3x#Xqod$mi-JAu_?OF)f^c{Uc@}0QL%vZEWLFM>p z)CHwso=!>LZ1wlw?tL1{&EuosL^@T~$soRP#mEX<+2-nY2qKB8sh@Z|_F{0=kcqwN zZF9Xlq~Dks_;sW2W_|dHpu-)v?BtZ=mERrR8}79{v=YBBzSJYY|Hr%H&^gp6)8H># zX2vCE$)8G!*Z!?Y zN0+lzzy(vKaZrE`_H$BcuH+^4osOfy6K{T*x>fCYdHV2Qac8$zT)i~BJpO7+V$HEf zTK81K^0JAI`NY?97pTGfu73Sna2`K5^7D}gc7q3+*1w%heI@?(x6+gO&Dm2obDXG^ zdnDcs54KkpfW|*lP-c{+*ii%kmgHC7?W7AQC8hiR1<>EOA1DZxv7P*|9yb5N@c8~m zl~YUuQoADTz-CZc~v}lvwC*It0pLv5ioncKGSY+Qs>deZ#Qq2l>D-n~h+QRu=wM|!y$!?VkK)%Oc;T7E7|Dw{^S&W2Lo=9SmsohfAOfL- z$p|lk2TMW?YO?#0#9l4CK0XWqimitn(HYHw>cfn)r_ZeZ;oWho@@-w+Q-ddxKjzo; zP4<<3UH10k#n77XhG`^Gx})Wd?UrE|LC_>%z|fBbMO=JgJi6gs94lEr#k+la=l$Q) z`(@$VF7-=3?)JO=WZ`RFX&0@JFW^hF;mJlIU!*!xma)8{hK_s|_v2rn$LvRm-}vOt zj~8f8?<&@9s1+yE_vrf5ZVb*r9Lw)-r6`x%mhk2 zytHFG>+Ko`Lmp36OyH((um&D_dvSQ;V=gytf3$xz?6&TySm)B^9TIf=$Hs|*hRnbh zb(G}BjDu2@{}ubg(jqT)cKpU4H@^LIE~{U>d3tz7;;y|c_sV((y4=UN%1~8==x1uQy$Ra;YF06l^;ZP%QZA+OAPXVIDQSbG5W6q-^V^2zsuS9;T z-RM7PcGPxX`_(e!_|WymwTAJn*WUFU|K&jQ!bXq54%_8p>_r>XQRl`^%xod0Hrxu8 zfx`cJ7F{O(^U1IG*0=xjdq)4sDX)KIw-gisl|2Noy@^J`rQrR0Gtg=}x}0 z$W(e=e~h^`rr7A{&Di=!fXl^Gvq!$qEv^i#bT3zoQvKfiSW{a`e>tW*n{sp_VCwXj zb+nmUo!;j0;pdh|7RWyDj%*88{+m{RoGsT-WL1PH{;Gc>eN4^KB_?ro*S+n_cT;aI zoOpQTRN3aKrAG;G_X@~I8nX|ye)W4_@?6=z7ewd1tqo_=sk&@*etpMavX(M!h1rGG z??(na3pY=2iy9zxm|_gMgOoaV{EdNSsqOmpgW3M5n>Qlo4*WjVJ}mjrzxd;ge zdo~#tG`^#7WZnX)!8za*yRAgTnd?`}EDg+GF>Ov7xpm9RG3l60)2YY(`g4cJMxLA{ z{0mrq{y-fy=HdKKkqM(iI_XR(MZD9FTA|R=^;{IJR03dd`uWs3(+zA=CYd>}kGUA) z^oo*(H_3V;epxr__D77@Y~1PYs|VhGIpchZ;rFXq(rh{|!4dP0kgyAHVso zN0>X+3OS&Z|7Qu#e$MsSdVi^@GP+wK%leL-$WS-ebH1MQ=$=wB2O@8LLjKsWcg#?k zD1J0kJ&ZEeaN7Bqsk+T=?T2io>P(>Yo>JS<%Fe|CFXf=zojapq^4v~V4c=^vjXve^ z1b#U>Za=qfi1+vY_y?AkB#{qJ4<6M%wfD&O?5JA(weZSIRpVoOzupb3$2K%;6)PFJ z+B`H$aW8F)Q?X=A^k3Q*zVMBS@GM?RUcTiJ*B?@ML& zxbgJPulfd^8jU@ZZ}nwOBS9ONP(X;7wn*7OV8OHHFmG7h4(v+L|^;m?TAqniH1i&Rdj3X*qEP zc3HOxrF$Oks2glps*TP4B}wN?#ir|poYC)xroTmfmp`#`*Zu471=Wi|x^0g6m{VGH z7fNIH@7Aw`5S-p>?<7sa_4qo}{cc%=e|BrX`i``?*5Bk5Wo!fDuWbmIA8C)T&T zob0%|xI@oEZSte8IJ^vgb#dGl^-P=-I`kprc4ZnRA7D2RSmdskC1)*Xch@#F`<`%j z@Q`F3E_Bki-mR&!QYRCrD;PbC^$zgrnkv5FpgsznCJYP(;JW)i^b?hTa6Az19 z%=-gFh?ie)Gf_6>XHQIx#Gk!w_B3o`dCP;dYtbJf`rS-c?riQh)B1Wleuu(`%?sIo zJ+S**;ftx7x2-z!ZZLHwxG+TfzV%VPBemvzB(+tpx0$p?BzZn0X-=NBH$=dSg? zR6T6%^5T)L^|P{~nhS*hsX`7FSML?>u*X{YtIuG?@Kk-urrMc1W>5Er*KTu`-}le- z(>-5l<8l`!j`^(^e*636`im`_&O>c#*FTyT;_?;F9elKX+ta)NOPY68cnGrESPhOsse;62xj2%(flW`0m1D`!#_$Ea|m zl#J&sWUwg8f+~@^qAxFIHhdDQU3;wuw@_G>GI?vK)?xbx7B8oHJcyzpW z`LN-r{&+$u!ML>S)7ZJpq2G2mzC9Yb2|szTsGEAbxyv=}GMC&zjEH=y+#qC060O)9 zzr8rh`s$&S7kfoVlY%;aAL15y~`$cZQ#4f&CrNxBH;YJIhuWLJ5o zaoi%w8W-i)d{J%d(lzfhA7}q)&#Aw6{aVy}qN;Xp*Dkt*g7FN0hw>N0&)_k~qc)EA zA9-MLp<+dtefW~+-DjshrgJ@hoH-Ufc67?_MD6g4wwI57+r4-~x0j;38lC0SvG#0p zY9dSPNJWnB9nA5e3`w?=XtZ>>@`-!f_Rif+~zTQ-h*m#hzdGhMwS#R0Fv)?YCeX{VhbbAo2 zCiG5jY`vR$hnRy3g>MZMvAcpH4PWl=PyOZa-tiV>!@arBUp+P*>Jk|df$AzMj zkwmhh_}Y8BBxPk}?<-kJ_Pp0cBCz2K5+3Ql-E-o%^SvTXl_uB5g$TfaH|9<}b zocH7XIp@4yujl8H+vrCQ&#zzUv%~>H1Pzht@Dgoyo>E$)LWK$YxA*iv!WCwy;`7x7 z0ZBqRCthFUkMTy?JacDr%2`30NrN?!cbZG}@0suhFICfIxOLG!=nN=TVvbhsK>m@a z0%)4V&w2^s=i<3ROaC1_U$+dubMZb%vywl6h{l|qN7<5sSwkJHUUv-rXXPncceX%S zd-}rQM!ma*r@ps-N(*P*j6La`g~D^^zkPm|)?x*;#UF+CJD5y#v`(P3Hr|8LSNR%y z-23bonS~Ga<#|fqeHI;Mee&rw7thOb*}-?0^7qKMe1#!y20k54<-G!ovGBzSWnS-< zcXdLIQ&U6(IE)vs7zX(htV&)=`3-!O(+!KEe7;bo08e*%{~OsR33?5<1K+oEHyE2g zrGG?EE4op^CBwQcLmop!1JF&r!Bq7q=C@dDh*9G36HA<^0`22p{(^aCs;Tcy0SRqc zz{;=7JSgePP2OH0FxLUQZ)8{g{ z#2*2k%xs~j$|iR_Huh!fFMQkK;+im}Nt=w0u+hB9_s1bGk%n*0`8#pEaXlnY?oZg)V1%s)sy{_=nbmxR$-DzV| zPRky$MKj+*>8a7GOD;Apd6(;xIHp^o$qW+AiPv0SRy|`=y5>sbfBE=v`NC!Bnf3SM z%vU*M84AA}yL&%%)fO+PHQIJ`ZdFf#m7;Rsz|4>#AS@aMH-+%+(*V;~*jV7VwQm@l^ZhMA)6Bnyboh`_%9TY^J_a2m zm0zgk*UqMAjhXWkTzW~MhY$NxIZJ)n_OTKp`&2QjD}g(vL1C}Lq!k{}Dy_-+p|gMJ_`FlLoK>kei{``)>!IVttqZMA zA0KwsJ*!C$%MHS!vYS@hZxImmK4wcVLm^?FN<_oYi4|(>tVJH5adh-12|O`wZ#fo+ zi~3mE9+j142|S9wya%#8;#i@wJbl_+kEQd}C}ikH(m3Fur?+=cq?3(}Tj!7Mi`bPk zk8>@{p?;TO)xhCWAt@BY8TpXc^f|tis`cTcktmyg#|>K7JM=&3A1WxZ32*y9);UPg zOi*h%EJR^DyX)?4kQW2lR4(n~I!}!5#Js0v7V<3$T{T5a+aDFf?x(Nsp5)>$FfEiG z*V;o(g8^DX_G-VP2-6Lqa}zo8FxRt*0exm`k|Fye-m8GIjrRT*`ww^glwMccPC3q9 zrVZ$|X$BUDd?Z>^d3w6HD#h)Q%`~6hy`Te|Pe}^7#?sfZC522^r)~u9)Zc%xjU#l) zw>;8+v_?ezI-8q)>)~7=u`hPf18Mv1y4h23>?dEl!O!=nIlQ7BcO}o5D!%v%v9jhN3#GHnM56K;-GfJc1TI)9VVcKM+nrsnKQS%JB%gj)m!6)1M zGPfVUdq472WwFtmX;2I+HQRP2&h6Xu?d#sInw3`0rKl%tW$W~8H`>EFt^W1uTHVlY z#D2XW!hN{y)jIcYepfkMEz~R{!lKtS zPyVA9WNTl%1dznNzZ%7!JN>qWa(8hVHoE~DQsR=8QGKZs=vYZF{F;XT$IkGzIIl6- zGw!IiO6Cj{o(+>v*78Pdo%yin3|MBrqA^y#ZO#F;z^h@5z1s&Jd3dgy2?s70&~od) zj<=G0pg^f3)Dx9#iGv?sGIoJ{O4BBIW>*+=tragxFa>J78PA@HW<1J~G=BNTY~#L( zM*&qtHagePvCEd%R41!yiRbfrZhA#7-~`GRWQ@%ZB-Jc8KyrTvQT=KnFokHcbm}Wc z-kG}A8aGEP`xFv8@BtQHyvK1+@a;>@BXe(Y{DkO%Q!NB|uB7U3pI+e%1d0=>W4Hv>VnrG+E$(1l8bE z9Qa5tNOMj0p~9e{466s%Whl}#zLxBcMOnXSr-J3M)83%y7u|kQy_087CRo-h@jmQ~ zy7E`e;~!J9ObTm6Jr%~)Js7W6u|3x}<~2^X-m&}Mf8)y-W0$J;*R*LQo-&xOD^Fz5 zZe{{oy!hpD!$q*<&7}dcv>#mE(7cKeN(Le)=3m*ABBy?n%rkv~1rW@J4Cu?6WO0B3RJ~_TUnTIFF+lPDZHt=E_ujv|?OG|I&-hjtD&bCe7G7Lr z?%54~_3vmIclcI!((5C>9*op#`5=rc9(<-LI#x)4PqR zTL}z5p?-BIb{-4@(E>#+2ev8qOL*1c;#xk}yKzPzMi6L>J3uk@Eds#jR4ga;nZhV7zY z`9k+mN6MNGy9!aIf8`_jp&n`;Q!&lPnHw9VXuKiT2K`0FOkG6FjQB3p} z_R^nTd1N3FNSWE_RVcT~HvZd$=X49iI*%_>r}h?kqgDTf3dG11HrJSarMoXx&(BE= zio|A+E|4V6vA<^b6g>`k?5F*b=iY7^`zk0v<({f?L)uD5teZq<uf@a0KNl;-)ZRM(ft#uVQ{BX$=;xhb3@g}UiAtQrPHHU{dLye=|Fr&>Q9VNm&Ca^A}aTPi-Y**2`%S?5MP;JipN3vz%awQl{jxWMowwS4vg#ncXkH7iGE@$uD_u zSs1?^ExC9SeHopx%&(_7E3_u`c=yfEffGHhVcC8fv0Ynw zE*_>^a`$OnuDQyiEKSab_^?y!cwAfjStTJAN$`oZ!OfmREam9vu1ntL@p)nV<;mkD zke|fplTdD#zzl0c@XromyIIE;^`~qlT;C>e$&*9gvY?P+WoL!lYeQv%O6z5LG&=%H zuE{^ufWi#{T|7B2kuD)M=dqkquWEmKXH^t)ZtQxIsx+**vJMA1XUL(z{)l51XA~dv zM^<(Az)AsO6+7}dVlV0R9|Crhj;Lum1Zd!1x<^JzC>&EzCa@@&xue%a@*VAbWuf2e z5q580mu-~B2^r0_FDj6ZsJx(m1>}1o*J%a`5BmB1!$2E|;;&Qr`NwBH;5du=9zQd9 zredpa5n0ls0aSaNk!Nr{>oS5>B>CjwsOyPz3#qH$KeR0}Bd~VcueG3FNo8}T6dbv&gi&Z|(zSLNB zQ8O2Ie4h$3Zp*wQs_}4$(DzRp3vU+NU2?t@)}}2xy{s^*_QG|W4QA>lY;m$?xWIvB zWQ1Ap9halP;%~v~PedKmj3((~6peuV9Rqt`J029ULYqbClgq=U^1#>0|WVOS*ip$z-!E#&x* zZ1ZTBGN7ZA-)o9^>(82Y^DQd~7@^Wf;M!jjf8%B$2b5il)XIZsEgbV|N;rF;P?#A_ z6c}G6KT`P`IBfLz<>sY!()N3f%Fj6?hnx=Q>tSvWkA{Y1Dy+GONeJt-zEv1exK`km z*WV?_S*;v;x}09P*-rL-`2`tWe72`+0%z6!Bj)idaOZZLSAnsx0H{nk=Pw0%t$yHc z=04%kwG5?9ZEw3a_jjSXNe9~5MNZqHEybUUTtb2jTD?lk{u-&Xeqf@(q;GelD^k23 zGW9Po#>d1N+_Qg!kWMJ=B!{d{_m9eH-tITl>;B zS>PwMS#!p)nWG6?Kf_b_$JEotRC7YT)ak8Cl8YwSr7ykM+HY&0{TjXI-~6}K?`h9j zk8?zrAN$D3;qmSm9VB=B+aZ^n87*v<;xvW5eVhgoAA4(=;EapR`fSGtC__3ZGj zgdxlt7M`xzzk`)Oo27&0jQykJY<(qAs`~&1O{I*g4b{D3VF$d98RPIIgrCE zn@3O;L{d0a)js3%X1K4G&Ci~j6qqIDLaT_X^*Jtq?G|0dyTQlIPr07lzGf9lT26O1 z*bTp^MDk+U=LS1|YvjKFa_1#eDl&2O(op+YUl7XlGjI(-I6`9R{)`jO0;b9AeFr>p z{qdq%k1p{7{*UxIp3BlQ6a*Btmi^VwaIhROKd|c`Dl>hZ?`hES2KicuQND^?nT&`( zD%mWLnH`H*mwc}OJMV31J{tqnTT^}3EB+@tov?slK+`3mMp=KTD;~l5h_F9rnpBwc zaMyGXHwpd|(aH;CBX{LJ5D1;jddL&oT4Qt!%bH>Ne0nCuUzWSs!$7yG=^lCl5bmB? z(9~-g3YE*v{!fL=L2SzZM(l*F0Qux7GLc#w3+I;{m`$pjjnJ5o==)eq^BVm)6K4V! zKu;Yq{vA@nx9n0Pg9dD-y%P-jM#?uL?BreCi}wn@tp-9_TbzD;ct3t!<(HV_RhR;p zO*bU&#j>elJGOrI^YR9?31cJ5v+ND@dE!yks=5P4OyDq8CdKdx?}OlQ=f3m*(L`=T zP;8rL+YePze20uCU0GAhX!XAkN$L?S#1%BS$L1?Z^Z4WRXuG4S>U!0k{(c1<y+~-FPCJZpOTGDtlq!q zOe*{qpLzEIEj^n_|Hqk+5BqP|s)ii%DfcSpt*_$CmsaeLPL2Ua=Y5)RmXoD%W+vtv zSt&yTz+8d;`{|3wfBdr{ouCfCs(&Y%=|9nR!pJc~fUlaan<(q*gGI4FAtPVSxS%{G zdpOWV`lj*OXq$#FfN$XsZePV`?YIvQOc!xwUk1&Qh@5{%7e9wnqLp|rBybaXaS|~b57er!y_bpU&F;b{&N9~i83|e z5}Z>oadnS$EHq}QMlF0h<-udkC_@sU0CwdlG7NpTR}>0azxGt<-mQ1Pf>&u?=ikn_ z61K6_(-wjq+L3;rsw&@eT%ggFw+32#{6L|3oohw(3DfhG%de6)onx*R{C7lF6MDp= zmKn_x0hHHK!>fO&X4G6mue4p*VP;oATvB{*QH zLZ?VXbARty;pbeD=n4qSa)_25so1}JvoqjRVjF|;uU`RizV4#$Y2~GBQ}^}`HL=Rg zGTYy-DzONVU&SeL-?T6ponRgF6=tC2N~HTBZz{1ujW#~kNNeiKgy}{a4z;Z+$_Zrs z>i8rmmRsf(YclxkVb3$fcet7BLqQP}{9GNCpQ+A3(DlXGd%l3HB~4{eaRtXITi29_ zmvxaX=!id-n^%=l!Y5STqr|#gdEw)J^A{MSUT-qQAo|YW<;y35S@fThZa0G>nQMor zk|z8X>`kaK;$O@vrKWu?Dt5iR2beCohwH6mkY61ce);3?jtW{=-F*A=kJWMj#|6vb z7N1DV*PZYv_@UMnd{n~w1yAD*Q4_(-4gG+F6z%Jln+3uJ;>uQdu1M)`+~j3=%qkS} zs7^m)`W;sU4+3gBbdk{?_RlhsMM(3_A%IuN!Lc*4v`ju>5Yu~tH5HjARZ)9F5`&o4 z#Iv|QaR=Q(C*~VN5(#zV?i)Kga~}2~4Nn6GhF1qWp1Um3qCy&|qt*K>y9zIb8k(N< z>YS}nfMnu@@&u?<*_W36`)~8bAmLjyDIRR)!@*z>;*hY^6ISJteYW*=RNl8c`n_D^ zYu~%VWxR&*Wozc@jBYVrv^Q!t#in+YBX0##U!8jrd1R+wmglZr2EkN{YO@ON7G&nG z^_`qXn9t}7dUE#2n znOn9`3eQc|tdsP)eXIX%1)nsUN6Xl7@rRGhA6k{g8*kA92?BLN$00z@*x;f zb3gI0DcvAPp|UK;rt?e`gm_8Y99I{@ ze@*S;m!BeSgNMt;ZwZ+iU6!P=PT{PG@1YNeakd5X-C7k^9R(w06D6x4doG8W<*vnpyRI#SIi6e(5&+`f2i2j6ai+p;MDl*4_N~G#`t4 zjw?4qes(W(Bh-@t8aX|BbVZ;!!@DBF)dk#klaSnsfA+7@fb=&LGC0*vsqsrI3H5(8 z%3^n_LS;T}8lnP}lID_h>+Cz+;|0hUEYWqy`Q5OSl>R0;V1#QMS>h2eX?3f^LR!{kN|r z2Buwk%Gy4bh7~1j4N)MK3&r#s9@)CJZ`BA@*)Fq&w_E4uRw*jIS~Ep9zQMuJ^T1s` zC;lwUBQm=O^jC$I-54_$7gJD;eqzn8>uow7@>gZj5NO1A<@QJWt1mv$J)kn^DXS`{ zl~n>O4U(Lz-*h31$s|9W?-?hW=G(j24cS#T|{AbM8aT4XsrwNV_K2Q|{aTEh%1C05IEWOs83NRro;vIni-N@(AZNCw z5YPO-J`|n3@hXO$LB}x4ciCq2Fa_L+F9%Ty+?V}Dor?u@+G||qgoX2r=v7Dc-Z-N!wo1Ja%@3>u$r(WqrJ;bF2+m# zbUD{oR#i#LP|z+R~FsfZ0r&OfXZ_vUujMPRxf z5;te3wiZ^YZePOMlEWj}D>IAR+@6;yu6UJ7Qz2JM!%D;aaIH{;{u(1IP24MC?)wja zQ7hLp7pB1N3WtNm_P=jZFQb^OAWM=Zh?_Am^`RjabzB$D?>s55MbLaMK6TP(A*0X8 zYNC$RC#;2~Ywb?l+BolS@F_dE_~3tf2N4ZpG5tXZPPGr7%KONA%j%iCHBG^cx2IH^ z#pvMx@Tfx&tcIKdsif*Kk64skd4j$j@0wS^XxTsWO6Sr6`GrMvIq)@hWZyyW^U;60 z^v|u|5<-W*Os=j=h(}l&B6__ro;uv-WCZkVRmx9RGVMfdtPC{8UT+ae=|jz&(<<+bB@PaDEy#I3UP zkWVARNOmJkEh=arFwNHut&|7@7@zR#4sjde6;*f+9Z=L65>kOaa+jm*kad_sR@uA91z-3) zP~2FjTNU2<=M7rH$fh>{i7LU|^65zX zVo@t{>n7BW%)-6lk*JreXsW&y9(gXW!Eb|iGkhuVQlL>Y;yGDMhZ|}Uzl{RkQi(XL%P@P~V(;`g-sw~Cn=ny%l%b|yy@p@l_qK}2&#st2k_y+h z*xeG=+d49r+885^_WRN5*(YL$azaw#xOB@6%7pOke1(U)J>TcI+eOtNo9DdWjwrel z7befgk4_5*+QSRvKVC(~pB_`8qHOB3=UdLx<)VP;UiiK@A`#brjEBR7a*SM~ zAM`ZDN)>$EZdxdvdzkP+x1y+XZ_Hir#~Y=0HSAy~hc{p_l34_Z8SgX6z8@JTMizqs zem&BkU;jWFTxxdoE8N66ij8@FjW9*r7iy1fec3UcI^HMLr@(Vk6fC@;uQ z_%Ah<RokP!eLB(bJR1r*nrv@@kSw3n*zx4}3T$+e z2DjEXK;D_Fa^I9mlu(VmAd&f#>(A79Q?4Z^8!DYK^lGHlsnsYJhCVJ1lxGX5FFKAE zS?ERnVQBj6dE`%H#NOF79L3 zUBc)Dr66fz=fDmko5gD+R`2m#4x!Lv&HhXEAw5ouB^4qYP=G71_fvz;=1R%pFrswX+V zv<9@9-n3l4ExmAvM1vvHl0R*#66;FnO2to~&OzTj9G!+NaD(pn+z7I(?+ym25*H_y zlFT14>T%^=k!4pBmHXmF_i%vmikNdHBw?Of;`C?(?O+ntsj|HsvSyPx;PLoSA>t&x z_w%3P<-2}#u}wFJkI%NIP8?MAcK|@t!*F~<$!wS{$UldTW&!i>%1@m^N$ zL3<)2k!?bhXrYL<1nA(Y7rMt@QYaO}1D$yh}pNV=VF_X3(o>v~AW_TwWhtjcBm94qh8D`t{dK@oOE` z!3MmweCEj^&GEOh`;hMQdc4=*Lq=Jtv%aRut;+imEp@RGN%^;in!n@h zHGUiUv*W}M(EYrW*~-gCZR@Zh)mi#;knaPD1!{#zEvcueYU>2T1Q-MM!m5hswm!}k zChBSKr`vuHk`%XgXi;RU{dJaJG0@jIYm%(Ki6&^m89o+69%=Wl9P04g8XI5g|cSR z`o5i=TjhhSZ;;Xbe6Z{=x-&2?J95}wvHfGcQGk(mLlc(gCoMug=~744*>r7SO(&e~ zKRsn_`bmYO0GfcX`&VtBWj0s)ChchC^(fzJ=aVD?xh1wFPeapdQ$=t)mts0OtwBqH z0vSvG6_F~~DQV+C^sMXw*r-0osSB)4#>}(&D;mu_d3-5v4i|W3jr$>67DmB0+ZV|Z zIaFw4R}FH!Fp~MiHzd$yy6&@JO05mxRP81f(;l=m0(uc};q&9ULLRY^i!sWpJe(6) zicV-hM%DGe^w&oz$g8_{C+xAkLx&i^vy;d{UI55xOZ9yu1K>^Col{zcPMIHQ>3eG! z&%&tcYpC2G`-ysb^A>exI8;HIw@HsIFLXe?8bARc2r~mlZfOo)>s&R*LR{+H(5Jt4D1JM*tko3_k>ScZ`jXQh}Z+6#1~*hn)zLP z8{vw$h4+2>kA4UA24TH`IklNXrQbGo4x_a&^NA~4(Y!}d5!riW$sx;Ruc|}SumM5 z3|fM1wIu*$tGU`jneZZjFo5n8>Fo0Gt7V4V#_yjws|9c2BM?p}+XTdo7HW}0hAQ|z zWC)LEh+?%i==*9PcH{I-uZHf0P2L)sgee(vf(CqVwN-U44D|c5H{A)+IG*ck-x;c^ z^9~_<;%3WHkxyL~$nK8L*KUp-WAewn2|mx9(3-}rcp|lH^wdvo>m*tQ8~fcpc=Yd$ z2KjkRlP8h_{!ZM3d8@7xe=YGO9khK7d-fl@5X(a{VB&u4;^r<`#Q6yYq+*2++!Wus z_wf?z*;c4F9DActgQc)-*gBuvjn?QTn_!+nPQA}gG3x1SN0ar@NB@LDX)docO4rx&41wd$nBZXbiT9Ei^L zNg*&wXQXd2ECpwwh#Do>{oeQLz;6}oy&sx6Say#1M3qinCgQ|xbPRKCxg5`dK4T5m zxpwxhle-8L3`5SpaN<-DfJi}FI(EF>u0vlKPBcX`&H0HK5v*5mz!Iwc6A27)mk z7$wprzQ0rCJH`A=U%X|5vn?5z{ok@x3n$H63#{bGuY|YtZj@)UKDpPIhO(wmUqQQe zQ!Jjqbe#zRXVN3i&kWKV=9i>+R*S-u`(5_FoxtK~s|79A(eoV4>`x#pC2)sq!{Dwq zK@$fJGS%^PpFH8IW#Dv|D&$Km<;~}P2{!fQ9Pf?g@M&ZiWc;{t=86X&c3RPmuIg)fbA(XDqf4hb*ETab;$k(iG0NBwW|o|auH6p^w(-mNTenJvcZD%<^+SRyKLpVsz^HjRCrW#iBL3p2x59c7DhDR18m*Cj{Gp8@e5xA}5D~w` zeh@naZq0G?vz=Ekw<&-VfeU%HPmOXO-^FX3umr6?>R4WoyX$%)wbSW4q+HMGPo1} z#N~&fQGr}VF1yCy;eMnO?{odRRJE4S8_h`VPn;#YmgpRkkNv{DMnY|J?G|o#d&XoJ z!S^or>jAzcb48s@?q$&(zw|fW@#l6PUkYObcezktCQ-`S0VC(^jmPE}`lQo#riQ|C z$Gk6kZZ@u8(?(^kf$6!~+VtXkvem%OrXu3d*}E% zMv-~Kqr6W1a%Wez3Tx2tm>wl8ten_a_8eL`9K;2mn#!J=x!RRG^2qaHXrcDd0Pgf01Tx0SIQigFC%^xA-A`KvDGeR@)5cY_FQ$Di>zU9WmHNDC z=qR#1lCNG#T6tA43h_ck`5V4mh}U~#8&#a_I$wX=d$(mjm9bQOiXb*iaBJ0J8LWMzX_6U_1Y zQuk1hr&O>#7bqJ+-Zjkm(3IuAd=QjaFycN&8TwR&Ef0X+%Jj-*Tk6~F(q_bZI#n;M zC6pbQSd(!@NO{y0O-Jy676TD8+&tlD55d<(#tCDm7`85CNwCvowD z6j>~W<2^VA6(x9P8Fv%SCeT1@!w$0^{HtW2r5=a*Ad8{t*(T8%GpA#guZVSUae}NL zJb|uj%ty|c@oCCf^S(3tHXun2(bqIMf{w*G%+CTy9o6ZY*$aqBFYD!Y9C3i0pyjFV z1Tu|f2foRcyPe(iu7YpRgc4V11Jhxu@8Pk;pf=2 zBVxSMa(@3as}w#-X^_NEvGApMs;hc!sqCJvtxx?i4#n)Q|2Tvor2KS};OviAk1iWg z*dz9tjLik&bE)3jCw@)+gjMVcMFzmn0;QbYxjwdMT#eRJH0zsB$;zEmKeTU93Bo%D zLPyXI$*Vk}@=-{bbF)uQS_cF>H9PL%7vee>Od>_4-_ldR(-n?t-d7^Sgsiz49e)+Y z#Dw)Ptc&>CFWn!l=X{RMGWK>?4?NobP_)QeufzjV9QZEPxGSj4;2W$P6F!W++pO4=YCHJPxWC|()R3bQG9 z&zF;q3(W85_BY4Po)HmjRJ@4uYy1<^dWV|a33wm8zY_%?LN72Wx78g4h2-g8OSh0W zRgU?-3UPvP@>e?p&Z1`y{#_K`R4z)Jd)d_ma;zfw5K@P@n(sHxAy@+5kLaKw(qWU` zyAugfny%BN=TYV_=@}0iOeVrcs4!h8K71Q&>Ja372R+pG4eq6>WYrPX#Orje=mG=+ zF-LsZLt*7)a7t?*t`+494|+{zaSF&j)@HPy`8}@;7BO{nr!O{5-+3L*Z!DtaT>a14 zY&0?qA5}fx8>*QA1SvW{Bqm&iU>;E=i24n&>N$R%l3mvcymANQl_|AI3aDyX<2x>b zQ%`Bh=Ch|`h4|7jvK<4I9;QmmkN}&2C>uT8DFi+ViSpB*{_HU zuSl);GBGXkgCVIhS*EZiIwP^oG|#eBj=$ZJD~WCk$fr(j`B7>YChe=aHDm)K;Q%;aBPpU9*Rp7l`u7d z^5kVm^&a%JDDjtNv)Pqs{IOa%Rd9SEwdB7YJS0@;3=5p|K><%$nA-65Lzvx*FzNe~ z+vV_>Z#4+`eLQjF4CVb2mIBb?hUq;@{YNLQ_hiQFTeD*sNKoP&&CwS zsTdZKHhSvRM{8Eb>p-VC?$T<15lK;{F|N16S@gih^Nbn7c58EzMqAbfHL^07V#=`y zIi3sDa^C0dRa%CoEqSLu+D74bAYC(!MUI8DHeJO~yT}UwFLMOrAS&ft>uyemRS?<> ziP=(pZYnbf76T|-q@hYp2dKV&%nS4WQqqmgZECtFQ2%N^`J4r-yC4^ zpN??5F{G19^>7;YMeQ5!h8jxu;o;_`6Ie}!HwcwG=Qmzn5gZ!zRm0oy)i?P%ztqF+ z`Snv!dvT95dtcO(HHTZrdl^c$I_e(wR^!?$gxVNa zx!7|y?WNsaJcp%Ic-r!($V1;(7SIwirAXuAxX`a09g5Axt+N%j)fE~WaO3N0of0l~ zEt?n8O@u{WML=}1dd`hR$oB!vFxIp7MC;kY;6=a7?@$oXs#0Y9^!2Ohkj(}hN>dL2 z%4;y0wF#4M{SU-~N;ZLv_7&F&1W8^aX0i$Xc=B8%oRK>?-cM_FbtZ~Y74)rYD z^D=3JU|+#HNQfwK*gfxS-50lJ`@R_8C_VDMT z{cenS&RfTmT{WCU7gR){yGX4o1;G==@8EfLd|>N1$UMr^P`4s$o#UO=L-C}LoWEZ6 zPe_CBKiu!|`D4;uoF8gts{`$|;(uxrlCB%tvH`uRpcFDxi_LX*|1f1v%wCe+4#KaW zEyHC`w1OPcov%^T=?Yrtz_wdWX;pcmCW-%{r#)*5mE84fOG0`M$HphrJi?z&ip&ln z3=_(KMmQo$MF@+tWQNi|`2^B+UQem4?r!B#tb=6R!S;>{LYjV;1UYR&eHD+^-ysGU zNE?`r$BsjsgXmLksZ=UHyg3+wu#Hr&r-GY6R-6s~zmAobr^eCEQr*@Ey*yj%2kFj9 zA8>K#!L)k0+iwQH8B$%Fa+5Iy6I-$S2#K_OESg0g|E&N~?uaSw^n5VuSl!Mk<=z-? z@43=!5*Cas*}{K-_9{EK{L}0_(hM(>Z;&pI(#2CQTaR8`B&Tib;jq(?XQsM8r*Qw% z?pxs;*7o-fDHonij{rR^)><~d8Ye{HV}?OBQX)>ZXeT%CZ}v%;O2(rAOnd6td0jOs zc8?4{JP5V_%o~o9-#!|#0&3&YEy@!?hvp>exT#5=ZJ+mH*0yoD)tWRf(p zI~VFFy2YU`94f>rkgDs8oEk9c+cyI7>yMdJKC7D(_yWJ}t8gxLje)YH6l!$9r zxJ0noB%B~E*+17v_XDBF|$V@fikDgHLhKUf#ojxz$C^vu?oK$?q z!{LdP7x>FN?BDvX=Y8g^bd%IB1B4ZX67#&?_i)XWH@47eY5{37?FLr8klaIMO-uO{ zwJ{C9deg#~Z_^YU1d0J@{yE?&^vZ=QCem`Wnl`*PtM2x4HLy^P;n#AGYO#{hX}7v{ zAhpZ<0Xq!?>`Chkyl-T1R`d5>*9)NnyphLL3sVcEv-TD#lnVJD&8<0y=hf0B)v-b- zbPEUWY7ol!=I(ns+gHQ^?(u5IO*OY#`c8By`D3Q7ZXj1;8YE)VFC zB#Z8QHG`fbHSo`q9rxr4&2n`xgGlvkLS8U_*e65vo5@DUj!%59u9mW!i>a2i6cXTb zat@5-#GP~L3VZwA3i&=?{@gxhA{NZy@B&}@B&V@UD*w*VhX;n8?CIrhPxp>U-iJZd zmx!PgRd@~}RRdGXOUFf?H+eol2Dj2q0E+1xyHi&PUA!ngEv0mWDdNrYg!LZ&>3bNQ z+P_&NwN=Dh45Dy|V}*c&z)aK*Io$)`rpC|nhJd}iq5(&tGUWt332|_uH?vl+=tB%7 z@yaC@sv>xx1o=lFJ31}B|KnKZnhR+uw8slPq;S|`1#YP3<%QTKlvs2Sd3S48JO7=t zw8020g{QZ-_vwHV8Z9S+)eei5Iy`QaOen0D3vAB@w?xHozj6hdd`o>N z-X0oyq18Kh8m&x>;-538oS7=_9#G^vX9bMQJ%mkG9PDNgKgD9;M<{sch*90zniaaZ*}jv=2J9mrL~;!gc+sHfQA0flkobEw*yw)f2aN8 z4lM0;BkwGSK<&|0NIy#(TnLY+o^+f0>~>VxY_J}K;-8Tfz`dWghLWlBix|N^0@LuQs#|cDf*iJ;y++0Mh{V?e@ zc$pK;4Al%iYwhv*cGP_|Rk*SzIo7hOfC`0`DNZM)*563UYsu+O;MXhJKRiT0AQcgi z>fL{5QTZv`ecuD5vZh>gP)2Oi0v|z~MS-jBn}L|mXs)WJ=S~Q@?@GT0|AYX;DxFM8lz;|sga^(lSP2%o}$Ey4f|b#igmC!kG&7?5wYXP%GN!lX%{hVEZXQ_ zPCQylA?}smwHrd6`Nu20)R1XC=G)k3!(~Rv68AU0kmC~znis!1+O6Akgzjcn!Hi!@ zXaouuu`1Cbay?yfry6>2@)9RQn_un3x*Fu1hf;5@Gik3c&K|l7pIFF<)F1}eb9E9h z$!gH8bk4oC)lQ9FO&z{r+Z(InH4}qfFs-={YuUZB<$GM0n&0@%EUc8g323wwvS#M4 z;t(ThK!o}X7AR zq-DQy1epljIQ|PT_%ORN`xP~n4ARrTQvn|!)Y_=GdWq3!8w>LdQ<7eJYA2Wy0=
D74|AC!D24gWVz9z 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

vMqmY}PxrKh`nl>AH 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


LX@_0)Prh z!K=a_x<=6WI;}}RgW2Rxonf_R*T9`{$-qy-$EQw>2@F}1YS8-GhiT{3Ahly$bib(g zOBNw8zTNk1KeV(dvC_LT*Pf4QefnFT2nJrTsAs3*iioxCAXO+kdOnM}`!aqKK;$Vv zXlIXrA-nCgXGO?SjoQi_77$)-FCO~@_L z^HB0BZ~NBehwXvBAYi|^@>dk5~c@L z3LG>P!{PSuMbqolFv*{BLB!qdjD?5X@}c&c z4a~B9!?a>CnHw$XnLU&bZpj$#MxUBQ>%ilg&y`5Kaf*UnR z{|69Wkac_Mum7#X^BO5Zq7S<#$fnWW=ta!^dI>g}dyujON?EUp3y0fY^~19DEACa~ zR_nVlxT?ZCzSydhO!U_M#GqX%_v&&_x9l=J%f};kC=zurz38{LWW&F)X9oA$O;x<4zAxyr^Rb zsM^NZR{5Bt%3II*8S-vi4NT{=cwl-lg&y-pF$8S>@ZrNKp9a^ryUp(<4=>b}9q8M& zJ&rA2ROEKWLvn?2`V`d(*sFyH@O+uuteVMpOrW=?D?3{2cI zhd~ei0f*3fSOFnnC*|b*0a~M3sV7irltt-fR>=v-8(G|Mxk#*^%(;Ddj{D83A3Z`x zjXon}Ja)TfvqY@0=g}4GFoBbA#8OaVtn6Pu{oG9yzbtCV4HFG5T8**3r(3~+vBg(t zh|_JTKd&@p%<)*8IzME;&T&~@Q|B69R6YazGZDhn^|Y98fztLC1)(2Fc-@`%n3q3*#rvE@t`OG=N(({_%%N8inl#_1rbEm7Jum-+qmp{P`0Vxf_OoEU`LZGx@2@`4cku}c}#*v9(Jyen> zoQy0JBIqYgR#>~@^5)Cf799R?nbX&);S)MaO9t4opYC4o-2_tW$ptQig26ivGK!^8 zQt|T_7a*Qq1mt0toTNfpbC2^eEauL7?R9MTdKcn!tFN8xAM{)G?FH!?ahT18XiHl{ za3VtnPW84a*BU6fF=u}9Z=U`t*!x4WX+@f)rSk!~j|EzV9gJ|gc4K9>&;)T?V+G zIrjrKc~>4Tzl%O-z^iNLDTIp@vk?cO9ES&mLY{UdRCkD5n$2GY z`vev)Z-Xxtb+&rfd)`y`?yt{iCYKuTR{4aaaU^vadeQ{aeQe{3UHSLr8Fv~D?~11o z9hZW|r;|?}hn0N%9`#C1V!Q%Lmp!ENDpn6V94AZd11Xi;XJ^3AvdQNcD*k@(ydl1b;v|K zi6}zMRr5lDLnF|+sGKbYV(0R7Va@F~a_6J=bmt2ze)H{XIs4(sVJ!$x-kd$B**o&n zH;-qSjjyus*xL;?8qwB1C_{;MJoNC+GE*Yq?hpx^DZ681C3Jk%EjtJ+|V{NB<{>mw(v*v|H z-otlJeMZ>s#M*+W*(xu>83+8g}oKC?;g@m4dP0a^z>#%Asy<-6k0L`y`HjvFi&ZMA;@ zNxY1>3G~fIP@3+zVhK6My(9``6P?W5^vcQ;D&z8T@`_kvlX7a|liwiv@MYGjSZ zQikw!8djXezHN&VIUhrPBHwfNh`t_2moig#SQ%ld<=v*-AsrfHa$)>~^X}IV!o5Sp(HMazdW71vC8uO@=%{lY@wbvi+ z)q;Z{$2$d>E#YEqB-<6KkZ5%Q(`xBDeVyZ)JJtO$*P#Qv9mNi}t+0rMIM|4}TeT(^ zTmAzbHf+fA{GR1&Wnes$tH}UzU>gbce2DyT;O}axy_d zAG~wlOWa@2B4RQ*FMqP{sCq6}1TS~*5#z7^qLDpn@g6y)WI8nX+M{dP4Qg&pQxBmK;YSc0&Ifs@mo_PL1%6o0y zY@^B8`nqE^ApAAD0=7A3K%B&w&Sbk1jZ;cA%vJ1&^0@)CuIy?KvCzojBi zISOB+N*HSLT5wGx*_eSjom`q!{1aXjQA$l z5Z&}`cME++@sgPoN^(ScVe{>^-@^H8U@h-!-`_243pA<8%max2TbxU;15Tol<6^Kt z$Z1B{GVh%_yqCc#N>+WO4+T+%(v~s7TcWRc>CN_%CF$o(2K*DG>ijp3G<$+O9&2;p z!Z{($;XfTP^d2CZT~ovuZ7*6#+d<79(^R6%e`|-TLEBNCi+sOE67I?JC zo*qBwY&8RmZ{}z3k+tcU$G1Opom4ShhR2<=UTYJJlI!E5WqV7cG!Osgedm7t5;!et zoD45A73Ji2V-#`j@?$H1JivA@PUKf|&}UGO%@#}F_3WvMa6Q_%vc17btWfIi)u8wF z)P*cnT+_nB!6Vejcl6r4&D{ZidcU}>vcB}><@3o04RgNi?N(U0bUF?_7s~2N~(vn53sZ()v z+p}uByhH(^W!kJw34eH}XYVuriAB94(Td%|;?bPVSUdaTr{Xc*AMH4r#FkQV(^TWG ziqsGk9PZO1kFIe~ZTfDGi(E(erS#>|&LDu@M)X<7^p z9pjiv7Sm%{(*O9mk116z&_BB3!$Lv?eg0AFU$z(@Km82oU{zSS=!2Z6uAKK)^B#rE zkOfVZVR)~U;2-%2A+q>b`Kuw&)6$3wu9Rb3oS$)@&fZ+~2Ri8~I7G!2bRSZd%T1dL z7`ggf{|P0A2$JemU$`0Gk(XU(5QAgWh>|3qkjw5qJC9Z`($~t6L~l1&t%WPXI^a33 zavs%@S!~{!`~GEm^Qec=&5O|jx4k7qQ(lOr>*j1ZHPX+OKJYnRi?7TP&-k8U-ZJM>jt=hi-e%ZkDX=Uo-la1y;I}{|LqUO4J-#+gl@UjgfS0sblTJZTW5zXuntd6m@RmI1eSMEjJtH+C2l?&nvN(X7LXqvEp=hqywPRjI*S<7fRM(Q!UQ?WZE2+NhN9`3(}A>)JvesGjrF@ zJ6no!^RY*^X=(grjVgNYv419MHvF`6$QE{`x#h5ufBcOJ1V={%K@2bA#{bY~#KRm& zxzgsb5UYua^7!WWTFg5trD^A4OPR{t7*(Q4IOFvbxyQo+YmRO()eU%vW-Dqfz=UV8 zHhq;7iGq!cv&@URRX%SKFFxE`vijQI9HK-YYC9N2=R!z+U21mS<)!~%|HxBdxuGRh z$26MC5xarec&sq0E0$9*QO0l@XGFU=Mz8VoDpoUiD^HPY(dKklP^k(|nDb{T1DbxG z@&u8w<@2U*ba-?&aYUr(6Gj@!r>+=jOiknD+L_`%rkGtsT$(}XY9~H@4SVw$M@m6q zkC6^0rk|#BQ)zB4tY4ARnqBR5nSa>~i)2f4T=G!QF6N7@eo&||=2}+;a@)G^i)|9x zq|{$c2vm73Fe7RaeizScEuxsr;^l}+2CbnFUPr_dIEeKS4143`U5)GY78SbsqSmC+ z*QNHI71iW3^ssi*C8q)Npdf;QY)qDNKb~*%1GrhOYv)kAZAAQ7In$xmu=K1e*iXyT&!g3Kv-7f) zQG+RNigZ_|RKGGA>ORrJ1D~wV{2JSI%)b*N#3ea?#{_GsI>E&SkFb$&l)Ct;`wJU{ zYo&V95DCx4W>$-5n_(-0CMm$<Lat~Og_sxR(G89YNn;Y5vDkrV{-1YuD}nxGYqHt%cv#4Scl#-yuG!SOnpGJf zFiKcea};V^z3w|*%?SM0sLANA7$>s5bt{sJDJflpF>T&7$(UhD+pnA3D#_Kan#NTp z1tT5|(^$fR%F+Xb$ml82h>73IZVdT0Ih z5@N7%vwMv@T213Qd`|7Fw#AN`WhWC{?di4e(u9M1BU&U)Abur{HK4CqeYx_pW6G|7 z9MxjU8W-b9sk>&DmO{0e=3LTbXgehelx%tgVXS{n{#>i-4y7uhiupJbroC%&;Vl9r zFSv_eAKf#w7cO#Qb!DCM|3ciyd?O#+B!vAu8HGhfKkz|3vyQdP_n6e>l}sXXsyQXt zOlCuqN#4r2TRo|=pr~9rWktMY*3``1tM|#87AuRYpd~uq>ik0u@5V_e+{4n!MLbGaWDt>Ee9Q>p+JI`-Q zC+tu)%8*|5wclseD`Q2VpfHQ5%B^V(Y=g3{y7kk?6VFq>fJZOZGK&_b?Q)6O6c%di z3T&rD83sgLSc9K`zth~{_B?dB=_>LcPbVk0zo7~vQDB;i04h)6@L?b;lJ9+y=-OpL zJ><@kA=B9_w)R;PN@V4xb!0aj#qTTG>#b?(mc^Onf6C1`Rqr!@C^ri5$Q)T#Ai12H_`}heqJR_{Anm@YV zIC6^xS4-^-C2LP}2s(ge?OF4~{A-*!Q`b#k?TnXKFfods#icVH*+H(7Ikm>J;w-h- z+2dh%p3+jYO~eK%q7|!^jZ@4NH;= zLillx72QUcr$y@OKT1}mm3nR3j_D-~Ry&)+idu0SPzGh%8&ouGZOpg=8J-SpBbOBm z1vPX30H2v1AT$6F3J3uO1qA~E{5*sI%)I%`=YT?o#(=>jXGg=L5XB**=H=-{uDx>^KkNbS#M`c?m zXt@7oboN1cF#nxx?SlU(fY1>Nb!<11UIXxJ6FMhH?a`8D1}IPD7UVJpsW?MtRE$=L@+VyMtx-G2bqdfn)so$lmC zWj|O01lI6u8RNeELVksv6a$)%d=p`bL7ln4sfDJV!B`EciCkJt3|GX^cNK>}wmQpj zSXjdw!S4+}VG#_zzW_4aFPu@5DYmVAEr(7&-q|XuWTd!RH1p6J< zsYaP_wghg#fU1#gjpOScIXh0*V>O@O0Z2@~b(;0T-Hx2l7~D1&I!h)^tQhhxPi6&k zr_u(muS8Tmzb*LlFQoFJ^g>@%?YImkpHOr&<;wzm9*b5y;L4ApsXbz7Wmx;HTCWML z8uB>;spVDMcf{H%nvXe}8=a*kNt^2Tx(o)+CAvTc?X8yJbYteyVa<}25v^86t>me* ztQWx>omcumj^>vy-@ZtRUnqKMj%s*6AEhJnU~x@PJ+{6L3hQA++YSE|WF4wd#9I`9i^7>Y(AA+N(Hx(-ry_25n z+(K!PKdKk{mhGt9WU&=^wEe9>009wmy|54ko{uTTCYw?RjPNqOdzd!S%?rzOTIBh> zV$sP|enXcTKKu8@={!<`NZI*g2$%os4^2w6HFM~KqA$%yxq%Mk<|D#f1KGO1g^Q#m zj$=(2q;;191=6EA!PlTzRq?1NY~dEO9|SXK_O7GjO(n+J$o|t4hnbe2KV*j3njQ$Q zZj92Ex_)kgcHO<(@rY~#gMMS+G- zCpE>x+f9e^uWj0&14`=bCcG$+X8Mo^=29JM9HYxVqdlole)Y39Y8Cw{vr~;aT2+pE z1^zmyvxC3jiEC*WP6+5@Qf`C8y=g9UBd02;n4qKl@efdzi2CuhpfV9AB{Vl}>(@?> zh(i9-UytAv$@S>sfb7-#(ioZiwpU$ARGe?O zQJtPj+ugo?!Py3xHCIqS&gW0M?KMU zpQ}-NQ$)p^*eUZ2BV*L@PMOT$!i*+pS!z3zsMPZemOekz-uxIbjB2YvQ>z%MgN)xn zN^3h__3(qDfEJgAIjmZ1kBNm*8KBL^uP0#SQl$yQlH!EA8`{BXkrR(s?97jbjz|Zc zn7sAt`6uaL6W@~>atj(u*NFXwxP%>L$syw=hRo*1{TicX+Vq4DoRx&gH&L_=lv0!W zm;~s{n%(yd^WBNoc2yelkPXC^0P`g-xyPckD)%ez&G8FQ^Z9LeZ|Bpwt^s!}!pgYq=2ffj}VlkGxlp6`~pU7)+na(^+z*e~ifADMTl@;phfYAW@qr~Lf( zWUo5=qG#G*fF1xW9)q-OBBW^G-1VBO75sXEYbf`q#v+qoV}WDbcbsl;ly{ky+aR{4 zC#)Gg%rX=q>Alkq-QmZgO*y)uS8!K`LLBldUfP~zGVf`i7)3urY*OMMKr`zUVRBpExep%Rl$)u&6grXL-j9k|m;gKDnOZCh*WCxx1wW&lHtLS%N^WIdr`+EXgG6n7Dh@M<`^R{O@W}V% zLPVKTC5njpB!gx4CwraAMXtxf@pn|x>k8|MA}y?K+JCmG+#0C$_@JD}Hb)?Ahib7U zh8a$OJ@3nGhD*=HPQ0_*Zm+8eiQrnVsM0FK<>{SO8*92nw0*Vt2jFQ=w0N9g{R%9z zU&!M{kDn<|=5d8QLAZHU5pjBq4C&frXk58%hY-wGMP}AoH;ia>WWt2D) z;&ty)sw60O__l1YPA@U1`X@K-$C_;e>uNnTrAsxtpaq$m?V+YuwMp)JYDV+(J;Q9? z&9RVnu1B{5SJaO5Kz9*q@u7JV z5n6ieh&rtSn&Uw+F_=jcC6Z zahE<&_!`vq>#a;qXs((hC=QpE>sXy$iay)-(>?N0Tcq$<^`fr`sW4Q%?-!#B!KvCT z+o4H3U+`09JQ+%+_Jnd>oTgfpC{G%s3$mD(~-F7!-T=Q){5n;Xm8 zk5o-Zz2C=WOcgBRI%-1r@V*&SE3-e+?9hm-rhmAm;+^z7E?!L})4Vuy! z`ALdzst4Zk%24d;O4U4Oo4xGY$#~ItPFe;j6xhZ8m6VbcrKMIL zKP_Heh0b^t0hbkvcul7Rn#YZ{X-r7o?k{eo{z(>>9=h#(^AtCsyJgE9hcS<5)KgXQ z1Ge>-=fnNB?bfZxsZs7N%y52>+AWuz;&l(Z6?pN)EKePdZ=QSdYDzAU3?+PeZXzX^ zX0>N9C>kgXdjfj(4VH~MC04bk@QmQw64T(T@K)T5jqqrvf-=xa05VdKgEY0hG)7$dAy2~n+r00pz7gOYn!x@{|C>U{_{0| z&GuiC7;R)@S#h0ZOb>s$N6nL%Q8S&JbAH{jh63k-eZ zu|`Sp5nNZ=vC_EDBO;^gt~RP2E}i@|>Nbi-2U+aEQ4(-*-+n1Q9N7O=gm#4x79+py zyvZgo`_M3^J)M?0-kwW#`W^o78*>kufjd&|9S02a=oL;J2k+;4qO-m63#q+L#%6IN zXZ(^C*6omtj&({$*UaJ0KI?(GNl?Jx$}wiEIp1cXZDdv`9vo3tMc)CiZ||$VY;IA< zCE1Xy)ZX0&yE5LdCY(dyv(PVWt?unUV6H{Ns-qWRH%zS*vbSD$S;`w}OLnvWj&;p; z)(qk49U5~8>S{;nkz4a7B$_1;wsZ7ENRM|D^*>E%q@+z##6FaGE)2dC*Oe3<+m?1yh=={v*YGl`1k+f-~IEXj6q}F0=&Y;lzl!V_lH?=xqaK256oFbI4 zcErB3cmHElpm`U4+J+iA$YXa5YA(X$k&v*&1p`J7Pm-ASut zXVrF{cy8M~ZS+8^b&9%sM?PqDQM-fa&GR>8miMcXseHALhm-h~fQpL+Hrbj-b!vvJ zo!(n})@g=o*7yWT2UbH93s<*?BFM|AMvoF{uCCj=JZ+^#$yox2c_U)fW%6oOms01F zeb7GT_m)CmQHE)7+X)%tv!UD*e9lzIhJA#_$$ZjhaH~)E#6AG^I&8`xA>6eaIS7tbwcG}|X<}rx3V_uw~IB#rP8T!V= zO~iCoe60m;4h<5MxzGD~xFWt|EzyUby}X(|r1Zj9itFKm=p>LD2ZeC!1CH$ig4SVZ|2J-5Fnz6Jhg<|NS%MK5`R~= zp;8{zo*=K?KFF9mz@SM|I%~%x&L^K&X^Bg$^|^VIil_Pld~wlXD7Kl>N-)MOmfGdI zR|n&D$y;OCq}wFMqiG^JwZef9`Q2w0!(CmO=;v5G-fOH7VMv4rj zod~+7yWbXiO1IIcm=eRBJwLupi(!{Bv3^l_F^BBmZheWrU6Kiz5%+J-E7*_KurmFs zC4^&y*(VM@{NQw6{|cZaW&e}kLM}JkNnb>$*9Ozpcxcns-{rDF`NXXaj0c)$>?ae& zF$rc0Kx4&B{Wn8bBD)LQx4=N^+ zMBhN~(csy2Psl*5l$@kjj?L14Znvevxe8^-c_yICJ!(hp4bty>Q*JM|6r43X;AiL) z6Nh0YbtOE?%@McI*dt8Ky(YB2y1t$gRq5(@rw4z6C1@V$1Q1$^Q5+IuPGpQO@b(O26`E(b zsl0oXY8#q3AwAQF1%)bP#p*V=VA}Z2^I)fsPE3wX?fA8{o(s$v~g z!`Tj(&yjSOHEGA)K(smqNtkN*{<^(xmxEFgK=&gg5qZCUkt$Ixz3-&f1bMa(7fbrQ ziZwzm{`*b=K;rj5z}vTjJ>CoF-=tzu9>1L<&1@CHTg&E{KbZZV42IfLwAN@CkZD#U zFWK8{xNe$Xbg~yXBDibKPI1=lwF=1sQf1m|$L12V|L8&7Vr8lKAQ)uKQ|pTX?d(F#&E zpVaQJkH5Q6;R>5Ys=nmnjhGuWnltN#Db-nCv)m3`JZDc9|4F2l`KTMVnNsCl3HQN~ zJ@<#pC9W#ZkzYFlnP+gcSvl3r7)h~=#ci(#{XFY1chA|~`PB&++F_QQ)7mBat;ZBT z>bO@9%k+L?^X&a*RmkDd-W5IG(z6}iwtLFHVB=M_&Tu~|t-f7YwLmM?t#*{d^Yqo} zN8hct_w?a~o0JtfUXCi=s#PFgt%dXBlMBlA#Eod5^zXDbzKNtblitaT`5J{EkBTyo2jWqnV8NqsCf<2O4^!&&}^-xaglNYDHEBj_v>Q9QY zcT{p$m_6=!RS3tEU91MwB$E|;TZ&u8yEePXA1D}U9mb`&gv%MLPhH|tt*rzps}JP2 z3A8Vk!uFfvTFW+?(X|ku+$~EYT4~I`cO$JwKOglY(L5+mvd*{@`n=E3m(kuzSDl>S zTsWG96tKX&{QB&oi(2WU(QvH~@$LAh7hUyTnokwJ3a)6mWDG2OK-WvHl=c2&2Ll6k zVz#1>_OI!MVzlHWWmvv6#ih4dwMcw6^Y4SI&u|n#M5$VeSl6qBtiQ*$Lh6MHAKXw`CuujfoLyD;P66e3`BIhWKT@T1woB}D?|RMede|j6)9bS< z-%Ce|o0m`J))N;GTjG6{40Ns5wA!BLo2s!(bi15q@w1T{gt+iXX^Jl_SnOErSnc+4 z4m!en>957c(O$n})l%zrVEeVx#%4^1%1~CtggNNdmJ3QvWk)dcCC_NqF@@LSsU-0e zdnsbH_BE{rd{pK522Y>huoIQD-+^tG6879BItOmb|6^_1T@z`WZ*k&w_HEy4u#{&1 zmCRomRZoOoDR1*A`EpsmdXEzr*i<(9B9|}JGORg z+qShcJGO1xJGO1xo*mn^ZSB~4_snVWDbv-omchgRIOM$2uwbYi_+?AeZX%DC_W#51(Ww0s>{nz>4qd4=lK zD)TaKbXv0q%@LqRzfLrab!OuyL)J>E0GMnW0NbfZH*`4BYys0fd%y=vW-txi+gSu> zJdwcqtT39gtoL((KJ=AK7JL&caddcGR75JB{ZV{|`ibXFNhoc3mVTp@B34s_osmU@ z(cWh)Rl?kaHXF~>Nj>^L;rx3^e&7$}R=GF5wC$P&!;G?i8}U*NPxA;Re~+HY#vdee zL`@HGAL%8^lL=CL=nl!bdW88@bll$>O2+B8yLqBqD{S{I6koWo#Hk^E#iD%Ng0)^l z!CH|MRZ73S|9B!QKJf${+2@~Q^J@;K;9k0}IKddD+-wK@F~_5#%{@LfvHClcs9Upm z)&}3Hos<9x0YW?IwErk1+sQ6zDCs=KS+N=X_*wQygG->d%imhdtGGs1QZurLP3JsJ zH0ha8_6sMu_I!MN*T~*vw_SFQDl(^Chq^#SgS>uJrFy%;`NeHU?O-78ITWvAKW_e(YG6%)nINRp&2NP5QUnI*fVF1|@ZpE|*h$O^mJ;$qN+ZkgEBM zjX;NIGib(CQXIF-yE*wk(p@=Sqvb4D{N@!>lQ_cz^SUolg~s5_8^%1S)Ml1tc!^SA zWQToVD%*?*;GSs_WM6Dc6_bY)tgXQDTMv|6#%lPC`1a<=oL4AmePnO*ycxDTR)$3V z;8CW88jSoymto!gwsx;=(DzHHz&MW;E8B5#kl4gSH+&o}@Tk)hB4J;89~Fjm%1 zR&p{Lg03baIPsiedVy<5X29`T6hJ$R;3n>Q59uaJbV<&5VO57f6C=rSeP|DINO0b^ zx%4h4k!Cx3-d2|EmHZFTV!qIr^+Mfi%PixRpZik}Z-;Qn^Ny3=ow*{1l=efr0f&-^ zq7$qpB6BMFt+kWZQ@arv*J-(GGc`5$jr280Nk8u5*WH(_uV5u(xU1@?B z6M$W7(2d2Yi;=$eQ8KJ^k$Oby>=34v29#FJ%rOhLb@TzSB313ma!w4bPaDwXT-JpoGv#g>Fj@ zl*#Fjy*clFz7OihMf2W0{nfojaF;BsbAIkU?4)pwH!AjOG&(f4OLAXKlez)hy8dg% z{@NNs_>cxh)8D%p#Ks`Q_J**_f%q-zlY23v|IxlnY&A4AXx&fh!?iXE?41U&NMfQ9 z_*L_7hMcmSXOGHA6n!zddp^&S>VYc;meKJqw$Ul&eCsVCLLgv5-XL~xYdB16SuOl) zvQCtwusa#>NzN+4>{()n8^^efsGYQlwuZ2L*W*~E)HB4}q)vaI1^e=gB^#fGr3EsL zHWRA`v#Ac~=t-s1m|K1V(}l{{m)cI3q%Fq3tsfH;DS>L-q0R6t<9NABjqH1HNk5v` zX?0p~=1VwC?L6tUwI-VYtL$Gbq<hF1~%%O-kMdC z4O`8sc2pLy3KRBkY+f2iB~*W`ku!ML48{hUp_#;Z!5&LS#|!-hR?{l*k|d}`Pjb^> zr1!zhoV60|VcfqVLsvWmKP+>0_#aW{wNwsH?gWY8<3x3o{tRm6gnqsS5$xbkYcxuF zUKBVQc@L~2REQR}T9B8a#G~3wpGYQO%fJI~BER+C|`UlfI9eO+#%^OPR4We)0fjrRG4c{?OUOa0(~qLWkG5 zhz0dt%!W-xzAk7$CoHCADY$e(5O0GcC|-F|0RQ$7GmNhA3qml01$E%|k zHL;^6eNnHrOc!k$cq;EzoPZ(vOEF~HShwK=JJJ4v668Cs(^WOGu$c_4B>E|kk#PAA|8 zcH&CQjPlPFgi5f^%9M}n7R>8SHQ=%`3A;&}9)qKE3b!N~Sa&hr zvL#{~$C)G%d6T75LvEbjPkQ4>8}luRKlGI^mP`1YT?UZ;<(H6jl4kwJ8)UIv3lg`u zd~tT%jyzIORjKX2k}>J%YhcYd)G$!ws0y5Mt#ou^B3IYv^GPsZkJ};n*<&zyNP0iS2PP!K($mG*m_#k-(cNb=}-Ah`mHNaS~Oc-Qired)2mM1Bswhmw$IL0Po zEvkP_#!XIibyfbgGr+ET=GG$AbwYE9>6RfXm3Ve@Nrkdrv{q_vgw3=oU$tu-gY&*$ zrMJ;W?@ybV$M+0o0jJR>_Qf|)O?0whtL1C!j#kXxNwLzu(36o!KktkN126FH;oZL@+E}5M`j?4y`GL>;;dUB}5L!Fgx@X}57YZdVKC6ue-e+Te#h zd=@!~t5cYWcTt;JM?;)c5Gv#59&48dMq$%Jw_p^aYQ%~0K}r0`Sr@@@Xbc!Y6ds=$ zKzyR)=Iq#y+AKi9%#8|XrI@P_!wodxva*i6+)qhK_A&DvsU=O7&tC(0(GjxYsprsX{{5xsG=b zuxa|&!6K=1P@E9OC*8&Hm$@gm4dTN@nlEchc=f6-m^J*ltT04(gufQCC5S?wW&Wz33#g-CLC(l*90^DS6`$KVdUXo_4)yp97F zXX#tXD|@spMU7rvuD9-SjTYjZmDRJ-@rGv}N*%N=%okTqk$VYZC%F|}Egj^KY6dzR z`<{{eQbu$x8Fd+7I2@dC`Z?GMmvp)Gku?h8lh_gxH5*ieFhg z(iD6yb`h|kpZ)12>AdFyyUqMtwBJNMWueq&r@ho@K=mazVWB8d>R=3`v=f%@%;@6% z9eEuDQs-GcE4--oEHmyX+zOn>a;xqf^SagT7A_KZDi zwE{&3!d^h5o)3ksd#7O2uB!A+zCG)7PqJ@LK6b#r1Q>#Q8PDK57f5X$+LYw-d;^k) zQyTIOh62OEmmC-oY_s2L;)kmK32*8qiW0;&ElJ#t)mUTfN_7;~4ZDfr z$FwHA?}M5+Vb^k^DPfCAhUAqdh2n>rRI=}XGvu!{2^2S$<43=XGyk`^C~nVkyu?k& z*=x@nqvX(Y&`~$ujfKFk`O%Fp%%a}ON4;44=66O(H}UU;_dj_#SH4m6Gta%^XFF@( z$?pCC<(2*at^d0w-}1c&q4lF)jKJzyH!e`W@X`M5d)MCMcSebSfVBVSS^TG_lMnH; zGvB#7$$^`cvsc~wMri)~Mk*riJ%?Dz)i*@}LXU^)hbN#DW&Fozj(PXx=U;ioF3%P3 zo!;5b?T?(4>=Hy>tGn2{nWov*e}J}sfVi!z`Fgp~^Cpi|%^P~(=2NlXEtBAD<4%zd zWgmI3dF|KC@a03aRhoITtUFI-sp>WdU3x3J#4Y0iF_`Raw9j>HHnblJN4}?f9d@={ z(Lm4Kmm0%l)w8V)vKn3$!;;Y2WFB>DKc`*N-amHkAFK@=9Lfy5`t7Zc5kDGZ7BG}q z;ZZCsu&zYL6kPoHBvo;bXCl`hjlN@y*DexFdf2=$Sn?j2>`O5erw>yv-BxEUPT}4* zNnPbs)zZNITuHzE(MT4zyndRStAbr~m|17Y%9o;&j3}gPY#iSjcdKZ<-RLQGOO~i&~hN7Q&e9b|BFr5R` zxVvS81En~6e~2N_kM>dJ+f5z_PM3c_d^}h?Y%FWx@C>OzzE;T8(+Jnt0= zwnNksL$PW(RUTtwwB}%_ZChI{(~+D`lGHJHBsQWA+x;Uq1_F&sq}7%Z+?J9z*Sz~8 zgYIXLQx!)TZtU>cXI;lr{Bh1|IkpP3hSUrqs1>9#1(eAEj^k)(U*X&jc(_!9xaar_WOs}82tb_O4gCI-JNbZ~3@oZ@JO zx%x-w2n>4wCq*5#T~^euF6Ex3j1`M2yG{&s{8vpBu_(j&>UGb`U{N1ZCNgstGWW`St!M7i z`pPd_w{rKO=5n$20i$6iyge8=D7-_V-9VbFIWvP$cfMKgrFL7b9@=z)XGd`~wNlS& zr-YlF3wn)PaS2cln*m*zl$wT41y+QV0z-$DL-#81zL3gWvj)4T|2&Kg8rqmF-<*fb z6u4>Ue}IQ+2fGMI$36(nJ4r;dM=~uFOI!2szYZ51MHX%q;}Yb(Km$@!d*X}d0trO6 zXrLEiclO?Vbp~Cb$vuQAGMA^q%o0r}f}~(_FYJ-n!z?hHleYods8cvexB(x73FB$n z5C`iHE(-S_;5=(&d@DBIDfqPcPiN)682=0s?~nfF8rZvEE(ZzLaeX!ts#)4C;?-Fk z9nJ5`S4SPQXrpXbJD_NI^XdC@HD@BRZaJEtpMu_;4FZm$Fec1aEWXXw>{G6W^N}1b z8`0VL)MY;|4h1#uHBu`APx(X%L)}kz(f@{Rs6X!cU{crowO=+)Zr#yo`UhC$jM40Y zLytm3SRww?tV`_zm+(iNrTV%Bd;I#YMVpTzq{h|M31oWd$b{Lh=9N^c;E0k01z18} zYYmwtynwF)i@^86|9AVRD#`4JrrK##00snS2YJXTN|RA6oLdZ;`6}6-e(-lon29TV zDT(zlDq6CGtci6fmjt1;teXgqMS=sffv0ONdBBW#uzP=5qbqI9`|SIZC%DvRMsW0D z^`*=Mi>ll{uZ=oRI(4)+I@OtUnp@KgJK>4|=j21UadvE~Al5wd?(B=&wcNABR_S90 zHe4%NFHvWgnSksir;DkK=Cd5lt+bDdE4x%mBcH4eE-2g*UJPZpE;KV0TosSsmAt$v zX63Ch;_L&c#5p93UUmE%ox{pzG(DF#n<`OLtKbrr{L-h*-QBqPQ#@qLe!}X5u4Yfw z7AGg|i48g$sZZ+?CDkdG+G;HB_EpZM*~C1FF?FXIA$0%=!sy~|EfSzJ;j&T^W&TK)VWM9#Wix( z5ZSazClF>Sm1Brc@EfDmKbC_qz@QhPfma{0jM1u=PO`nf)r*QfS#I`23EgxvYipTp zInpN&mGens+-rZ$!@K&q6{FQIW*yrq%au8oi)7TjA=%bT*u!cYf~@K{ZB=*&Ha!_n z)o);NC}NAJfD>{}%2ag0SEf9!_0az8Jr;;_%3y)9CH9y`r74O_Og}fX9eIy35UxzRfKI7b6PFW3kzALn`a7dj`yT*3N~cV(cprPq zP8M*u5C`#q@51{xpb90kf5=wCmc-z4YLLb+9KuQZD9_Q#uZLAsrZ6mXRVq`$WgjHy zgkkmr%S3f*eDYZX}W3ok4$&T zFz&==x%+mQI$L)Y6mC|9%yZn~q?}eXnzjgJ8?7alH!ZJJg=dr7O(wWv@&-dwz7KgD zrWUHs++zz~_4^tmQk)Sh(v6X*KV@oFj>WKr;93uTQtWI+)?3(&m*+L!Z{lxkgc-? z!e8>OeRL^L`23s}u?zk{BEYX(rddiO_R0vP%pd5*u!dC_fSgpKgRdypa+jVc%5VaY z8$k#}FA=4czdS1P%|1#G@LAti&l>IIx$X<`t5Mczxbg)%#Zx9b#}_73R0%#5iEiwf zYA#O;+f?ncC#k(_({!{%B)h@3a)?@V`*Y~M7yvb$ zG`tIE+8RP(V;B|l?z3Ia*%~qP&?8+Vl&5Ju?<8Hoj$HLBT_yEVLnBC$()cz8BO1^A zfx>wHjc{{?V?O9p%K%e%JL`x!YM4P+C~rh&EmQ(qBdif#Z7gE zP|%|Vww?3b7Ik-zKjcr4!|0pY+=rGrkfJp!mK?!*k%1E%NB;G6g~f8B!5epA2*;N! z(M%MzaQ)=8T|=%q+sb*-?dUuTawkP*8cI3Dwh>=x*0Pnfvhd+LY#b+nv7L~0*7?O@ zBVku%u%SL~`jZ`9GrnYnTxgb22nzM>@#G#OW;c%uuV zxcQAC4yh|Bj)4jx)wR4>>6(I-E`y%lXYbrLx`%er-lDq_iw-g>v!T$^_Xksg+}YoQ zR#_reVa08$pkB--rzmnz%Ye?Kb};%5c3o}(RRq*uvAe~8J)<8Z#n9y!29nd!0#%=M zs72VAD=ms$irK41gH0NK{!NIioJLWhHj`RXRzN#!BUFvP1c?ip$0@54p0Vs2QK)0S z#WhIMrNS=KKLAN5EsPAlG;J1D0vRVSxyHDu2;m`4Z$VO*;e>6drWlbny|-G@ZRpZSdPt z(V-!+D1XHts4BMT5cq5(TD57LozRFl9pB=?AGGzbvTG>f(p9-4d`758vN4EMRX;IY z%Y(CL_&7TEg?B=eLdq@x>m>LhZ%K(5Yw%bzQOY63c6duQ#LJ9)`e8gne;eKI@&FT%P`9xs=E!p zzp+t9gFDrPyc8-$)s3nYyyYtY&Aq7MK==M?qB=ZB(qaXGUMSbo#ZzmjCa z?%i2L&h2qcJer^|P}L&kKn0-TK-wnhV9$GXk>*u6L4JB!wmanBE|KBPL8&=gPhwK2 z@(lFEX4+_{=dxdE$_U(Q$}qetX5LKfDVuUd-QgC!FbBu9mJf%T=*Vt^ zn95yu9u;D$G_0VUhRf4RY53+N-O;H#7ncvv4~^c7Fyb!BrA;V zo(8OC5_I{cu4(Y?S`u51dequN&en8a7$t>nxJ8jqAcLeT%@^h99IkL@1<=d~vuY|$ zc~i9syNbH6KpLyft&BTN3fiLsH)$heM}`!|@kRqGw6d(~6{t|Dq?TIXojvMz{?k;s z-YFm#pS4FUlHzI1SaMmdV-vFIahJHt z?o`t?f0dNOmM1MJXX^_~dUSGGj>RrJ*!8qoS40kuWAD(cHTd3c2)70wbp9xCO`JJQcG{rfxLA`)&EVcphNCVf=%5&j3q*flNAHD&DH z6!lI*9kXRCUlYiemT6aEm5VUVqbfRFZkUw(nI-Q8TvX?Onz3m(ko+{5Bfn zHc-nrz$D-a48*WQ!1AiNhR9kIfp(>n0EzlMp|h83_XcQFfg@SMoGXr*;!=n z%36i_L)b138AeG-tBjMr)R(?q8ax*Y;S_lMSstP#J(9tJ%h0vCmu-S43_I9`4LFej zmf+WV7t<+b>itEJOM}ywwiW)4WfM8q*;XEqJ;iN#RNWP{ubu9bNB5xVvkKwJRaeu{ z9ZwLFdvNbwRYeYp*Bl@4Cb%?o}g)JL>agO3_w{ROYErg|xoBq3Bg`h!fG6(lgN#V8+LvmE33{k4$TawOgRv z3aFc__0SU?(n3FGkvzGin$kLNzHmR#$_Sb z0jj=GUbxst<9Y5TjLrp8wN zB}NbXM$4JbNLz9Z+C4_?HY9u?&j-wXm3`E1iMr$at?~bZqRWk zJ<8)ajDD+YeJl8s$lqh7d?Pmgclr-*1Mof0%C~y2Xo&o++7~ns-F{290h;-HS0qkR#i*c@=4{ok)Gbu z&2ylxK=09Fq-!2V>uSoQAIEIn+tY9T8Fqo*9=`|evAn0=oNqBK^S?{hKY+$Rz;{RP z8_i6SI@K*Eo4^YvI^w|3SrDad@51{P#De+1BZodZ15@_fR^(FrL-m+w0_Icx_ zKl%FWH}|gk!&Tbsui#c#ABNtr+tYg>MPAaK^J{qjn+{k1V3^j!KftVLI+I|a-+;Y_ zAVBu!4(q%$@Ae@{FnPRG#225v_bxB&?vfLTPxwX2sNZ^j%KZ-z^bdean6g8-8BG{= zYYZt!?*Ex-EI-s=cKG&581V+5K{%L=eOZu1d0;L-nV@xJ`#$U$2VZ;^ z^Lyjlmfb7IxWQNEXanuT&r$vUAkA8L8Kjxmyz1TP^+VO|+wpF{y*!K4rK60e;<003~mkhfS?U&|k~;Kl8%q{Kg%ljUiZr>h4D zA_61n4nwz5pT2-`s9WioYiKhhCPsD4OPt?LvmS(Uc@)t#yRrLr83W$w5B_^*Le8h5 zaBPD~3Izz5?G8w7hhTSp2=>*`%dYZ?56FeY*}dSvs#lpj9DBrvsBfU$AktqysN)&t zAV}73piI};fX>I)DFUr_wybT80x(_p(LmB+4ypa>cWpB`EI$(0-cOhbNm<=~`LeaI zth&0-4`%+(8>}+-ynf$?+p%v%T@d3)M=5nkz&;aVELNR*UI0@MJZkL245!SfWBDLM z)141Y{Kp)foo~}9!h-)-o>`zg`9S_}Q|Qob7AwoJ4!^&zCcsho36syTJtot^x0h7? zQNx$IJx8#VQ)3$;!=XTQJ&TAv7E*<91=2ll=Rj$2ko8*=(P5mi_equa&u;E;_h0)R z5@gPh);m#c4DfK5K4FeqTA=kwsdl{1OwSoJRnmE8#L6UpRAFMRPgDd4k~zCky;N8F<)zF?5)O!j_vI+M7A z&#Q>|&bG0K!(alVykRUn7;#%S&nMF2?gJczMWL6M{{Vt}OsKdqCIe)L@pp%};B(iW zDkFjQ4v@}}ThB~{uV9R;4v^-cj8u$e+cfa7RXUzGOeTzd!~_tnzP3KM^iG!lB+t z1$4;Z#UpngxFJpjVQ+s!fdRZI6z+D3^pi3Q@jodN?s>c+K@JaBke?Wzl3fLTdBv(6 zl`stVbOd>4(mA`(fPO2pZ-hgOKuEU!Ai|(Kr%=VAnemXo0Ov}>&3GG7&}6t14TBf_ zakvrJOM-46P@pu#Q>56Va1ou6S)9`dDXIhrSf8^fu#N@tE;b#R*+oDGs!U(w<1P`) z)H~15z6hNAmGbq@KG>J=^e`R}UbGio`i?k_9`)%@`98~+Aw-4{{lGWv6zWZ~L*0i( zi4&BtAl~5c-h%J5&qK-LtyGorO%Mv=cb6=c1uf5qKZj1=JfF+0|0So`f;5QcfKyU$ z1^n}@gme&3xL+mCKRzLt&!yumEs32?PXb5$g%DG~0st*KEhT}lFO~}8iwn;?F{pKD zppfoH5T|#Tzc}fyu^?!u4_Uq1Ud)9(rekMTP-#6LdyH+8+{yF*#wp#-zU94?eSSaj zLGrJ)#601Ih+?~ZjuH&z=e-mtqaW2^3NH5{LX%4y*HzlD)c!~wCWK{-R@1*&NLp&K z;4%m$U7{`D{{i%5&Cns$R|womPCzyePX*y!DO+S>F}?6$gOBm{X2?Dc_B9>h)Q-h_ zqtf)H-uKU+g=d{A3@tFKyeg|=P*L@_(^%TD(LDArp)aDSsBuvUJ+y@lVcoc8RPJl^ zkFRM?K>|1^8xLZmuCX;>$;1vQ@B&4s3gZ;t2;G@Sp{c^>Q3tryv@ifj8h|lv#>Ig1 zK7!HH6_c~1+!rOX$;kb)F?J_-`80ej)oX>YQQ(}zI{@Snm7FDxEkbqSbZy1ZOaQ6x zAE5Ug!A%?6)v8eoqRKp3{(%E5*e_cB>8>n zmlbed{{WxXKWh{Q&p;uI)pOJS0fa-LBD{v4Nw^9FK?R@+scN-sE^O2BrZIrvFZnkF zcfZ^Ffw$I%Gdyd#EB$<6tNDZ8FRS8r%H%WGyr{rf~tAoBNy_(Gvkgh ziQ#gqAfrz?uzwsK{rVnnn&+tMY=XehD>E$Co|8e5;%pSF=N|k={K=bBjmW64(jx!bg19IGEqJZzIjVZl=iB-Rs2rq&>RO zIv+Z-qTb4IxlrE|u21#$`AyA&A&qGAl=@2>v_bF*{;BqX8jF@u2ki_~aqxnXpEH5i zB&=6Bb^zreqoIVTic-`f*do9r@!?Jm3fnt-EV~g}_VIE`#D>Qe_y`W35MUv|i#c>5 z9nXI>B`J0gnviEXkTz&QJnw`r5X!SN@m8J%%wa%{(Debg+MYeQi(D7W=!F}(94PrI zm;+e{7bTqenqrT>9mV_Iz}e$DQ_>zWcvgx)ztY&N=)xY9@f{GI$ZY;Uoo)R0^^XGC zMnIk8FZFj!+K0Snoq*50r|wMFSNP6cSfW?O{{BHW2x?np%urZR8k*mblDd9o>44AC zcM5%d{ctcuTypA93N#eQ?x;hx%>8d23Agu#T#1nj>|zL~O5yB*lK45Ze)B$mmJ*8090y;qkSEz{B*X zd{-{*^XUYIxkiU>dJ~z^H#w-}9ZE1|dk#r5jZEp7vT(`IKck#0LNBgKGLQ9i#uNg# z9aJE@Y$fKmUGIfs?;6ks53?E#UVT3EV}2ikdI5X4XmS4Ig~6Z<7$ElB+>IsykF6}C z9Blp|OngvRMtk$9?R5?zvA%v>qkK03}{V>H5I5Fp=9K}Zj?sd2~JDSM+u39GMCBKMxN6DTF9jJv-kSwPaDi37 z)U(XS)4ziLFVQQ{rt<2dnS}yrPVz2tW)|#Go9w)c>lxBD$gfxz5mtv6O>TCi&+=FJ z?}P6;aNm4qxQM}WKO4$Y)QXuSy^--fdD5q&zCL<47vqXqKjI3EX-F3~4@gx5QxJ#W zX&9nr%B!yWkUt4__Vimnas9#4V{7Gr9= ze;Te_4^>vwhzloOah2qD>0u&8rwGxbCx3iCE2uUFzl-l!zi}-mD%=jwed3a*@`MR2 zlQ``$G`B+_kponlYCPrB7S%D1z>vcaW6MCX430Y{G)2Gs4xoNtooJnJswgufX&?i4 zWdW*HuV#+B_EliKXz+;qlf(Y52-U;B?sOCpzW1YLU@4$Wnrv$9toY4U*u@Qwp=`%3 zfe9TD&8(!6NF(e#%N2_UCoH<~PIwR11(Q{))TSsO#-#2KtmFdxRPh;}Mu&jdLz2V> z{*)Y*b$G?)l;5A->o@lA-5wlACenj{%A_e%ZVHGbKG?0-p%rnGJ*Mo!#+BVZ**^_m_bKRBWfNY3>xdw5v8K-9j=dyZd-Pi!s6JW$?-A~_x@_A4(RoaXEz7z`28Xv>+bN51)e@F(zXW2-LL>>BGmJE{*5&vg5nd)X~Al& z=iGXT+(&eRlf(1Jed6Os?1O@oiJKKm@4Oz({Q>tI{czjSAItDLPNeTnnka+oWifd2 z?>*Q`TI5vCgpQNV=a9dE?5ds+nrD4)C_mm9)FQvWgQ78(P^Z{9TP@mN2#Zimiasv{DOz^_r6b^^)-_9NF=|}r5qz_cq@*_W!Q_UCPB8z-~ zs+$2(>no0xs=Yo#;I%6#a-3Bf-6uX2+#xveMI?cDkPTWt*VXo)5)vIwkbly=P9p!lSy~hHS+LYGo zvk3@TDfF%!4DVduVCu)%JEUIY0~NYoS!Vuvyov1Vz9hKHsU2=Zv1F_W+dlwB!0lJo z4p=HBA=jW{6iq(i#GY*e4OUQBeiHx-!!q0*F+FKak96JBcaV;XbBWeb^RvjXk<4kc)BuCy-IUvch_1}R(qgc|nIL_?H_Mu>3!{xKYWEAj8u zQpkfs*z!N?-Ho;a*DuGdGZU3u5Ma$13Xm48ox$L9W$@$=h8O#O(>qrxx>}32^nLpA zCVi|bpOSu1Xci2?`ZLMUHi5I4aql7E5fw)|%8yT4Q^#Q-+Ir+^yg;j;{*!rA6NY9OR;>ls5bbe}Zxp*|b z;bZws_w{`Yvk+p9`M)U6GgcF1Ye;fQt%uteyG!F+Mpg=moy9Uhb>$cm@D)5T%PLqv zMJXe&3}X|$ck7fKzyI9pyOxu=00>x_fV=r{-1zTC%MQRqv{MKjFHz4fW(cEB`5YCM zf4u^yE`>dAz&*|(lYInGhF@&CaX+z{A|;7(*5FuFfHRn4tC2w440B`4?A`cgt_(Z? z?m)dC<`>XC6=~rgV28ErT{Bpa`$HK{72p5jR6>eceV3DerRaqcIP?Kf3ilz@P_7jsn=rHicTGPxpuiH-A;u(Xw-& zgF2)sU;A9FqjC~#Pv#tHG#4^g*WtisdT9TCF4h{+~oK`ZlJAO7-i`Gh~ClK_JRiuSfu_zb{& zOyGO&&+!c_0UMr9L}CCuW-%b%yd3ImPzOcwr!i>KKHXT!uhD*=Hrc-OVR;F8#wUYp zpv)jcK3HV-y@yV?g^E7ty7O|t)x~edjF^GE2By!TqTj80Vx#T|jw2Zg&X9AaZ=C+* zuj8uDH|gLdOymw0NTd(3-0ud{3rr9!#>)DhYU27HV7~yQlPd|J;YhGenDi7vZ_j^0Sf1ypx%Km3ulh!-jIJcL4|9+C+a zR;b@k5JNwz`Kwq~VqT)`-#(w9W2_n<8CS1ssivy(55Ub|`VA@QZ!F$~IY0pGs{*n3*P=@t60$w|Kn5zSY7TA{~ zguNKyxe%6kgp^f6k9XY+Z!F?r8OsMve2VBMQ*QdZ?Y3`u_3mth(0E1>jiH)kGnwG~ zU)zJ9G(Ghpk$PI8(TQ;$$HbXJH19Y!5s0$F$@!+zXmGr3L=^lfkKW9m9bfr`Z+-5Y zpGS`J?QE(t5TZ|My({`3Q?bfNu!L$dN)r8ih(xc({anYOYyL2{N41`PTv5Tb1I=AM zWKA+gOC?}JR{8DsN`-~FhbSY^io$`Cd1l~F;UTWT?ZJK8du++GK4hB8Ck;^CHX3oc zS)C4Ad|mg6!9V~p-|q9t&fta>(LpianMiW+wi2{`zLB4;#8ljD=-*QF7ND;Jz? ziHG%9q4zzkKU~5fi-;qS4+sS1=Lo<<|M;0uS=oU?teyI2mS?nXI5Og%#x zV2Q^QL{C+)1F1OQSpbo7<+lRFC(m(GkRT2Qh~A>~Z5oADLhya%W4EJE`&<1f1eGXl58G5ScwPn=njPvZ z(4G@{hz-8cBvInt>9+W|@ww|^B)uXx(fU3tHWDGWgiI4I3LRvR#skd~;^V}Z@E|Bp z2xj;&{&ZqyL+8j5cSX!$P3ch`D<@BD6rgy4681dGI3VkB z_S3}2`9K{ruN=>)a$;bMAbOr8(c{}KW|Z2~`pER@{S(cY3p*PiG-K4}ht-p>p=xLE z5gsmvc}ziOK+*%7(i5c46N)12y`*a{f`S5xIzh4?Vhb<|0M`dd#**8*AQ8Pe0VBlF zkR*^@Y@xR(LBRk|tO0~u6*87KxVfl1oixrA%4Kih~Kg`r` z81vjZWbi&~bO7cvHj`s}w)T#VwlKNcR&Fuv=%BU`d@5BA1qFDjpa&sNz;*wpW z5=LYZ{{UeB08NxSWAVS(PK zhiMnH_dl@>i>-_VG7|(sz+KL+XrPDci#X_{N}2Q&fFb^jk#A2=62jjiFcgy`TX_09 z^iQondcoH0RcOm?eElB)=|C30OkosKh6AI8hT$XUI@`N z(c~xW%?%;axn$6!Bz!@X(mXf7x@=U00v)YKoYO3bQ| z`y;9-=|LQjd|oM(b2AE71~_sP`Y~0w(9{+1X|M{$l_2Jp4CL`ZGdS@R^<1;5jLNO{ zJj8eq=E9CE?9U`n61W%xy-$mnAQA^r#+j6Vpuz|MfOhzXQxM#(W37KqG{j7vNr1lc ziFHpU^5#dIg)g5OqSp(}B|f}nm%aJKT!=cRMDHCQtSKYEQs4U~5bRKJ8%)v!j^3+y zJagNHryPZTyZ5Mi2YmOL5n4}Yxy88!_FHeM@0OP4p`@xl$q}EfAU~_Wjzy2;%MHX5245^ zMa?DC;rE_p%BZu}WMLG0uSd6^w-E6>7}m$xldcc~i;!tv6>{@PYH0vK96yWPui3rD zx?+dnj(^deO>%EUf}(CtflqFj1?N*c5U?;K9v?3Q1*9`-DM8Udboww4FscubaMa%} zWyp}gJrO=%4kNEeeax!6?Gv5PCkN_b{tTdG8O7G+d{nu@&^SA8O?p6%gz&!;NWm$T z6iduHeC8&a<&7WU$pswbz7I2YOO~VObjvYWcFT(>Qwk9$)?o7x{9}V*6zy6p@#dLJ zHpySuT!sGtFlYm?Fbezz6^|Xj_)Gar z>#binMXbX-T%b(enU0zKU4Ac~WFVnNd59UVYQ^}1IEZvCQm)<-*QAo1j>`r>nL%Vs!WA##@66IKN;Ru1r43zl;!Jt4K0N@*>5c|nDv}S?YNUdKj z#uSV|aj_6tsQG}a4=Ae7MrC7YRBF0!N9asROd^e~WVvDv@DbmY?(xs?3jY8wz=8<< z1wTe|AvhPRU<66`X0eP%$T|#^_)2Jx0!|yl0-i-2r;N<`-@RZa3<*B)B?1N$^}l8+ zB?|1&*o|qI=wq(VlIR)P?9Xf<8M4$5hW>bH1TaWG$~_+j@ATkw??LlNiuh5+PnBAs z8|191j_R)&MDk)H1-HfAv%@H=&y6m^%z&L34(5+0Yyi>`!m@2fS1s|Z1Cv<1$|s&o_zeML)%A6b*BoXD2^ZiWn@z#{jPCy=CG!{%?W&KO(4 zitrYWSrKt1xEzMfA-t`Q%4kESoHfs50I`X)Qq*C z>uNruh(`|uVv<+k)cC{6uME&vq0oaAEd5Mx5oG@W(%pL^wpocp3Bd3kgY;$wl76j= zl0--ZOJSLfCxHh03oD9oe5QtoMulQ2FPz0^s9}5Qa}g(kIg9m=1jK0qC^5qw2g2U_ql}mU06a{9pl7IF zXWDSlWFhs0;o>2?_?T?PF+gkIKx7M|rKbG{DZ=Ab!kX`V$B{hq8)%^ZCljGDOyg2+mR7vOzIReUX{hL*1dg+kGAv=rOgx*!f=v{#?y@ z{{R8;kt%?E4r_%trV`{(Q_x`#i!;p*VqDdrGbY>=QS{(`C8>*XAUT-p>#yW+l@cf&@8VAK#y)L=% zVg-Tls8{Ow(@?M=LFu~oBG~9BRPvAhb>e3yL(Jmk3`UKrivIvcFQjYyQwP{*^M%Io zkHiI@9TZrtAN)D7gN+x9gdM;)Gh>EG+8#nmuv~nd5xeF7TZ70W}?D6WqhF!Ub!(huM?^Mzm)&kageLjM-JDVkGaQh5-dK z$y{TV;eaw<8P=@$J`8$`eeHiQD?0Js2z+R|c`<`juhCp3`onPCI^p~|mWZ#n4=%00 zru%=-gbIl&3Y^j#?3tB=I`W}{bAX@iR|5+53;i00fImderQ{#jVUSnNU+m1haRigt zk2(TFP31R?y-mGM8n{iZ2xY9ShlsUYMn5P!_b+@g5Pp-;Ul2A~A+AArGw0i5sp zpTm`Y*8T{)$!gGA1p-$vxIBc0Mul2FR3Aq8-SE5NbMUkCZ?wnFn2Rklr%lF%GK4np zGJ2`#(ki~!8YojJSgghYPnGX;^8gWQCYOc4J|_%C2PM~$(-=kwrvoG~?iISY6np-e z_;3Ah!GrQd8U?K5=4%1@cbhI?Rg2C;d-HhZe?gn@8omnW{1sUsIu`^CsDm$@4DUK3 zU=@l?EVimT(mrzccGUqf3K_6qGm}dwNF?F^0Jl8}Z$vaDmQo)_29mjLNU~-^G~2grA23ur`LoE7m*){&=nAT%^TnxH-d+3ik+# zA-$>n;r$pM42f!7rNuZ)Sk+`P41H0Po-8Yyh@=;gd5J*7rxkB-Xeo}(bMR~6-uVdOW^pDYU_A?y$jK;|uw_=q-YPzvGFPBst=12oA0{ju-TfCi%%I7YEvADR*503-Vlu zoA3erTdBqIk@SH~w@&$YUp%iFkR^e|^D^4J-~_PZ*AsmimDOi3Lu=PE`6M+KtJb%C zJxoms+@i4)#tVSTi49MAK2HvqM5F8x!k#=onVjJO7Yt~Ax*m_=fx5b3a%sl}84@PD;L6 zft5%PwT1(dL#rxF#P?k{Z`3N=<-zb|{v?l=54RF)K#!GktVF-i*vND#aRD4a;ynO| zz#uV86u+Z-pgbaO!y(t@L$oXJWa*%A>l(I6qr}9 zGLI>RG^-F?^5g_G1DU~klPIxTT`&+c%0U+dAds)oty#mySsnD`w1wso+q_ZA@M?hc z;-q}!Iz=vm4nX7LN|_Zykplq=AES64d6ER)Ro)D|KN`V4wj7xOyBgFQ_z9HFpP`f z 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/bg2.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/bg2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2c72f549e694cda690f6d813d9f328bdcd73a88d GIT binary patch literal 51561 zcmbrkbyQqIvoDGScXtTx?w&w!4Fn$`!QEYx;2zu=+}#Hc?t{Dg;0}Z3@||i z?q9EZ_S(Oxs=d3qx~sd_uKu_5Zwm%nQC2|~1{M|u2KK$c{M&(@Q;?Q6R@YFIRZy1s zZ$ZDEsl6*4HVlltgPV(noYY5MJ^hbJ+c0qNPvHLNsUN1UPM_7)m0|v`bieQ)Js6l- z_W!)=|El)?EkH3dcQt(%UA|vNo^DQV@5X+7$M`0;|AqPfgI(T@dgsgk2V4F(2K<-K ze`BZr()p$#{jL-Ijz3xcAK2vo!2i3hcNG|X*Z(wD!TyJ(xtf!kwLOQaqy2yQ|1bKF zFaDeHKW+RU9y}oo3_LFk3|!&=@Er4DV1(}8`G5Y0XOa#B(-Hy$L%i}oJi1&M7_4_& zo57~;E*}58QquSP80-kVDMA9WE!sV{B*9lQKI$vxKRm>u39<-ZJq^!noqP}?>N5N) zt-Jka`ygEZ{{35p35G%VFG74LWR&-Uj)sbghK`GY`Cf3zaPV>7e`LfI#Dwn`D-9(j z4J!`|6AO=+fPk2?yt0{DDD3~=7yRpm!9j*Chx-W+ivt6P0}GD>`>!8H;Jrf-VBhI~ zHxLHq0~|a8A`&bz49b7l|3&|g3>FUl!@Ka`3Jf|tEDRhr{QIbc*=#5prBx)HJMui9E*pEL|DOfIbV zcLbuD&5y)#P4yTh6q3S0^SrW;%WA()okmWxg0$v5tb5`a#K5_vW)2DL)-UduQ{EtN zpr!pqdbBuS|7LyL_NN9za(QMKbdQ-QXRu$_aezPmy2q4}a)E&_Zq1BjP6|5oynXOt zbpW0K`KAU?cvL4fwjiiHGMbm;a+^AwD8gqXo=S7@iV%(k{aA5F(yh4Uz%=ktEBVss2g-BlA5?Q zns5$C82-W7C~~;(1KcYCTKq{RqwLv<1yyLyxi_1g{6(-zmv`~bsje3RCxa}b2R@S7 zI(L6O!CAiAmQt>jZ=Q9xmrrtleB8{i>?d$+(`BAT#6;Q8*}g@tM7`!@A7I$dClPck zvlX7$Pcys)pFl;kxC6_rGW+?ccsvL^!scFeUu4}H{p8tdWNcPdO<`1XJhE-|_pp=& zX{)$ZcuKwXIrX}p9dmhJB+dLR0k4{w`x!fN7J^kquC)yN!naA$VCw)6tnR2Kk$u9X zHL;V0kMz~ylzeu4uNEem;nr3&)3-JAIds&Y<5_S==FCZdQLp38Xz>O8WZP6~|3Z?; zFhDAy_^eI%gSV(x&KhDI{%kZ^|8fg%3|;uJDPWu6$LA&!p`~Ow@rrGms~CUD)Fb>P z-*L_6>(6n$BYdxEGd(-zxxdOkFUjo5wR$@g2*jTd

$IFTspO6E$Wh_s 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

?cU2)IkmW}PToJ=gKYMo)NX<+{{8kGcLhjnPsh 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/bg3.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/bg3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b842c358b142b43822f2a49f1cb8dcc75b7e7d02 GIT binary patch literal 201844 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/blog3.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/blog3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..40814b70b4237e855578843a87f368f3c527e2c2 GIT binary patch literal 45263 zcmbrlbyOTd(>FRmkl+Le2^s>yEx2od;O-V&7FgUh1PE@yEjTRh4#9)FyDjeSck?{& zIq&zKbMIfbXXi|9b#M2ttGa8ts(WANUe*9?X$dI_01gfS;9wW?GB_?K|sH`9% zB`f~ljBaaV8%KC-0I;!ja!{5O{h+C({Q-F$fQS9!&A(q68avvFC@RVV|DWl4=3hAg zm}LA{*Z*g+|M!g7CZ>+Yu&h(qt?%k&=L7@$0Y>8)f&N3Y|DzpXpkVy3|7i37(z^dC z^IzKTKV?*v#b9NAz-VFf|ARLAKj{By3swZcbNts?DH}s`Qw2LGOB*I*u+2aI|CRp9 z;=hdl?c@LQ5Z(d+0viCp=l(AboDBfnS1^9`|MHBI0iZq*0NyS9FOTv!0ARte){PoF zJGlH$qlB>MAY4C!F=8wV2<;kM2w#bao&1b8n)MxDtOTNxtKJdF&I2)|GR3RJvfX>K zYmepShEhbOW3)g&@Mg(*JZ2_JD(b zg@}ZJjPe@Bgh%*4b6{Brusr0K1pplZmWho38%RHH z`(=mHpwgfMG{0$p>>nMN9#7gC)ForKc30j){E%S2oN@%oBC&$GqM1D{^Rb0%{@mdR zqYs3}2PXgO1YiRuKVw>HM;Pu8@BsjRBWJ2F{eTlz#8c|@Tf;*H@D%Y7Uk8TG+CL@g zV%&iG7$IVjlBpgmy4G_yKA=3$kwLBUiC%|RN#515<`pJ08)2vk=s#5>1K<7NifUEu z$B=}LcdpD2Ii8+7ZKP6KPwSwuW zMg;29b}ilcJ{oO~`fYgfxL>s*H*U-rhs2ep{KL%+0LX-4s(AYVw=jSQSYRTI99V1$ zBjO>Wax01BAp+REI~E~#-Ip8ZaO}arMmLL=^uO|A2l%6@|f{-Gf`5iZdJcS==SCrw`{2I1znF{qO%s z3Lx}UlO%y@n~GD~vE^%zwJS)v%YZ2^u?iFWLVAV2Qy5NINfHYWk(egO4<q365F8ARF6mILjB#$y(j1qO;MyvYIP9^ujar+}Pf7h|tOE-onVS@c9OIVYE#Qzx+ zD7C&=E0WVAUtepQjkm9CELl79na%#*0}b?W-fQI;&i^@kN?FNBTs@79_h56b01$rQ z0mvvc0Bj%-y8wio15auC#`}%B4pXsTF2lervyw7{BWpTC2cJu%{gHv#?Z~rA(@m|^ zL^70Qu99YzQpj#Ro*gDJ&2I+n`rs4egB`lCC-In3Vnwr9KW2pp+>g^fVJEYxGJX8+NZJ4aAR*aGylKRBYY zvyJ_ij`8N_kDtzLzgCA?;aq0S)Q{bLR_`AFQV3weMga_uWvQb36oBHsw?nj85OzJ( zQ~7&gV{-rUcJ?!)`U{XgxO;Q?BqWrvdeK5D@+BlBr&VKg<)Rg1KS^OQ@`j3tsMlZ1 zVUuInXxMXh+v=WB{`*gUr8Pj=zO~$c7kZ|jm{!ssUv1lwM-aqRG1B4)F6)^G}PzO1&=z`4#bOXyqIY&7ob;QQ5>gZ(`@EdMS z%x9zK&veaR(UK`x5eVgIm1aaKfLN2>+a0^uEs5px#DAtUN=V3`@7im9rszZAR@#8) zF1>gGgi6;n58hnDgkX7w*J$5%6&uFy{yIG0+QH~ULTy_endgz!LOgsZd?*YFOh=R2 zzb^`bccf%BkeR*Kkjm&ULn#%NHelWrG30@(L%rGJ=8X4jR&=QP#WAxsO!q4}3g+=< zp?f?PlpohyFmz|D_3Jcj)-G2iJCePu5PC>CjcH{bN6RxwqBt0)D?QOQs`9n@Z;9fF zLYp@eF-92LEGx@76W6V34zSEpo;))Nl!TT3{KEnuWltmW`N4bb_#cxSF3(uzq;L6U&Y6Bku&NoVy6>(fo z?F6f!=)a*%<|-In2jlt9Y#vO|vH*};m>LKgLfJ~oven-W8|UZ4rN{aK!R5b_syZZ5 z+*)nUXBa}l=)|A6;%2TGF&;bzO!~q{%eTBSoiTO!8AYc|H&%7bs;-KM{jW<*J-X-A zR}Htj4%}(7BVpnqX1BvYQ1XaYX#j{1thvbMRQH{ZE-tK`?=?KV!gL=WHQ1(W8Nxp8 zfS1k)Qu#BK1Wh}S-B*e7aN>NcgLPU9ganag;=x2DskmsE)cK!RFC`iX1=KI}rfJ*l!?z_%Pve;s)xw&Yo=K3sgg>I9ka#qM-Mn zqY)0$a&3WX4>I4KYH&Fz<5mV}-2FtzVOub2e6ngd)XZ9-R9)G<=eOZ7GNzT67XKh8 z=5x-Vt(~<;-e$v@uxOL<#i)*ve8LORXy^H0%~?CFf1P{SP+;?I&&nxfYIAU{k#@Zm z6I^-0$BUu2pH%R}1B*kaviPmhAW6wbALv|1Weo!{OrS7>Wm!CBdJm>!pcH(!QTK@QG)c%)5^}DxeuomPH%m#8i^>GuKuRIW1hm`l60X zERvS~cgv-W>$u@mp3Gt1g42{c`p1J@3*~~2n;}rH%@Ch)EV1-B!boK zO~XN?{7Ke)Bsg@C-Eao+d>gR$B|mLf9}t}8df5Wbd9MJs*Ge?vT2>^$dBqy$!C@vh zTh|57R8v})%}|NWlyT%*Gi`Rhcm%IrOgHoXny=8FnLOLN1R39F8e{grj4d(nAx9X4 zQ~G;)=Wm!)rIOyc6mc{aS?L{}Z7t%OjugH-cS}sV^sz5)zEn_1N4*)gwVc@QvLD*B zsrq&?q$6lEzSBQDcXcG!bf^@Q2Xzl71#_KqV_XB0_kW(%NO$%C&TS){+N2*yT!$;A% z(i48oRl6+oP$SL

1gwYAPqDlVIE!#~WJ-FyV@4!_Fm=-Z(u`QX0=v*@D!x~&&sY# z7=TI7@1H}38rzMH6hTBaHISqJY|wFZhZ%WO1P0wx&Ae}{;J|NcW^*(u?#S2#>7=uo z*Sb71t5E0YASP-gm+kJ#lkzL_#F$xyqM~_K*GTc|TXiLQ?gr#+4ts4vB9+{ny68Tt}0_SAH-sMGPW<#W>|avc|jm z#M5R$=h2mh#qxqf<9PP4pfk&a9diuKGEbWl5(f!$4WZcef-KY7mSYE}#?MkPD1;7) z!O7_E{GOP7lP&U4D06C8rA&F8ju#gX%iqDUUdzm#kwiX~0Okp=<$Ls+yVZiB0q~v& zW^aLvga*lTQZ1ND;EmxQ7!KHrBJq>>uw>ko$1+<;gH`A2xg`1Q7hPfH-9C>xKHQ8$i&Nww!h%Wv7_uMLm$P7 zE66BMG}0zSzPsyQAenAZUvyP>oQK5c7MVY7-HK#+$klhKQT!VP-VYc9*zf32UEzd* zS8%W3awPgIOmz>qeS9U~_v{;;9xf8NpIO&&6zFqz|0%6>bG#$v)1lu@FB8gka=*@v zD?Iyypx6~&T0A7&_Lsri|ci%f^|8@I-`{)=~8EyWr3G{#ij-2u8()0gS#?!T6Np*tUdol z9AM)m^OK1D8caVw0d|obdF9Bcgl6I)qvwvb)|5RPiJsUOK#+&C)QdRPy_ADFeR?i# zYz(q%ak?~hgE1^~n^9r64p{f9#2-OwnuhZ3Ci>qR^}ngWE;O=pb4n&Y5%2%*TsV+r z8rqU{@xFNXy07Hu%$BQ0v0sClSbawM~xo9 z`{o6p-Gg`~7OY;f=MTAx<@3tqjwhB%lr1q1Gt)0m^<3R~${msAyL;1eAKym<=;ds4 z6OMet(qF0=;$Jh;P~sDxS+EfZ?08P7>%QTv-7@c*(L0fOZm05@DW`QRxemxSny|88 z4F~@DyfU#6MrDS7I7D6r^Qf;{2~?let}QBTlgVxETKX1yt-5k;37FluDu0)%Qi>J`aI~0?=C*C zp0ZBH3lP$_>wfR8H$;$rDZx;O8*1xC&-B@+u3Tq>&1l@|&XtHaEwA^=Nj62gdyAdd zEd$F|(m1MO6-wg=09LI3+&j2V6nG3GCYI8+E%eq`s9`$D&HZ;TK=pQ8(x#L1qiwCZ zkPpZHprnUE9iIR$Ka_p4Pq#$&_QW;eeb$2$uPQHlabCEK2mfsR+;-35Xun)R_L|j= z`-;t>uDBzGI+k}&GJHv5OZ|_iQP!Aa# z)xLk$vg3bA7lE0*z(ul(?>T<4)hAl5V-}Y_9ue@ZG+{ckw%E6IG&2=}3L(66zSl^f z$BRW*NL*)VxuhqBOeenW@C*g`ke%`m9q=3eHKkfH2YShA&BXRW)x1Z=oFr43=hsZ` zg|WNA>a9&#UW#z}h$!3ut4_;ZFS&AvAkS_>b-?99*>&29%;bVg;HLX>BypPGiBwR) z%)!{V#lgEM8E~YDSpic}eYFQO^Nuc7ma4_o+wuD2+v4Zo3>oZ?yjUeMt`I5getwmR z-(phu2{X@*&?ja_+0)bQVViH4>H8=~$3&Q|Cmf1LWVFF@SN zJ=ZpAAQsJa%Tga?{2s1)C2ln$gDZT|7R~X}jsIe5qvx(&$v&^12}ET^xi#W+<;}S) zJuH}7N+fs_Hg@?qk@Y2!hkOMyAQ*)PLlUjK#39UmHuZ9JY9J&anBy(Og#dEKoRhm1 z4GK~pOy7R+!f__(KW$9oYfbc#MwM92FcT*8n({9=8<{H(b9?EHCAXgYewCN}a{O7N zvCOX_vnpu0BuqelS19s%usTYsH0F}qL6fuk*U#z$)HxGO8HFc+oO=8ZB>=;P;%p|YIa;CokSUCrGrb(DFAEppu&;BqIUDa@dhl|fnGzOqo4s{{i=KC;LX5vPHyh+G2nwUHf2AZs znpyhjpxs*3>It#rxxTO_6tv%KSxr6pW|G_e4kMSIf$nT8uV*oCI#8Z3hDSE7oa)e_#Sx6otM@BY%SkY$&hnZyZ<;dz2*6Jx#+9P}!bVbzVGJ?Mm|FH9-FIDzbR=~z74T@0 z&3{hp=P4RFqxeLku)c79aM~N(eX`$dm0wIP z78(J?o(bNFeM&5K)=lK0wNHr{)Fg8I_)Awx4yIAUwoFe~>>wvot!I1W@=ZB&yI6hL zwnD+_2DCt5NaY}kWWVlSd#24-sbGX;Wk^F}Vba-38`^7H2Fl7i&^zJytvsL$;&eZ~ zNF)+7Dcq()6{P-MKu%>Wt7=|`MZvMvY8DmWYN?sZzMItGFr|Fzu@sRB_5)Cma~2@H z@^6Hrzp|KG2O|)4oVa$RFtT#qdPNoFZ3*TKkGb%$98~IrJ|4KMM^%FV3bwQ826JW05FUTJssDE{rK%6YwSVo^9YHJ2&)^a~H=hKaN0W<=$ zdfRKhmNp$4#vym-CVYsa5*FqZCWg|n%?_R~gbjIk>Pw0);tiz;G815GFRZi||6RQC z+NA*|$4eER(hXk`y$Ufk&5_n6!qa8iLDw=eZkJ72rS)Kv%3d=nIUlb%VYw5i43wR7z;aWB*JtC&Pqezw~Q z&=EPXuNOGs1%Tk3g+gBW$`2Stm5d?Zf+SNXqlWgxx)L(#j}kSu$PA(T0$2q3HkKDm zDcxZLi~-q?_GXQ3gyHV7Rfg@w7uSzEzG`5cGm{CsW-^UCGKJN*+Pm((;?r!p`QiuU zTJMWS&0iTv?Re)H%Q3>2%?#3m5ytjAwMO&|C#o09V(4)PPJejPIcgA9%Q7*Xw%lY@ zu3eiSl!E1BEan_LLZar^k3D_7g=-r{$E!x^le70Vrp1Y%LyPlJb z&WzATV>Q`2fzu7ZQ;2-W>0BX^U)=cX<}n3Z$VF!@^Thkg45ei3HG&$ zR$A0U=5>|s%O{EFZ3XpM6+@1W?6o!a9Vu0b@;k^j^J}o3JJOI3-jFI&xsZ>V?3Q{u zP&e<9B!{}X+`NtLu5+^X)6@D2b)(UNY60~Xs)V(vr zYLzfb2CcR*=+51aQQ%UZ>FDD93()H^j87eUC%tt>eCtBktT9#dP&0qJatJCKB;9$R zq27}o(R?^tdeugTxa*aWX~2>j_f zRUVY#r49rmCFVC?m)83Z9W;5>zRkr`85h=3#g?AWK|)cVxzne%HKT8}VsQ6b6>QJ+ zR3M2ua-`7K&A?%;G$|XDFO*UDsF^z#;J1uh)E%rc4}pBygVaZc0Ha!b{%m)F&?`s z`(Zplf*3bs^V$q#et;_%#{Avc{o;ur^@8aI;0o`Q#XgWx-R@iIRiB`$NxJChvAwLX zI_GKumFCfX>xx@!F)zN3)c6uMF?1JXEr>I<#e4h27O}dpHaE3paj{mV&d3Qhna}^}^vKLOdGVepfUQhL+u8{5vu9Gk-?AoWRIb4YBLpN#kJL!up-$?`^@kWh=+h zt&b#-xR@|C!xlmv8H>Qs=bnL;Gt7KcMww-^o~wd@>r_42G5RbK9s-sf05g z>C75iE;R`usobTX^=`RN>fAS2ICoc#lbUKTz~*aRbo%yeld2;uHrOt z5{K>3qri6V;e_A{y3%pG(x8vL!E+?5zU7Og2d~sVG1)F&Zy)mv+d>C-O((0i?%!oD z9~N0`N7+cm&Wor~Qg^%2n41hYD|9WnI^BCmd;34#+&@)G>O$Nas{AkX#Y&I=_VN9p zHFb(=4#oPgTL>Xx`|9fEEGI+UCV!^feXD0qv$DHHjQZVdWTGxa5e3OR( zhi|-%TYYA!)sUyjp!-E>!h;ul6naWN_qj!z-?7}Ndx%@FmpNmRh=S<-k2QLd(?kX# z5%YWV=lhBKt9#cX*RKUDpW8ukkRaWt0iPRn%2^jIrV@^z6W=aKRe|3kSBpxnV?_Ta zasC+IBZq<{1yWnD`vQU>kvory7ohO@Ms-#71yHEMs*t*hyn4`0y>e8I=U0kZK3V1| zb*m2Sye9NqrM=6qEqQBEv0p|xCHUlKdP4nsKYiZN{d_;`Z2?$Ka+>cjVAZSSr`~au z$!Y(xo4lQ|Ok{^tNITaz0AKI}C3*SViyM>sK98p|x%;l4T&NkfWrzJ)XE&eUVcOE% zUcotw!v!(A3TXaF0BQ1Ei7v&kxI3$QD_xP9fLp5ylP3mrz0{3xO5(@u`WyBwtMcQ* z&`6GDR$a>%R#yZM)s%ZGCp#p6vh1Fj%;)$zuM^=IWd?U{+I>|V@4|sC#UWB!xV9Vl z@e_Y_RWU~Cku&uaroANRk(+jq!s5O~sPQyxaBv?SuSd4XlOiuAww)NP5%@J65syPI zMa>eHIr9R$nfQ>lk&&&i&P-S<--%csKG$@Slu3EOY$}J`Mpa?C;>OH^c(e~# zo0d`fby>J*kOJ|}#l2GWBn@Z;T2)p0SPnCTRogXR00Z|C3<5g$bIubViRV1^jdQdI zetDtvMXFgNh3d2i_CmTer{VJNCVfLxeBEAZ5tp2Ts65NKbpyVlS@BhMo42vHO5%Ue z;v;4T_LId-dC|D&uKV9t(k2b-vTT8le5|AfGvx1yE;P)PG8K84t+*TybITAPxE^wx zl_-|Y*)3945B<1fajh2S^bm3kF+V_|6)lRQd+)>=Y>z7}*ywacZgswKAV!+J0PZcN z4-ofMdO~e*fttZ|6!hW4>T=KfdE;jiInx_4nmNX&xh*GKOjO!e;h4lzng6=yl$O0O zY1i|&d89*w{|lSkV)P*o)`fW9Rx9*)3)`u5teQ=gRVC4s%kXi4rUN8%y>Y-%wFHL;(^%XbOX2e5qi8sD{mIw^n-Zo zj&S|=6w~~oDTvfE&eSyC{Q(5tJ*vVC$hal-IMa2=~-n#>r+*w#^y@99^O7Q(vSa zdI#R8jjfM%ye1@ZL{V5z#?-@2g2wrd^VGi&H4X{tI%A?wk!y^1S@=_|8O9X6sroD8 znl2}itq=W}$*C%2F^WTD*}QxnxmktVKQrktO(tSgkFtfYfGqUT5L{c4lC^6d43=qN5lrS0(@-A_r3p7f3? zP;NvwS4w&rfXx2twN<1r2Ok~Jp^eYCRCfkG+}v&>>zZ?eZqm~$HM8|hvMMZ>(z_kk zgmjTIKFsHzuWQ5wi#1)zG-0C+#B@llWj2yR0%N52E?^UmSEnL@z*(%=<`T zN&5xg)g(nec3JAK+jp&U;sW&H6t%WDelGwA_18+2ay(Y8OtyPSO23tq<8VK;S`V2f z2iX9T*|=)Fo?Se>?La+NwG^~DhDfAOIw6H2sy@u7RT^({#+xLLeHbC?J>cb6StcmL z6S>&)7RLplD%AW-6IZ0K78^4t7|itk(so*A~AJ`I))Lqn60>-X(+*E}t4Rz+n$=a*8Q*?#(- z*S`QUvi4rvea)l+(_i|j66Ib1Qw3Q<4w1UoLrt-mhIZgA{hY9*AA307E^XbDLVBa~6fY)efmH6Oe7}UXakkCz zoG$ovQTNI*MoRC^%F*{Vp1_`9ZX%u>r`Nb{AS1j=Q>s3b377T`;wJx%EFVc*4T;Z^ zGZPYh`%nvo1vIh1$btN%&Lh57(JG1VcY+qFsqx~Rl3RQ{8sh26y+=0|;yL?tjq|zg zk856WX}UX^Ctj261&5CI2#?ZPe&X+B4?a+Hb)ez1iKyWin1<9>CzZS($?DdlG0t2x zX1zGdZ?5mMt>;nw{4hl_z4pF{H|oBvx01S*6R5vFkEALkl`7;^(U#IVIuEY`1?k zup0)g8N~J!xoI>AzK$60P#*8Y#FdjJOZ>_Fsh$p!c+ZSIOeFksk@i%xjCf!{Lt_$Y z$9x9qY5g`4m*2Inewsu@$|uvahrO9I%SneIG}K(2Gn{b=E%is29o7Qz*mbmMVZIa9 zX7g+ne&wlzja;3?EF~Sy?_Yde?sD%#MJIytRKhDU3(`?beGe6e1$BQ-4nl=*EsE9# z@!9w($RHuD(W%+UOKw$;Q{NvLOzVEc2d?Lbvs(JpgrA(Zbr@bTII9bTZJufHot=G} zV!7X}Ecb!y2L3d}ZQ9^tFxSZV2tzD{;l3PvI1iYVo5d(wwj*qSUz(a)A080xlSHMi zy`F7KewTg}`R4e>y!-B+fy%(l>(ZIY@rQTe^Fr^@ky>tB}n(0ExTFLscC4!ei zHAEkeln3t8lLs0szl^OTgyV$ z3IV0K(CzO=r>*5u^q9V-Iv@cBQmhE>HF=wnv*XlhrGdepzGvXYG~E7}@Ym4L*ze6@ zTX$9rVI`=h5wx6`c;G@(PZ)jA_@2}E!o37dg*rCM^!+ruF0GYe!3jR1rO#MAahc0u z6(({~hf`bTeMMrl>pcS>zgoD(#8aj^q=YozwJtyTkq1FcF7Q%pktOAKCwK6Js8n@X zMME|RvnNtuqGm-Mh5E@0VE6(wCAu{72Y_gjE{HM&j{`aHzJ78tcwd^4Pw4Jx^YIVT zjdn--!gfKVUT+(n747@NsgEcJAhZZS)iJx&vL|OUb#)prQOk;&q)SZjDF;VgV1_X5 zPHseF-T=ftjU#(aRfoeLgb{MCI(NiH@WH9{*(CwuQTbu{HC}ZPS}f!2!X3HvRO8 zqMY16If{=?wx;$Z%9g?wIXhy2!qHjpCubzQMEOIOqNx6{fYK;^o1D@hE<4$WbnUsn zm}BX|9Jm=r@*zdDdd%rVK{SU9J3fP$dDn*$R65n9JN?a>A#z}NE}XU2Sh_xY6LZ&Q z=x@t>wo$4Gkn1^Wwt_`;e*=?an@2%p2bxhA$7 zXA^_SHadpxg~LY2e_Y+r93M=6oyjyz^I<+R$#u0DoTG9Z|J2G^%4|@xYm<5YSX|a` zNz&hF`x|bkDifn1iKtRzT@I3m_h7y>_(IRx2Om``17=k+Tkcq2%PT*U4a6zVpo@$p&j40k~k41GlP%h~G0uTM z`7UMuZGXO5e?gzP6r(=wPcg-JC<&_+O*{@YRFN`y98g{^<*p%@(OViraJ4FT>Q?1s z54V5H-hzYTO&LZh#4{{If3t{-K4-3>t9s8DDB8vq?FUZS$!>{TyLO8y8s2V+b`#E% z8@Hqs>XIqo`Y-!qC`BH8$N34LXS1OsjC!qziUZ{Gi1wNDYg@TI?LdVPB}r-@3#<8^ za;8-*v2SuCs#t0}*Gha*(|^UG5bC0u7@iH?bNs6Oe>`rAugOF=HfG8dwN| zJTkrRY9z8PI_=~9&CRZBnE{I$`w)qO6vy!=k@+|nAN+gQjpiN3Mv%vm4|Y|K_=PKH z8k)Z-?1vZ^hzh-9rsC~nJNgcja!>2lC9Jo0 ztJzp)4aS{3GNXQqCxz#%73EkfRz}QW2(5vSGsU@EgSVgJWx(RiRk2Y}T_Zaym4eQ*gyP($TkH!nP85fgmXC zT0VpByO5<|Iuz{P)mzQ?#=@Y#VjE@OAUrgekI+em_z1d+|ZL1s<&k5@Uk`3v_= zlePz9*}!07&1}5$t6Asd7viJ`byv7xfo!#ffF_3~2Z&{$VSkkED>mhh0InA!}%=L(Cd^(f9&%(5Jde3#iE^`0<17R)g9%DtLMXoK7xRR*rzC<Co#jhaARBS;WA=F(=c+r%Zk&Q>tMn8uB$6s|gP6N4(=xA3NOEF{mI#Oty3N zu{)TnLk6K}1=_CRa7q7q&+d0_K|Z9w9>mA9xW@lWg;iab{ss86?*xe^bx|wrM-P7i zrpPva*f!XW4-0*g(&@IjyHFY;#Tx=G7Rm=jyUv3@XR}Q3H7EBC&#GQVS3v*bFAS^c z=~^T9%)k*As88)w4zPcNg|#GR{;b?R;qx)f_@!V!!$mY!>!@iUnE$Mu)vS@X9v|TZ zo&0jA_GS<{bcrN*<(_YbF|)Pol5v2n*CQUxv8uJeKU-ZNU1j?%?Fe7ek~8#5!Lzyj zCOed~cM(YQq|bFon5<)1Xc8&N&W%=SY3=(ad_~7FAw=^kL%%r3O-}+#(bQSOEibH| zq|P^XZ^>a)POdZL_}-j58Y37|`t3R?Ys2i@H_%rug^1yb4-uZc+WTRoWu`LJ3BsBy z9pJ#{t3*kA)Pa6;toVs9%ONj-{{}`)#{dL@UH*)a?ECkRXaS8hTA+Dxz8v1dTr9Nj zT@V&_E4qBDA5DvdbPkmiSz5dRNgQNkuV#X4 z1R^mlp&V#$cH7>Ed_V2LTaC!v;3;fk-M8AES9%}w!}VmosoSpqbf6v~iHmEzxu-a% zA(ft%)h?B2b1WzfOU?HdL(c?H>5R%bcwfcd&7L+dB)lFSyb+c*ySk?8hu|A?rg)Q< zj%_Cwe@ga=^waydpQL_PE#TcqDLRis%J|R_JN|l2LBAmeK4`mruXs&J9v-&}KFoQ` z1nvQX+jcmbf0>wXC~qfx6|wtEmb{9nA@^ezO;rr{Nur%YY1|6EdvY+be*xmfb2(;L zo`g^kyWVd&uhjbjJBJ7-lZ3ga=15ZeI%Qu)mk^&={HY#uloAU6mfUZ0mZ)uG1vL&U zG=ZE5+0=N7wW@ZS@p$oC@12?XXzFRb%yUunu=L|))L-}dW4Hteo>$a+sO`8#xK*Y0$7@jPs+KW6$!P1%o3%p)Er2cb$4#T>sC$`1KmYgo!? zos(c_O8pVLI;e21=JQljX><+uP3c4ax2cWd1vnS5fOTtXf+?lD;Ec2_`!GFls5i-J5*^afKoQ}cBNBGeZnw2A-n%M2yRnFOws}9$h^%lD zgGk5^YXd&hHNX8XnHW9sbTze`TUuE3KGN(KtpqgzlAV{$#nb3HGS9+O3Z!O|`IP1g zz5rb@5kAW9^c;me21S+2C^6wA(sFUrIK8Fw*nWJ z8>{_v0r8~cE|&}8R60U8=+DMY-5H6X%nsGc${}cdSwc)TOGEkY?kFq7$mvaE!lity zNHy}XS^DvG_KLV&hN>N3haI+Qy#{gobm#Onf@2lvi+xa}2)jiJYx^`;i!^;~&tL#K zqdiGZ)%OOA{+h>CSR`S>d-P+a6_>L5@VjH21B4?Z|DTOCeo?{2s{ z43M%XW-@s>CH-U<|lN9nb{*zQlCoPuAjY9Bg-xlAuu`giVBv%nrv;k3iQMHsbO z@iP=$gvB)TDKwq*DBkNaZCFp^^XlH7_opvFkzjGAni@%e?C1SyQxhE2znF!VHv;5`X(ak0F@Hd44A^URoHc zHaisQJxR){8`d;$3D1dJQte%7ju+=V;rx#%D(_z1I)^{zvAXgpJXk9jyrkNzOZAOT zsD+$Hpc+)I1|@-=XxT=4>XZoF?2gRKYPO!=SFqDP|GEVcEM&6U*H)JXSGTAXnVEHQ zWe-4)C#T!`e_aU0x2mchniVLA)N9Jmv$c8bV_I$r`c}~i7m;-qBg8!jnYFXa4d16Q zt>LBTN4CW&@>covW8Z5!lcr7UYl-C=H!ER?CP*{|eLQwJKUWBqR>%)`vFTSiGbzOW z%Qa=W5w0ju`35-(cG4#efiCU+Mk;-}G83F8@`SPKmhaGPd9K|YraImb$*b-v8_P&`mkeJt8uQ~UA)443z4{Zrkp zVBvk%Y*Jtne)hmBPy*keal<*yXEHwgYRA;lehY_7KtYAL43j7T79FhNb|iQpR}hk% z#qVek{*KV7r8I*Yz-|&rLGl80A5FI%yy?pBg3S^JVlMQvyC|&hpp9z{%)ho}^(i)> zG!h5SaeK)cWdEm__ChpeavqXmNmrAJjhhT2r*qlZt5--1-Jq=|LCMQ>f#B=lYXNUY zH=MDGu;mk>4^7ORTG}gL_|~`l>-!P%X8f$uc)u4;7!|Lkc)Gpno^nw+thkS|$O#f_ z(;-tV7Fr=Ym<@hXy1F?z`Qbw19Mum;7A9XzU9?bfvy*3@Xukc3^C;y~uj|1c&z@{- z*KWcg8QK(ua~(|*&0V|MQxpYSn5|jP)g>*9R(#My%NTe6c!c$Nh@lj2n7FsU&Zb78 zFqH=(iS~Sej0hnp;@ceu2Xt%x%XuI7u7)HQ?)$JieP8*uByM|_v-PCMOHJ6x*SRsz zQqBu`fl-b$#w$Ac-w;a7^qKAK`1yTOUsfYajd8g`JyOV#oV3CY_!iP$?pv-;c4a=h zOydhsgTaEOYK|Au?{6iK>-Ih34I>YwSCM^S%W|?#db@mqV&^a<#88FKyh4KICVU1F z|CuQQrtsObZ|qSglEp%aPrPUQaKW?K)d~pWz^|7{5dT$7N zNEMa?m%S-F59qf7FUO$+gSPzYBq9bfKZW;bwg~6i7U+q`(X4YY;g3%~ZiMV7h@hMH znAi5pP0z}Sm?=!rK)gen-rpgEc3stc^|yUW_@CZiX=rFWTh$4_0C0UZQ#f`Ol;`4) zk~}-f`*dPi%J@NKc}ebAYfKT^^MSuE*{2y8;(yfKmG8>ZoJdce z(V??p<-5fax>R;09rVGh)E+7_QdDkK-RQXr7!(m-t?N$vldV}lpNwN{-6JJ#9py=( z(K)H4ukh7Qt-tEmy(L>da{0p&47(1#-nh~v3d#&z2WEm|hq2B4JAW5TM?gf$ zy&c37aeSI&uH18)bY(G06I1^W00Tk%zP^~pE1uo$Wd4{_w`xg0>I?q>7wg%iZ^i!r z=%{*D`Rk&mo(4w8n`Q*>%dey~AJQ0H%>%a|(lg+i&3;M3LQadc6A4`dAJl6f<1mp2ba<_6W2%|05|99K8z}lkinD6jzAjWa%+ld8RGC_2`}gLl>*1ZFFfBb-K&(cx z8cLSNL$gTS!ox*0oJZY8o7VM+zbhU`f}wBqC>!`#6_u3@#D5iab#<9%S(ad~6~el@ zzf*uJrtA!V;dkz_O1zPX7<*6ee=qu|({4~jIY_YH^xxh48{L(p_yr#K>%mR z{@XnYdy8-3bROHF*w2FKa~jMc*5^CFV6KMYV-d*wPPO3gQ2zkkWOyM^)K1LQ?LCs< zsQaNrZqH7>ko|oT{I5aRa$;+fQBrKN2>9Pce*3cg)dX_E8zP%e%`h$f-b^)AZ|J-PlLW2<$dw~0|~ zdhu6m-vF>Haq8zgF`>UT(xW7JfRI>6D{rqevXWlWMseb}>!Nt{cy)IQcjba%XA`qe zB9BQh7XJYLlpi#DS<&(T0H0~}YnMr}iVR{%eVMNMHj$m$Ug_;1T{H)6qHA@qT@n_- zTmJyO{-*bWu8_W}r(f+|`=>nRAyYs4-7z0|;3_`oRQo%xq;LMSO3w(~erbnP*Cr;X z6y;t|9v$o+2|fyq&6Xy%OKi9qM`agfI;Od$2DGe!WLZ{KWo4qXQ4L+66iD$|z(z%g z)MTf5za>NUOi`wx)bOSY4nIvO{G;r3uGNiAS(D@~Xm^Ulq%RI}SVTE6;N$(Q#oqz9 z?7B};9X=dku;NRje1|fnX?u``2)qK|#Lf3cCLKXegj(s$d|M|-OKtE>X%@Gdi(4*> zhKv%P+}`v0^*41<_41$2@7*6YKuE8FpZcLv9>`SRd(*F^PX7RCuznZ^>Qrf}G}Pjp zRv$whY!f}g;m$1|1w#v>0w;3WHP-C8HMyFMP4KeHM$bUVJPH!HZq>(cJCA}BF#X`O z4!o`_hI~3#fJu1lYVOw?GU-;9zH16`z z4HJr#{{UA9^DIsMf(GR~+2|-*CU|6VMlSC~i`2Umt#wXk2Ib1eoudOgG2AoyIk=A% z!ky2^99nnuQ*^rniWfdQgCnh@15W<{6(jSwyTxy!pg-*@U*}Z4(5Z;I9wAt(c&tvP zwRQ7K!*=G%-$v-8Od&>rPF2#n7#`;Lwr{CeR3es+7=H@@KC6XyTrLh~_LCf2Zw1*X z#up7_a8`GMEC+Ul!e@n-4Dx%B5|6$5E6e1wyl%pbzm$)H;)AuyIo;%?rq8)m?Sh%E zHVU7##*xe>CZW{gq*VU^?`-({_gXC$is5LqS}hgAxKD6nTzmpCc(EtSQC# zoj3D;f~4*>Uqvj04GCC{Oxa6#j<VF)E~(@#{|YNl!)!lQhQ@3-ZuiblI)onjNf zeM}(i9h>B$sB^oDDw$ckN{+3L(`6m9pbIulaCf=7va+(uthMU7AH==3%7HbQH{DfGw7-AuNIN5LG4uCm|67SlIdx5 z6gUkaI<}VQ_dr38#{4E)#Cky37|5XKKvf6`iYyxQmEZWp#C#7b=RD zFm9{s9VNq5POz~}dSjK*IwDibr~d$akK_Ci{2ASzQ{|$vcuqD@yEGMJ{{T&6QU}*R z$N-~ivA&6y{{X#F&;^ljmQAjl)3UUe7G}3q1UM7Uxwa9b}!JF%?sJYbGc0l@w=nlxEcz zG}t4_S*PzT!pO+a6xZsYbZ?ova#ESD4fG)w$~GYimp8mVO9Om$ShWm8?@rI&>!nhO zaq7c;i&^puF5ak(HCir=N1m!_JQ@ehHuhOcpGK7{uR4h65Gkbspo-$KoLT7Sw9r0e$(cWW% z6TYrS}aeMkFS2*`V&sOb2 zQ)%kmW5lKE?Eu=yzEf={cf_$;#j0L%yAha7Tg_^i_Y57lRX;r&sQE~K=4RG6J3 z4V^gt?y7ub$V+MAC(P=f4D-7*j7F-|= z+;sI$EokvmK{S96J5Kw&{DQyId0 z;ySk9Vr-&%W7Axy>{=1gG3oM8buR0CoKkHs4N)X_=G!}L`$vSv&fsdRVw8>r)Sk+%Ds4f~h%LqT9Ht#y@USyhn< z?YaXYM657&rgxzG4M@BXO-)5lvaG50X{n_D0QMsvH!hMiLyuLF&nv!RYhiP*g0bd^ zumotV&_&Y=S|prbvfH=$j)4Xf;N+`f#do_25qR8iYEShiXofBQz?-Q_C zIpE;f+nDR+jj`YJk*QA(GUvB7m5#cS9H6d=)90z4TX!3jd{jcga#EcYWSSL=N!u!d zq`oEx_kb5s$b*#|hybS!BYOtLdp&5|Bb4*hz%L{Zx0b)Mq^^P65IuBGt6^q^OB7XQ z+)aEHJw721X@ohvvntF(+i9Hy`Z2=B$(UVEP7E@K#7>voDjER`8=TzPI2^WMO@}V} zlr%xetiDj{V=D|J~EbWTrda>JXJ0)G>}!tt4|9w7wYsm6tLjm{B4m;QTC{W`9d z1~(LrYilG7vT@COg{eM!CmW`_CUTg|?48?jbtH|7 zETeK0r?$HrE;N?X=tybJ{{XfB0PFs$7m99#RLI}$>jOu@Hn0uTCW=)3tPYE!)Wx(# z_WH>Sz8fZtp%*FS(O1i0RQ~`?QRFpFo%Hg@AlqW8YTED!DktU&iR{WQR}eQ)nNl+7 zy{JC-DVzzLXECK!P}AimJFxi_`Q@aL#^IU2jj9Ymt)}eeCoh5&f%6AB=Tow$rehi` z6JuFI`^oLq9SQ{!gY`{zp7C2EQ;Km;Pa0^UkA)K%;6B9v0IYxW6cAGES4qCAKmG6U zT`b=X{{Z<~pQV$2{{Y1hE~+~&V@880(M|sIC!;_5qs!v1Y>(abRi9c@IVc)9@Mu1< zsqFyEp!>?B{{X`9{{a60so&y?euqUC-`!X!0}rOR{HCL_a-U_0>{C1M^;JJr{pE)f z`l?cFsXq6r%yYX^peMyi%~N+(NjV&#)}&n%^iNFx0CXfGD;5=YUl}EmD%%LHOc{AwHe_vV{5U0GhlhRtI$W%R25Mg_I5#8h#;UqJ3+hhn0-8tWZ8KB z&KSh569hpU634}d`TqbdetW*Z9Ln&220q`0T((>oFkr!h23)pW8GbGdxG-S&xUe5F z%e=-WY|F+1wxPy3eh7<*&VUG_z(uVi2%)BzXQYJyqh+ceOhJ?nmY|7ZCu4q011_JD z@o07r==fCMKf?b2;NARh_}}l#m*(Zcg9cm}GT_1RGUdyc23#00iy`p_psP_p_)iQD z&?E4z&x(dXfCJjw;f1S9x(NAaYitmMvxngz!GVF(;F#rqMarqC;dpi8KgxKiem8x2 zCI0{;{iw3#%a`Kd!GkUg8GZ&|i5g}Sv(Wn!`q0<)5^XTeDr?OKk(o1$^g2zFQO?=crKWd&?@v1C@|v7SWVi{ zHGL!auiA^|{9L#`2hGdyc^Q5PL&p!POMEd|^9iCOVn78n6NC}5)8?pDK&J_Td?E_G z%Mqs(=rnj0S$4wO?qWR~_gDDxq5l98hm``lGRG5W4gk>x2*&rs%epwZeDe_zlx<3V zn0)aE??>_#78e>hegb1o+#MVe-!?9FUN`>$`p@TIk@@cW{8N|=t3d(_sWPFG5c7dz z(eW-{#$fdkE)@Ge3RUunD3$mvP0A5NjUD13;00b?k@dqD5Ta8;qA{gNFz`t7cp>-@ z{5y;HMLU*v3@EbDuyQD|ZApMLwc@=HwIW*4=_)C%jz_g%OQO^V*|1t6S-vVnkI`;l z(U{$P+YSeC*7!PS)PB~WtE$-ak);$=&TYlP8F5#)HNI#$fw~ge(p)}b`$zcy0LlIzjiTXG65K@2 zlybqyJ+WS1j{x{0yGZ`dnW5on(?7kHDp!NBTXY81&_*sU@*f0Xz}jE0v~scct(b5< z5HtnGk{ea#g`ZByP+c-Ey{8PS&IKY}&A`@InmI`6oncGC!`c0i=2XDjVn+7CWIT|E zgTv3ML9o|t9Igt0u&50OLciFVk;&$Rh)cEwa;;2+xnWK#y4)@*+>SJL1SkqCwOMwl zJ3PL*V1clY*$kMJ-kZA!L`sUHY513JqJ-}Eyb(u$3JTlCcMMD@gd*EiY*^OGSg5#_ zL)b>w+WwFEH~diuDPz)UfXW3EnJUtM^S16f?iaQvB z>^UH>XYjhUXbWG7LhW(MPMYnHTur;pUNI>{W-W>Y4d&XW5GazvFljupNA{ zORBc7Z<@hzuq)va%|`UgP^K0zLV$t0B~1xxHx*#bzn6kkATA!@(e}c|@egk>jdyC- zl!~Vks`;*ua_MPyh!OB4)zDxeMFptL8t;TG`b^CfJQ2vAshERXM(OD#?W2e`hLh)~ zm~6n|vqJOfaq!H6C=b0br^yI-xU#ncyTky6*8czoII+dmlvV0nBGzvv*;|07)yTlH zG<9{X!KSlzu6d~765SjyPEl-cCXB&O8x>&%3Z{iDkDmis zjZT13i>QVSh{VGjCqg4EB8l=#jtob6U1lQHWj#Z7I7bRhk6Y#j$xk)G(Jk>Q%)V3_ zM5XkbhznipKQ!0$!H6&5qJ2RYr!0aoAWww6$Ae1+TKFmYO4+|Aom9tV>afPH1QEahMJ50C~%FA+^Er7YxRWl|_Zsip=!Fu^ff(McX zTg}aiC^x+GEd_w&4fB|dRTq~rPR6Znv0#u2w1CwjItzu&w0{tXed4^ZDe#6B@OuD>Z!?^1HfOhU$YeXk**its20kw#97O-W{eL)mm zkt}xVm4;*;E|!t$gF_EYv}`Ru{gDM+?92Kh=^uo%`y(6VB2(yUb#gNF# z1R1+w0F^2b@JUB&pw||v=p*N)a1UE$!m{0lUR$Y)8zasL13*;)b<^B9;F7}&3X&%y zC3LYZ0aH}aIK)!10il+nD)fvAS0Jc2mJ8C>3#3hcswmYI$Wg_-BuW5bvrS_?Bx_W% z2VW@#w3ejkHHnhQE4!vFQ;@@X#6yZ2o-%6U#g`)i5fd5Hs1oF+E#`XpfC*w)nn$1b z$0vgPwTlfEn5dj}(ClIWs|#@v6pc3sQEP*KmLl>Ek7K4ibQ>7?>$SMc%t{G>j+%%V zSKM;qK**#(+!8x0_{;k)ST<@o-AKxh1s!_#P>E#-AXXrXfoN}JP9`GZR~jHofg zQZAYTEusRc;gw^C;?~PYrlATARZ~T_qO@+g(D8D%18A@#ib+BY(7r+;i;O(a%sx~Y!+n|YDc5g4(LFvSX3j*;P)v|6Hyq5*>D5Q9WwEZFPXLU#enEz@J> z)=)ftoDtNSwNWq|Qs1IS!UmHuAI zN2VpI1X(JoR|g6}jI7I)2N{R}y~PZ}Lf3)-DIFtl;V|~+`nVRU>I@`(OqHQu+%#~! z5|&f_BIV^+GWU@h(TKNnkS&G+OqkJM&QMh)8gh+>CIJg@2W%14VD5#Xs8A3DJ4a-& zsxAgL@I=CY!fRFeUxpsga2tre*p4D2N0|Fic$9$k`Aru7h?D5vFVI^C0*z73$bc3?Hb$;aWTNpx+Eo=fVOS_Ym3Mn!`vq9lj#$bM zUjS8N7AeZ%y)Im)&?uk-=aq`tdT^2E3_@Jy!XeU-TQrX&E_*1@qf2G_kN6Vh02Mhc z$S{B4A^b))i<1mxX|IupB6Zad?O9r9YnArOj9|MuxlCj>{fi$C##~tlphW(eOzO&v z3^OXJ5Q#eIqh)Du=9FPKl+*K3o9X~7T%|+~dh7#P6C^%`F!*7%*0_)Hi%W`- zDxtJEK3Q1I8G^Kem}V0YE71z=Wdh)skqpsMaQ6J8o|WD7||VLAj$QHBk+17iYM zK!ye^f!cDeRqbLB5ZETV;CBPB6ksVr2f_&�KcH#JE)uP(_j$nFa}X%DJFnD`QxI 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 G;r{@ILpVhM literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/c1.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/c1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f34f008a1a71a49386d33769f0689888dab28f5c GIT binary patch literal 57402 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ðb0PKfUU$cFh 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 k#Of@su0iVM03$~yu#SV7{^5Q8c6`~bq?h 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 tJvxsZVuq$alte=z$ru zn=?_&b8a0UHX`=u*d%C9MYhx41h(P$G5U3IH**=|*Bosy2EiR-f zQCq?*$xZT#DuHDoAB08pbje_R+=Gk@wh^*!t+ESYN&!28MFH% zE#C79&Hx%C(fEb*B-ysKDwVVU?sVQc~FE zd?5!hjjWH2;bD874s(WWYBXuXXJ+kXOGzKav;_tchAhdZ7}Y%CnS;8VBQd(+pOrkA z&Y7bK-MY&2D?5Y>=&G{a8B|3^cWQ+u{H{2x{#7jMgq_ir>=2Net7W0taLc$#IgZO@ z5VFx_bk|FT5k(5BQ#*vAR5*{Y<6(b`lkhtUothP&!^0Y#%6NFEtas?8kH^5z)izoQ z$7nSv!OnG`3s1rpCN;4iiO2^z#1}YxAv=Mt!p1wAVQkN=b9F|5K;(ep(Fz6K$S)9t z6F`i`O5If$PXwcMRcNblxK=I|O+gFtxUCkwu!7AuG}8Mv_ejnapq-KIX57|FBKF)U zQ9_q$hY|KJhu5P*YyjWxDZ$48pTZQjBMAA565@ED@`PoLd@+YorH?a>+a`ywHwzp3 zrxv;6i4NpdRZ(e@uIQ?{+M^8_uZao(k9jsi1CrG^gf15ZQI(Kdc1`qI-Qu-cA#|XJ zVux^@jB{KEnlpApFPpRGt8}dX=vP7Pr~`8!5kNnJpM^de0L9HSh{h4Jb|%O!=9p~U zJBZ?%l2k0ptX;0FL?TyoEc98e5UEu_ucFW<>YE9p#c;+^s%)9a+4l3es>SBu ziW9mSquIo4ou6TUMP^rY zYj9L(O;&xF=ztuP3Z>;$9?7NDL$*6+5plaDXo_!OdrXk3FrEY4s?;N7W>%MXimOJb z)n-?BTeVb-){2Wnd=pUiG0||5kXCf$sdH{QUE|t5z+QVs@S6i~aFSEgf-@*C;>_JZ zE~3aHwL+Sz0JH2LWD`28G74e5dxmR1!0ifqkxnqxX?8()T}9oyT$hS(xr7s8$*`O6 zL)~bzTu4IjS(GO1lYQJ=ZXU??iWKbkbRO;ystKf~(GPzdNvXcr_6HBWv}gW=0s#T; z8=RYry$hk)=b?=}s=z_SGk`ZKpnt!OSN#83sjkPju~KP~J1 zk>NcBrubNYW>|uC(k-=B%6%b}Q6G6x`+M;iwqe`9DnAhFNJIEQ7jU1lys_M{#OD*Vc|E3Nc{0SGiHHbm~2ET+&IVk4tr6Z|H| zwqk_5N6^ZbmNqZB4V~8n|7H-uBGgi(_cgpcWrR{L#LE;lZ^I>6pMk&P;MQXIv z=!1=v8qt)^E^f`&Cf-zgibYB-6^3S{S*L^!%atU}>h#;XaLJ{N zR?hC@Pa>(wH-8Hq^=$P+?(2wbUow4>wwY+J zX;|z>MY>z^urB?=tVT5&wDWD*A|-#3qMtx^Ph>ya@W%EK_5}q?)Xo2BN&sE z(9l1Ht(QR^Ha^jiv77RWVJ-73)SO*h?4p0d#us(psal||2^`)D{+C`s{$(vh(Vt#63YsMmXZ}xJR>Jfx`!(f zIG@aY-KBUg47x!%8xB7$?$Qx+o>Q3S3sFpdeLPFN%^5@g08C|xDZ7xafXT}k%`+a@ z_jsiJsAU_pyeO|gw0>4Q{{XP{;qGX}Hq$h?E)m^mZut-jejFYXqmif!L@7s*r+bL( zwT6V^CuX@9kj^@3k?-qhvVle+j~z zfwboRtY!oJ<40|Z)Qgitq;P9RlDsR!P9OJW_kL4|0@RXfD$&_mZ`X93Bjom|<-T*3 znuV?%N(1nxevr8;A?FFm9h8n1rDI+Qoz!oZ%mz#Ye_C6b;5Ly z469JPTwvwmv1(v?!8Y*>38R7D?h}#O17Q}dUICMC-c+zj38FIaJR3tg?icm>R;7@; zWu;Pi%MQr9hFfl|sOKot!qCs=AJ+$jKX-80DGNlo3NliTv0 zD}${^CbU$Sp3i{3llo{tHx-2<{AOA{n+mxUjNLg@{^Wrf3x zG(s?JelFdzzP8I!-0*}hDY$R61#Re1KxH8Er{1Ir(&M@!f@Hc-#K!JQ>O|)9oan-N zX&Wz^Pi~hLgOb4tLJ?zK$V3hUR+a4*R1#{vEv00ln}^dsQ9wSWG!8D^t%55!t0Nv)*h^qM;NkHo+Qo#ZGX&Q`C|Qk z4gT$u6Z@)Vg`cIm-k^%(%Q9kHi$ z-9^eq)3yo-gGQ{2lmq2|U7I5-THw?2q<)zJy_4N;v`v)2R@Fs0*lVL2{{Z6h7>n3W z%TNmshz>MLpAy#XX_5(KAA;jSIzr;N$;A_Xg@vhW3#g0J9E*z7iqwRI6@+*Yd8tx8qNbNpV<`!Mbd#1W0aJBigJC&x9*e}%S6asE2{UobX0C3sMqZmnFFc=wbYfWJRONacbtxZbvd}AR zsbL51dc`!@%4gZG-TMz=k)La^pGA#|?lBC?|Zz@0<0~QW8K5$+BDnQudhv`SffA>7ySj^)Y>>y|3V}f}@vAg{oKiRp)tG zT=vqXd9m7DtP~v9qagcTW}}D;u2)&htp5PD)qmRRzwLDi=Qx?Hp%YW0MkQK7+u=!u zk}=dCWOcu5O<-U(%A(>*@aXoE{!w`iBT9}fi@(W38(S-j-)=%P)z^1v-?mLNWhj!{ zBLdfPZtptNF*Z;8D1ocx7HcKLXMBYCrq=f{)oM0664rra@>I|fax-U?=Qx57pcb~c zQ-XAVO5ER+%uKEMOvgNXlQFTLLKDV#D^OMuAO!qd^-u}&$o^5hnD;Y<4j?_Wc~9Bs zOe=Ka+g7hF)puT2ty(I|v-jx&gW7pe=?83!lm7sMz7$(Gbu2JH=oI`UZsvWzq#(mE zR^h>7La-$12GCM9k0q7DjEXitq|jS$ z2XCd;JzCSxB|W`U?%6%=4bs!X>pRW#jDAsF?KxVsXrk3eA!tbE{I0y8Y16#zYWrGr zln$-RuFvUjm3|$oSD1Y$X4T3nf;%ZDwW|9gd1I4{C9O(b1`1!@U2<}30@GL%k>Q*Nc~$XPi=PsK|*m{ zDIc%4yJ=FThuSqEw`4M-m8NcGH4W)Tn8PcUlAlp&1Nc3?LI#%qC7FLcC73$yPjnTuo z!qIJaG1QA|b)^8QR%HgQ6n8*b*)(Zte&;IerCEV$IP{N1kUymSR89F#@dkYH!$y&c1I-&JSI1Lr0hPe+M9*HabKk$XyN|=mC#)<7YK_{ z#-Ff7SD@DFOpb?p8nrb(?H0zc_N6xZ5I}#=n&=6pj{x zt13`IsPDoNfHuq(NVOJ~prINitxq<68nqiVj_2e4f_^SXHj|`#xj7$0`3wI5N)|XO z{{V#8-tp}}fqtYimY{WJO)nu+VZ~cf70P2&EvDy6k#?2TT}9MJL|m`FkQP)?*P;IY zpZSz|AjSsODSSEalEK+Y;j#~I>FjiFrwZ*Vy$kgtn6(Mo zQ|4$!Vo;GbMI##h$19^v1xM}ea(>Fy=Y92RDCm9g7e@jA8Q?94w4^RaQlAuPQ$oY*A`_ZIExeZVD0brtro)b`>OUjpeG3 zeSQ^Y5PO1T{{U&Sg0Ck8@xP)1jvCzhSC{sKN%p4U-GsD;0j!j};rxH^*hG{9u8l6yIn%)5>wP z=m4UQxAiodwS>a;eaVS#E3{nCwJs(I8*g|E#XM2c zxQJxgIJ=T>Dx_R~78etsX?k`xHkwSt#QqA^=wGjSTC^k~7n7a$MG?F8DMszUJSYTV zoe*qY>oUr`zlB|de1$B{iKLRePsL|* zv@!c9JUpa;I-V|PdOh=U8z#OQ!{2%|s05=f;0s#U91Ox>F1_1>C000000RjUN5E3CV z1RyX$6CyxS1r#!2aZsTK6(ci3fnX$3Vse20+5iXv0|5a)0sjEvg%a54Wg7nggj(WO z9yjD_-|%#;hWK9_;keiQ7Ao48F4?f%`BoDBL9$g6BRI&hZ$O6d)s1vFU#Llro02Ke zv6Yz_m6kT@t?*H7j)Q}?8sLY>_x%lA%4O+Jdf1~2#^Qo9mL!R2KC|467E{7kEurDW z$rg#z)U}xKLM8eVfso2&8XD*-d89>UMa$tbU4LOo^ph3{ex)r$CT>`qFOLkjGYbim-w7^w zF&7>P$gX&CX_cw?a=%uO)Qez=Zdg$#qPbEn%Qs;n=H99sme&`A{;W8D_-rBSR9cZl z`PSmtQ61AFu!%Y3gJpSmkc;ZU+DMDMa7>fbSV|6Gf^m(kPb!Ut>`D5ndx;9gu2@v= zRaTxHJ?AgeaFTG@C@I#-e`XSzARJ<#rU4 zL;Ddjl{81^o;2EjXdy(4adlzJN!!wQAC49}{LTc7xN0km_^+ae&uhNQ;lpUOT zQXBB%PP4v)oSL&KM(j+vn3YJ_mS@j?9%cB2=0!glkF>vK-|1V<}54 z^)wZWm%_V)E$ddqmbgbuChU#It%VL6a-`=cWFqgl?=6lFhlLxmy$W^Vm7|E@>QH-K za#C8{sb>~<61e2z^gKxpvph*Mlp~hx@nGGpVy!hTMI6q=qmYNwjI&$H&zP-FR+Mfo zDwVFtRfSENRtaifmNjJ_=Z{m|`H7z~G1Z$l^|0JUM}&34dzK{|uetF47sj4vvN)Kf zM=xVy&RZ=`8->f~sI|hx;Tc8U9A^sXPW_%V_AB1n5JQtpdzNOT73L_iRI_L`mqA5d zA4(d~o#V=#h;b5I zkgXPHvNz|HvZlt{zp9LLl&Pp9eq~}5;)l&^>`t8Fy5yy7m{buRghtt0JBxFG`WiMi zJV<}sN6gD%DaJdo@pSX#Tbx(-=Y>C{V~UpJwfUp<3EdXAHi>Fht9=)we9?|)Vx1)g z_bel3H?K7QseUMKd&+!&%k)oLpQh%{(bHu=a1BBt?b!E6-bCy+TDQN*ebr zUmEl5xuWdI%^^sdxsX)Ij-FvsaWb@9LXjt$M0T;n`#(6F9mtVzo=^tR=r4*2G<>qQdceTLkgy$VvZ z)NJlYaw;}7GgwaJftFDv8OB#4nI zDP_hCt@J*1p-<^F8_aeuZ>b-NO4`7!S~XqNY+TH6OZthQ8vfi!rzVmi z6$NZ7eH`%>JdnCInl?g`Q(}}z$k44rym>qN8xf}28gY&b4ko?)s~cf%r8wqhO9^1` zV_IOjygg8wg_-d0a;{Y` zb30_4%a`17xbnqaj-;Rdr28_>VwSp{%5zXN$8u9bmSe%qyB`jo#ZD4yVo;QKSY7vc z$I$Tm;bPcUs-YjbIX3S4?>A;!-I;KwS1ycAHKr((ZG*uw=456YxR|Qt(DBDzncSWY z4AJ&1hMbJ8T)S$*ycw*DaLTzQP7>Uy!A4(6IunNH`ocbjjXbN8tz{3%Im&V$KZz5@ z`wpw@Q z$qut*YI&8+-N>gd#jdPc%-J2Y3QcNDal7eZ$I2}PwKAd-w1n@?bAC(mIHo#qeT7ad znXJmp;wj{p+mimaoc-~WvK+6BT>h=swOQ=&7rASy|*6M=68d-DA!Ui>A0PV@70W7M*SNW zELgWj!g5A=k*v=dHcqrp5gE~$8L)bxrw4RUuBE0I=FD8TPUjH&6W^$#a>jN>ZrX}b zf1%qAOw3gocF4B}p+dHG&0`@IZcCTwR(@fn=DBk* za&o)5H+Rxexft7*_dV=xZblNGiY>E;_&*(8=}e{kFIy$$R^MWm!1!1snmDh7Rq-E% z9SWZe;;H`tf#J=+rH(Cbt@;F35Uk=xYI_&4enyEkZCI;YMoPNuc;}3GhIU*`>t=@e;Hm+c;n0&L*v;H~G8aAD{Fk{?~He$A?b$%8LI0 z4xwNCbw86%Xj07@``A65*+V^+9>fh z-0`l-JHA_867s&HS0Nj8zZ{>OG#}qmza2`7-sNwM&QJP&QT$hkc30G?UZqy^OI~cI zL92TF!kL+2d}>DPrjZ!*m)QM{adNldtH*HEx0a{#nt8QeQm@7*W}sE#Dpr1X(`d*z z57bz(Y#J$1l->-3M zE*?@oRkP&Zxjr6o*%r2*wllGGW<;MsA`!PvhY=aZ@sO%QPS10S<33er^(y>EwBCe6Qfc+y*2rk5Qn0@jKp6?F>R2g7_M|aRnE~m5RxZN z#n`pF_b<`0P9Bvz8HD*G2}q9(?tHqr7)5P{+^e4a^(&~KGb@vuo4yt-S^7KUP9C8< z3PtYhid1FXQBhp>A6qd}tYS`Cx!UxU;p(DN{^Azh1=e^~->$lm+>fFE!~iA`0RaI4 z00IL60RRI50RaI40TBQpF+mVfVR3;Vk)g4{(J=A<+5iXv0RRC%5C#lkfMEQ=g9Z#3 zFkr#+G}GdIPl>0ZEG1MnCyV8N!CFlqBN(@j6(8fowvX@J3l5BstjX{MTF((Plx3)XX0t` zG|7`DOqnuw;WA|2uwcQ1;4ompgG?U*g9e&ur_9q&_)RqUnrWxNVgCSOljdaq0D^o? zH2(mC0aOFp0*(@iw^4K(-+8eqYL4nMkS@ifyWO+V!4&pw08_-RjTdHx}exey8(!=#oYl6^pf zjEj#q4nW&t$?FtP3i?eW^FAg_nKEQElO}Rx!Gi`q1K==V!Gi`2AM%=f%|2$DY4J4q zFmL@w!|^ouPl@u6oSy|`bzGYv1wz#xy%)XvbCiPket0sj`TNK+@ne3RQ1~?ZPgvM= zPMPA;2VtI($w(yjlkfEZ0F23>gue-sCUcw^Fktx%82As6!Gr!&PxuC(@S1#|1~-fQ z@S1$hJ`>_+ILEZ5fEoIjx(wyxMlAC5eFk2F6<2Tr0D<^sL2~%Th<26L9P!ifOzz%V ze%wIAPM$n{S6EY9*L4yS5^Cs8Na$7R90`O#=pxdQBGM7Wqx3_E&;ug9OBJLG2q;B* z??svg>Ai;D@#Fn3{{7@)-|Qz@Ymdye)|_LENj);qCKBrN#feCl6GJV>^%uY>Pm+j= z(M+@d-+T8XzMG%B@5DTpUzA@79LOP-SiTHwm%MO0Oec0FY$45Sr?dk*oPdhWSD5*~ z016H)=S)L>`@U$whFQnM$kYsJTOvWn>_TmCTx^q3oO7&Nf7$AS#Sysonl&9m%d5tf zD1G;mV=XvBh@p4mn^+3$y2yB0NFh0t)lx6PMEd0sP;aUSX6-KYP7tS&IZvw96MFNptfegDaC7wCQ(VyoxBid}5Ojm@17!`?_Oza|9Am5}D~e|HIwg_{E}` zFxnA|=NP9u{12F@YVft%xQbC@{TI5R(lQE;33SrEPYpR2$l9SLl@@kxnLDpfOY~7+ zgOIA28EH;2YUfy1!&nUU|Bk*G})^t zf^*>h(Qa25f|oy7nAxHS!B?(NPqqA!+3BPHz2Le_SjP5|8==s%e0@>WvbQ~i=?={p zc;aH;;R`WENYDHfLy8gMZM}j;Sw($s*92-zO;;rhsH*z1JtcqhZb3dboi=pepZmG7H!jCX%zFH&7;B!`yqp8n zh+F20M5Z585Bc54^87C#Ks!9xu9S)NU5-tVLWTMbakUS$}4!i$1%3b zCK$vza4fovgmwtv+c=H7-G1rT)ky{MZsUI3HEp{^xwBejLHiq;z#;|zKJkGi$-#eS zE+VH3>E*bh0WduNT>0?TU%tilg~CEXZuz53rH`^EnE5rkQFD)?k^ysX&t56O6j`HbpHQhV3T!q zetX+(<79SYduSy6=8)Or3%|5M4rPaJ!g%8Slx(Kv($uXIrf(UPe>jal>7{P;;e)hJ zea*U-twrVw+(mO)sq;At=mNU(Z_|1(6dvfyLC2bDU|Zn6>QY)cnzm7Z&hH74aI@)Z z=%XS^hua9Xe}#^^fX$}8)Y71oHVYMT#t=m%Q z-Tq|_Xn?Sht5pkSr6FrAKmqU?a7MAJz@;@qNyLF)w4eO@5}~^!@Lf8a30l^^f@Q(I z67_7)nbDZWjGK%Z4aWr*oBaoi70pgE9zf^|&_wOg>klk?Dekb_EN$QQemlHOe)*Wh z$X%s{d=>jFN`uOat@D8CCPq6OcKi@2qd7m}9Zb#(;tJ{yBZH2n!W~a=fH?Vu>;GYH zUAhMY4`J$&G__`$z)O0JF}5p7DXWEk$3vpdbF@UCPqBe*z02Xp%hC3&WaGwO)_M)D zM#)9!nQ^2%{=5&UZ1#5Q0eNP$VuNyUyqd|p)h(0F!i6NMr1s}E@liUsa#!m1+f{U0 z0ge|!STdS%k@9AN8a~^iWqy?vg;!cZH_Ga!o85|BS2SMZI|>n6@waIMEHz)D=|MJ4 zo(GMT??LdhZ*R$%9EhFk*hk}~O_N7GKPEpH&w7ArH(N zM%;2Dn9jurHcZ~}q+Mq6;g1|OhDv)lq_^{tmS*MbB;=4}s=oV%b|Q%LnA9Ay8&=fW zu%M)=CbVaR!_aCyTsKD%Ibfr!y9T^1T_(OsH+@6az0F$ZSQbxDNTW0ExH2?iI%o4Z zmyA`um6J#cm&kq+lE_7Fgq7np@D(pOaryZ2-6^wXzzYc3dK-LXVPq}py%xbGjeky` z4ixB{p6;t)2YFa|U&rjEt4-_GL4a@rAW}I-`Q?~`lM=CR^QJbT!qnJT^w}D;y#427wZXPyECmeqTqi4!W(ql?VS;n4bCT?<7a73iqIsvoR_(VQvmwywyt23 zUsz{o=1!as8a~thes_xyR+4#8fGPTQ1~%le5d0k^rShAP!YN`Jq>n104~WB1IEebn ztz;4(T&4~3Po6TdVDzD!ZSopsCB)HJav8%no2EW{Oem+g<4zEUiPf?&(m>*#f}_{B zj)$^)(u>nLgdxF3o33;DY=l+jx?x0L*wr4@BNl;#wnwWx$jo`cEo%R&Trm6HGHxB| z4*rZr_43&wTK{NSPIMXrwnHs&+Q*G4YR~%l9_@%P*bh)ajogOROO7Ms$`GkAXM#OQ znJHvIA8WB>s(uW79F_)vjydWYmo+9#aQY%2|7V`Rq3Yp z!*9<_;aP;c*6_W3SD>fI{Pu(wD}0jU%ADC(`e<|6^&A70~VYyj6RXscQ+q$rRmT zXgae_@RuN&{Rw)25q6#GW02uwR2j!qx4Cz()GnV=o42clgW|Jo+mCcsiE`W|3dJug z%oa${h*FTu zLlWlT?uCyMxy>Bxr}$+a(%;r0-Jxb%B33NGtr4%xL&?BB85`P}pJ`mHwEZ^^Db|LS zWUZw_A(rIU2s6Pt35Z>aE47d&lZqdEEpK zZNkKH%lER|db`^SDQ_3eX;zrG+8ik@lku4I9IcsjfJN9v4ngxTpshzNHo4oM5p;>{ z5bLZCjtQmrz|sd?ual6YR`tI1ZlYHGTBmxnf{VtJ9xDyoNFJ>ppclRB8H-&_4Xa;$ zt~REJ(7JhL!$r2UxcdAPOfrp9ic7yFw%NHSF}9;)d@V(&22)WYKZli{0|^s`uPF$G zpH{SA@nt7@Rn10AG2 zd#sbFvS~D}`n(=skN+u4ww6r99a8?A&=z2HN7^ka=###SlYyBo4v%xC{{ob#KRZTg z*JO!X9>&sjaq5CUixe*_6p_G1>L9H|8k8lGL_wlt^WvOu2jV?Y;&C9jZi-*cnawz6 zYc{B+TRMXt=nGvx&rFu^|f=EQj}V1d+Qh*3SEGg2I(0&jw@h znQv?ZY;K6cWmqhB>fGtzmBJqX&|Ule1;hxBL4VLQdG$WLf{bz%RgRMn0NBbpPi87Y zvi|~lphOQbUdU@PXOetQ%=@)8HT@igybJybc~HTnq%N7r_Us@^=sfiSt>DC~c$K~a zBJCh&i9fmJrlAW6I5xo?kZjZ!OA?c9W+)Q#LUs~R=I7l3_F~K-gO%%1J*FWIbu*M~ zu1VYxgX#Ll$x+{}xkrUML~WMnj~=cOSzQ^B6LN2E5PeBt(q zIY#vt@M{^ibPby157{-zds_W$rP+N~iwfPix$-KT9jc2Cx+b5W>Q{bFEyGp*d4UQO zwaI1PCttF)m;>@aBg5ShmI2|~$(&b|g|tdhI6GbHzW@*YOS-WnQ>8dO) z{BgDvxV54{U_2HD<3T)JLvCfhoKpVilFbX_)ok?EBb~F;JDc@H+)lv!@T6Q;pW1>e zctI%ZDGGXj?QNr?L%gVGwj_mFmTXd?+PKdi_rap*V&`7~S>|4+M8ucTDQV!YD_QQw z3h5!^L^PB9f(@mo!@qw43QXbpF*lj=yGC?_cG44|`%nL~46`I6c>M)bm}F*MnGd~L zcDj(yUZ+q8;ik;Q505|e+T$1Tv}S`rcqd*+_M zCKM~T@Lf9A@>t9W_3!36wJ3WZp)Vj>6aQK*V&W1r)D~AH&r8c#EOTrtH2(%8X(iE5 zKzJc$E$?jD*!)f!@5;KfEMb zXx$#XW$LmA-AX(0BtQB^HCoS9NiQZfMaKTThjQvfT7Gjf<82PT8hsc5Iim=_yy<=m zI7~-moF`<*S!`fSIh5NDmP3SG%}LuVp2`Pm!3w=Z=Y&b= zp8}^Wj6-5Ne$4Kd-|nMjW_}Rm#O|4iAEE5c7e0(Ms!0sZIJBndc~iSy>uEZDmpNsA zyj^bxOFQREJnMoY$)Q4zTO6|fuytSBG)5$~A**Jlj|1nH^^dpkVWWTzf-k0;)mL1w z58ga_nda-05l|A8$(T65hj~X!WmdY%-1O+ghyWLU+&x+{F{e$Lqg}o=ip^$YW}yz> z@Jw?B8KrAN_Oy#ge}D4V44ww1sk9NCC@E8F8%sEr`ridW$-Ia}S>Y7i#5Wx*n&wq( zvc3(JDF6B%c!FJO=kY%3p^_TuyrpPaEqqZw6t#-I6pKUvJTTYQ~WIQvkJIpJ{%rsmr2 zS`wizI3#}~5g!V4P=R*Lgz@BbqZu;>wY8`sM@?~;B^ z`D)kL5?di_v^1u8$=*^!5-Sk%3c~Hoku}0gzmy6^qGk$6i~Uk@0x!< zV#i1Naf=JB_C&-@jTFh)9VwWp@Ayy^}>yFin4F^ROunAbZ6V@p3bJGw-cm9LO5 zzdreJnI%Q#xV1O+nA|q_Z=@+ZN8WARIlf!jE+MK#m<*`~d(hRf zUw;=X|Cz()KmzMb9p$lH?}QAsP#m%_XDJh{?>#t4H7FCP!oI5A!wlbI*c0H2Bxgt&^1xrKk>>kCs z9?x;#L2m5PPQ(q?g=R?xwQ1P@>#~6MfRHAi9g#~}att++_232|B8Wnn0*Z{}gF;SD zZ=lJ?HbeTGejcG&e*VQ<(ojIQx7QKb?JD0_B3@QK zskrEcS40`hp#Qu!szS3>k8k|zLl^{xahR0pH>SdLz~#HWEk8i)%#FwDw8AZ(hc73{ z+22q1W8C<6g+S#Ui7;Rd3AYJ!biKQ(H4A9~YQosmWWpFz-RlP}goXI$v zq;0=p-+`oQowv977pI7`BQ|w8Nz7R@q8hv&dfjV6TTimj`7M6PN*Dw|)hCJu=ZgU# z;=~=fn3h@W3w7&!nB453xw^3})uGl@N(-y1#ys`v>6^Iw1^f2X;i7_a+oggCPUDQ= zxUKFx{InOPcos$sAq{5`z@c zdic+k{(UNtF=JoKbMxT#<0$R{vdY@Pv7xc>Qp<38=^SDt1bsa( zQTfHNK29^Wi-=kAOjuRba$HKB`JH8E^Ay^rPY)9!qSPTAe%qBkhU{@l4f=5;G zP@sFzu_K1mZlu{l!P{ue2L6lc?&nsK!$4qYP$tdy^Q10lwdS|$KdS}>Z!ANjsPQ89 zo56sun9hm_*l1RK3Il-I!i9a^D$x6G+<{HFEAO9rFRXWmROOJ=Y(SDVKUE@&WSm}S_ z>1RcyDUyQ|7StCQ(z@T5HT;1C`GQ@7n1W+Zn)H%FcPoDsnRRIIA1+9N!TDRV((qE# z;TdxLnbt$pI8gDNJe1Tojhq<0d;8P&`e&Vb%pzHt)}OX_K@dBqH~eO z3sKADJTxhMP46$8+b`9q5xBdSX6W)@@~>Zf&1TE!?^DpCm<>Umc#MlAodPFcJR*kf z+8Lpy09IDE<_p!PR4#dy8FfE11gLg)h$@#yJqrn+6|HQOpnW@YABH+vKv#oluGV20q z5{2G%;#V7$Rx{@@uFj$23w*j%nO}n>l;}ZVYP>XsH$cq(>zn>{7Abi-D=;*D{5B0s zfozGr1IxiM9m79w=Qkt4X7KmBZK0xA_A?z1N&;;|)T{P3!+wq)aJj=1`%Eau3X=s} z|Hc;AALTwbA5rOo*71gDYPrZRH;N{D54xR@V;5%x!N-MYR)yXixM%8c2*h5xk~XqF zHfqU1MB_(cYzyWR4FHL36wC%xM#T}>T6mx(@pbN;Jok#)=jT2+4C2I%)_&eWUEOYG z*(Ay&-o=1%uorhogBcQ;%hhM@kof^U)#;aiM?;XW`zB}T_0s^Lx5?D2Wt$rtgOt%g zJ>=sCMbjW`RM4>KVT=Q@S=-}LX_U1XQ|ymR%_>k154>u_eakK9gD>(0#$DOCWzxR5 z?Fnxi%3y(ZjLn)*|1R}?8^Y+Bz>n7D-tnfNUt5yG!&0!PE9J`g>Ktr#H2_?7X{KSq z3+(M$axloJVceasEaGu+=o9G6>gapmweFvpZhH{S5@r{wam2OOQVP6JzxR|On2T^Y z#A+6m0bB!Ma|yBeTZ!xP_ksLwqhejkf;|CsbzITN3{LMCE5#{5fo!)oK#f} z$G?C%>D;1qO?E+KfU~;tagDDUi28$zY-qwF3r{Bx^hdgjm<`I$k{hJ~k9y~g zgDm1o{Yyd|%EoAW`Q`TXIOZpEqW#yfzz8~dJ2#E1Vo=_R87%iz+j<#J>bv0WZ5m2Z ztu0H!%aFt|OLnp2pH(J>!@5qq&Ok>InEVkn*kQ%+mrnoK@{j61^F$@z@5NzfL||U3 zC}eO074a0ctAMFtX+x;kg4aykMOVr-?~+(-=*v(u9{ZW`%QeJHD&SR%ktCv^1lNAd zV_JBiAvp1gKUf!$5sr9?M!*-OhF=8G2oOd&(zvYPa*k`ZZcWB!G@u|uAor((O!^Z_ zjz{EnwHP6*6E7>CFTNW{^A{pGKzREZW|qp4A@5Q5euRPaXTJ~yaX((tBtP) z=)O0Huvd~q=*Z*nFiNpgAN`$vD9Pl8{1gAp;^`~3vK`5uI@-4SMESEt;hMK zZa1=lGa13zYtTE}9rfbNnZE$bVT;t&zkrXOP@tSNA;>hCSOv2Hs?QTq>}012&^&Se zlD~477t;KrD36=qFEDi#60I5H>Z( zw~uI8C7(a9x&bjE-+mwGEcS=X9igpG)_>u@qFx+=9QE{k_reoBGNCwVAx_NArO&L0sAPcB8Y%9Gw}=yZh9v!!1PyVN%G{cKQkW{7+ss zGDhp#Vqb+d1I|Tv!W}_&w#G9|TYiQWybejwB?1G``|}w5*H{av<68zUP_{^^vHc z>gX+xj7!KsR<`Y**9@faXY-Vv+_`wYGaW7$?P2`}U0+-rQxKHi)R;=&k+hPd|#`I!skB3A=ZqJ6p2W zXwe9DM9R_=tV<#4mPFYVC*{ZwO703NmRr~_kxk>QwLFP6{(76io*=*wWx=&8`ZhUN zTig1_)u3VMKgjBwGrysXaM1VEJz+X!2hJ*OsUBMeAWg7nYwNLhA1M!v!goa!NZH6_ z@znYyX=-ok=%$MhF^|&ivq^D!paJmq1W8=sZf^AK`!)o?=zWvutwT%~CDJk*1i*4l zB09NYL?5!yM!#l6(qp-0B156M#W;(V=`8Tqhp{#4cQp{g`hIS|2yoz|??Se3Ojw6D z|D0!b4)Yt1!xD!Z%@6o+7o$UKYRI!wS_(ygf(tw_^=F!aMx0V>)_{Rv$%yCv4B85G zALO3zUvEXliO1t3$K{>`O!n{)-7w`IVu+?sI~wW9;a|>&90hNh9WIG=QsBR=@X6Z_ z@Xx0xD$}|yqInBpQaX>UzknhZ?I-R;v(lSkRKSI7Mww=T-x^a( zmdUtFgN|Uo<_~=9xUOv7+NhU7a(9%mDQCu1CbHj3X>l!p|5|*GhI%<@VsXpscWrQ~ z!3nsdTB9`fM+_t^SK2jfR6-pQi2xO{Ra{ZT{;0SJ->A=>GO3r34R+rbJ)$VQ{$V32 ze%bqX%puS^FhA!boKwD&MKKh}7bj|F_43tCI98o{AUNBEY#19g(J7y`+NRM6^nE^1 z3rW7OWr0e-gDOGk(YY>57+R9AqbO0WsS39(n{djj|eKuyl&trrYy)S}ESRE$&{S6eD z@0y$v@wLu?5zuJd*#p&}j>UDM%g*#Cj`fT|SqniAKL?GCYc-AN7!^{Xe%ze9{7g** z9t|=q1oQJl(6_CsM8D!yOe}iE*!hh*V|Bg7i-V)&a`dYm+Hfi&^BHGp99EweJGZ{* zn~WEQ6tvVgYceVXe-TxoTN32j=dw{j=S2Azit2WEftRCzcD@jQm$T4KEO7~a>h61d z+&?F4ghwAgFhxFv#@+25C!uu8sz%>$HSMIrDXN(E!!Rm7?t&Z$HR8 zM9al&n@%JHg}1iK09+AH78tIs7LQbRBmH6}cfMYdSeh&o9H9A-Iymg{)wT>r3=IoH zZ|ggc%@fj`)UAb3#V9Bp8nNxnLZ91HX@PPE4XV1>uXNageyVU@-+gzg_Fd`j`l{4? zzIua+M@Y3D%IzLWzB1GjK~HS<+xwmZCX(!&P6M4-4%{l~s5?vB>C=3v)5{-C0kArg z&$}?dvfHlX1s=rhhwzJs4DAdzm=+W0TPFO7yx{gYf>x;I@gZhzy9 zr)djxekE*bkdKdQEqWgxobdMhSzZ5@cTA!|)(giH>eV?yc zDGfi7CLcB?$32+3GV@fXi$hpa&++r9vU`<9qzZx`UC=M@#xw`GXw1#cF^ZStAlob2 z#w;o-)^Ie_m!G6f*)w2WGT?g4o;05gFsgShckL_5#A&t*H}SEJ!O593i0%+0!u9DB z?kTA+>3^2oJV1JBFK5TE$AqB0GthUc!=kVQ66WwI?tfp+^p?`oX7!(6+a2Ru;e^v59PXUe88iiDy_Pb9s4Q-Ul|(1>sCTDqEorOW`*RR9FHxmnvF z8}oeeb!bqgU?LEE)uP#>^?;P`c(uJabo&_X+~U86H_$azvpYi8nMdqG;5+)NhzEwY z-lC!!D%mLO7Wo++v^C79F|Cl3Lr0rv;9F-dBpK0$XSR78`Vr7l6$jGQYk?38;|zeo{&8=n3JZ|D zdI<8^YT}a4CS)BuX=Ww%>BYi)d7oS9r((>AwUfx{@bHZ3_)tyrnI0`ccjN;CcDrkTJi?hr12hLuQTT`y@} z8HGq~boHWTM1ohKFpt=hdeztGZFJf?k$g?bn+i)^YC)qfXxj{FhvjC#_aA)Ot(-P_ zK%E_N@jI6uR6H8Md-va=i?DB4Le$|!{!57s3>)RhsAsmgcP^|ws~?Krqq6WuZc97_>BJJ{kPVP{Wx|~F~`~RVt$Bu ztn3+j;d3>?&YaaLlP%bris=IJ`K%P7Xusou(H-81Eh6dmU3nq?0xuG|w@Kh8v$n1@ zv~cT;H0MjOliI^>2pa$zRdc)S>dPWew|xTq?7C15&nB(ucA#4uEV&Wm^l9BGQ6YZ; zu@MizWrBh}i>aLDukIs6T6_QF?rRf43vKp)ROh14CWgMuOFP1DW zcdyFvCGyj82WK8SQ@2NgI_G?_ZZpM;Z8y$|3WlYt6ptmTNT~F~HdP_VygeM3FQ_$`HKx5L~~2dbzBUo~>Fchq$5JzrP^_~o555B^bAxI4k`4q{B{i09qElTkkLYB7~=khBCSo=kj|E zQ=!8tU`CDi)KfSAFmc$BJ7&vJwWB1>v8v30lm z8XENnyw&=~xc`%!ZUqfnt?3c#5w+|xY5q`qI1Hl9P_V(A=o*jp(XjwlB&~wzuAGz} zTJa@zUi0$C!fS~pMdLZVsas<##19|>E$w5lFgB}s_dR7i==bg|w7jgWclXNKioJjb z5Fl3}^}QL%e%ZGGd9e7x!*Ji%|ERZ#KSCx*^}_JjzFkjaaMUfGJrq&X{Q1UzjT(et zc{n2uTjbB5lyN_b9te_w7)|>#B~zB(%yQ}~egAa!WFCutV15`Q>F7N|K_I4^h8Q>< zbkGYhFZt{L100WH@2sIme@d+MXM%pT;I{&Uwr&PTWv~Ehu9XVFa<`R0z|9#A|Dg)F zMWMg@u|4=wzRo#CiJ)+7A#7c+6vFDSb$0K?QWklm`4|2xxRwULDqoGsZ{&-23jK8a zqO_T=A|Pqf|6&U+wQYh#5*Q;wpYT-*iz5W;qXIfavx^R#oRGcuJ!XQ)8V7gGs7kZp zCN7T#J0<)!%;gS4j%}3ksFjX6vZI4>*CMhXh_%YbFFOWx0OW5tlT?DMG2Y93wegCn zS!xqujLMu@aL@aqMOb=yMf>}r>@3UHLzKzYd4*JGL&$KW#+GZl&A2P%y?!Y@Lau2` z?2xZ&gY<;7j|4tK8Q}G4_n)r_ca^(R4a0?u-g%eC^4Dj|hpjWt^bvYj*FykN&98o; z1eZyR`}z)Vm=R45XhmOF_EN_5h26eKUSp(D360F2?sYZY&Z=WRrRb(TQL}J_!RacD zZq?gjIf2gL=IyMZqC?Q!g?9zMTXr#!kwl&SoLQt!oGF{LI1uhB{K@e65TU)81xBdN zZ!}0Hn4sZhrwh2Zw5OiEek_Th{3>PVmM~|LY)?*|Zk$KzU{-!EDdu`e>XS06BcOst zGZZO!&N?2?W9PIg`uI^dAKzp5ALL%nXTOu`UE<(@o+D2vrLfB89-c{8JaM<95AAg2Z_WVMSYak(QT6{kIabsuu1lhte^c3M6QWpPCb1zp}Tt@$qe~x<1$J>i9uy|R3KKLHBbo}2_t@la-Oq`C_ z9xxo+ijElG{Tc3876sYRNVsF;*fRkoR`)tFEL@W2&IHp#T2mrnOgKU6=iLp5&^ z%@qc=bv&Bc57D4@0<`$mw=s4ORJWmDfw0M+%!ffbmM%nR;q_x-#HIdeML@@C3x!ua z_CcE#ew_xS`O{tmVio?PARnOwCcd`r*|Hf$q!8KHnkt|dLd8739j7kyt{D;2r0@Z$w*Gyc27-mtf;a>=%PyP|afe2u zU-w?Yf3-vFM8~L^s*!H&MOgIWo??h7L)de7^b6PcH|92WTGHRX63{O`uX z2lC+pkK0%bs#pKOEQ=c})g&M*{;jiO@ex^~;gsr8C9}}8ae{+gK{ScG3mKks=|yEc zDZ=%OU@+IriFg+t_H}UEz~Ij3_c9$!^p&>##61$^ZZew$vF4aPnamSl+`06ux20td zzhbsR3gfJF@Nd{zk2Yf4_!SIG|kW0&xTs^8>8T!5r2#q`>(wB$*rd$@e;t+*rNEW>c#9yMbKe zFH^hX(4A4Dh^S35hFHMi*^wb~tTMr;;hq#@uP`=`h^eoEDcaZfnP?pD{3>?52u4~u zankFyg_UcyNbiCsy?x;TxkaP8P*diFlM1xSJiMG5313sB*Im6!qT9a{;b?M-_?bNl;k(~YD#=Y0_{NqftTnJu znTD~2`O@05BuF+mi{sXg8oroxHY{Nl3=J94X$uLqKD>0h%e`(SLk34J<^F6FFkk01 z`-)7xa}4_rtml9{lzws@$xWaaaa@G~hsmJaa}l?n5lzY;kG0Ys(YruS`~2u)Dgpff zMSf>rqB+*m@NX7%99vRaEDQ2`Me~c5Ul{V9zHk9#qCRfZp)91W{+%CiNW` z{JVO(pyfqFRDEHV75)qa*vV@h_lh;xux;w`QfpOl4s|L@>x@ny_*u8j42x?!ON9# zbLGpD@?QY(*qY+mj}|a0Nt!$V7|}NT;X@)s@{}ppJ9hD#(~jw)Xm5i2YWS;<;2Xpq zH9Hy#@^UsXv2d^_`z2RW_}FsYh%gIwk4+TZtAe)qYuC|O(rZH>Ciias;Rb9WjNEXR z@!lF)+Hbf!Dxr-qXI|PW!yLcKXkD3$7sc^UD{*I{;Kx8eC0^Bjq=e)HVECq9*So`; z%`vQ|aq)>$DpwW!W(E|Om`)AUMN$n6!BqWM5`5?bW=ZLwdPfFdKLjmIcT_E2ok-z; zIM?Ba< zK3^WpZVsQ5__cZ%%YG#>g{KRD|ER#ZRVjKBs zaYk@lpC#}y(bb(h2uHWbel4+`L|h!q-OgZo z1oV@?9Cx4;h~LVA^uRTqRT{%v>OnLZk-liyPR3CFJ_#RO*YJYjDl~i-4~I z*~l9Z=e#cC9$!D7_0M&+9dKpUO0QdAbS>XopK<=8aMb_d;B(r5oG+RrT2TJ^o{|D4 zwsO|F=Sd z%+KXFoR{nk2)1w!b}NbLl3!c3bjcS?kK@2RB$!5((lU!Mx!J&Gb@<1*^^Y0 zhV2Ar6mV2PVVjDkCHpGJ#8qL!cV8>bzuh{V0q^Sp0eK)x!ns2u=JFO}yr{H-_PGI} zpV$5GL`+(X3->wv$Wju>-(If&tRuGX@f_~pb2K>kpqH50M&0he5H2t-8g@@W3gp(F zLiT(1Q@jOI>tS$Y*WvSZvlF>hssp*zcdXogGC0nMX=$fd==b5kbOEgosia`psWlZL zIIl5K+bmQ=*;&W|gGSYf9s14=gsk+@k!;TO;SXeIBRSn!xd9+xwjbn;Srpp0ooHGm zRfPQ8L6*cIBkcF|1Y1dT4D9G^vfZD$^0hOr8rv9O=x-(X{Dodg4>2qw%fg6>TJBgZ z;!B%LsO*&7mTIiL@q*o|zx8?9Zqf%IwNxNAd3Re_*x^cBfzW~r4I$21%wT!l?Hs9U zpj3x?ye+%U8X^3ZVI^KR*JVHf*=YB$^S#A5xyo~>c{CmM(}MjgmrcdEY_o`JxS3)Y z;SJn)%z@ZIg(!b#ScCdQIy;ihtXx6PZp@N%ThoBjQcZTH&%E>VmAKz}LrOy=K!CL^ zj89C3$rsrKkxoxjAJ#TJ{KG0H=LpH$83r7!3{(3YG>7?*N|Uk59o3tb>{-o1j;<26 z1V)b17wa!17QQS2-)}5huK^UqM4N?SwfHU@qId=@^z zlNTTAMvm0>2I|mLHpb7NAc%sU`3$axPL4&ACu^6a0S^S11P6bvKB1AO#lG`wF;gn~ z&(~QH;HJo5fcf)Mb#jAaA-3p&^)Kt$!M_RpksiN&v{)m!KvpP!z$y>UB*!_Mn{Ra6SIP(RwxvH6!(wi@BfYaDXw$c>IF;Z9+gwk9< z0%r7Cr?^jhDcA7}iv5m7?Pk^uv#OSx1xk)ml67T(GOHwxmW5%}s7Lxa<-*ezSLs1= z(iwpy34LElj~}2~KHV3L z>_veWJ0C!EB<4i6BAQ6wnymz#jO@`VV>|Ew)-Lh7^a0zUDSJsGeyQPeDPXH-%F@cx zg(ysD$XR=JvU}aj(vs?Q144QO%_NZfyYUY6i6lZ)XW30#-EN`vQCZQRnVDK7tv=M3EN?IF$ z_aK$uQ?NyxBgmpt%sY8loIZf3Nwib0o?hB#Wb0KB_IcAl=VsqTj3P`)ZZdtDq{6kr z#xg?e{VB6TVtXe*vzsZT$Fx61@Q4LbMY25&suZQa>f_#fEncsDFRf`tM=nk9r@1Bm z+Xt^ZR_cF84}`;*NfS9gc~jb~f)lCu%Ey96!Ne<&{MC~oTD;7yKu{?o_eadrTnC#d zpjg^mg%O?jq#d{e+NNnG&MGV+9#nr6cdo6y-@bd8VBdc|YMzs|aIx&w`hFBGw%#;9 zyqvXoyH9)&0Pnllhqve4JWM&AV=|q4y>TwFkHpBdjiab$Y$pEOr-A+AebLYykMF z?}YyV(ElzVJ1YR^_Wy5~PxTkD4ZcPlrGkyg-Fb&x(A1O!|(F{goWE* zT?;4mJO27dIJ5?DFV^pKohelx+rI^@lM znp>5cC4U3BdAdEE^^K`H;B@VIZy;Tor;-dfRpMj(J@d>0S#Eh~M7wAVEyo1Pl zs7Ccrt^53u{T-4@WhvLQ$#rDk(|$DaM8QnnR{qxv5|`IreyxAP!TFv9XyPJU^=zp| z&6cg^R!?cD;R~x)%xKI5@MYRR`!IX%iAXNncHH#VA9;$ezx}IV?~YQSy!8~}UN!mO z%zolQ(i;aOD$fSljn-yaBR%{6o6lj`jQywID|@;5^LMj5_d*eq$*7&jH0D>Z`f&5Z zJ|ix6N}6NbiK~hH(*3sqvabtli12*)piQD8H;A!<#nc~ulzTu-1!=hMa2MK0QtS_* zF2MLIf~%VKhNr(AL;3bv!{cB0>YYd3v+Q3#q_?IpyG6>%43OtQyN;FVnUYLoJx+AQ z8gcJ+veew(Q=2#cEhE!miDWu+Tt9vsa~hl24;{z7`lv`d{+g*1GyQ&0sMB?9QkB%i z8x6H-cVm$%{})On?dcABy4$`;{;(lu_`$zFcA;UNA{2ODKwYREsCxO?{{`qA7vpk0 zU@|aymmY*j?$3r;nCLjY>>QZNayMuLK0Ly9Lg>di{ioIsUXbl3Q=alX`6RS}2?}9@ zgelE)B?0GnpF%qp{?JHo(YxQ)Z2tfgjY3cm)nd*$`37|OJaOkdAB(%V@f-E{ z@Nsa%Bko|xi~{Lzzp2mlb~Pqx);4&Y&$#M3U4-sfLVK1Ef^O*`Uvs~t>cE6}V!=zH z9rqXlZw&SAnX%L*alrf*=#Rd?gwiZOKCNv>--(sf$3Gn)np|OXWN`5u1oBBZ`I4ZCsxhfJ9;C$=z^q z6Z+m`gPq%%EweEDW)H3|$!B`Zf4&L!%UIte-tJCjOM)<>av8<$lJUmJL=PWR)K?Y< zBf0P3epX}Us&y)3#OcW6XM{Az$h|Es7CbiZf&0?57|s*Q+DpKNiX!)ZkAoAdG7i$1 zOtf&u)4Oh7Cuh{jnC~=+g0~uVe#~xq`(G@0Y;pJcbM0LHO^M&Ys;%LL(byKM0Rh6_Y&R89Sp8(>k4VAxGz3}@7> z+tvtrVL&nUWaYG(5D9D_9-E42$uc#A+cL=KxGx!Kak|C9(Vlu;KZBdExqi{Vb_Jua z0#`&?+FwiY$UG8#cpYuf@zdPP2RnA@KgFW`Uqo};4)rc;^*bqtZu$wQtkK*U@LSAW zM>CTvp_BY8Ke`!xzZ~Bor10TBss8}+4;M|}@pEiv8Rc=sgYZwDSq2TLjfvLD7I^#S z;fNS-zX&g{ku9;3&sSuKL?sLn(k$44Bfs!gRsR6blIBAu4kx|{(G7s&L1;zfXZFXK zSH-|twID$uz??&zb@ANsa9z7|O!qQ(n+#x*arKA~lE+CIm*)N?PE5ftONRK@ZXI0B zR^_B8-KE98Nmr@n;2~`^ljldaFG4pQ8%uFIou;|WjjUCHmsc1wpdyDR$5UEOT6^~n zrf=1$cR8Ej)1SHhJ`2;`-(S6$Y6dwrke^Y$!65?D?H|*9Ga=o$1d-05gy(Nr>kq_y zhiAtDU3?kE#g^G*!V3u!vP$)GyKFMt3PE?-V7+Cbraz2Z_;-I7ci8|r(>TZO;_eO3 zZi|*{W-|6SAZuKJSGQr%E__A2VuDtmb8TmxfK!;ZHb4HtePlh1$~~bB<~itP4UeUd z1-k>6ZmnbC&hfu8XXUtC=0gp&o*g8@9kjUkhBAar$ya$XHji^)(k?OzwY) z?YF4CCx3#H#ukuc>-}9L+Q1#%YOsUjcxlR1UnM@ zdbmec%P)YPSX_7>LDWgnKD62_#gU3UI6X$-uupI`W>{l8i=0cTFaxVR?b{*^Q=lI3 zmWK%S9}C>r4%dIEiF7O5{M+28SP%Cx4kPtCzw3p@kXgk=wD;~R1&@1@<-whIJ>3oG zyMknU+b?6$1!bmC<(atH-1q{^-HPH*0$+Hes?Wlak5A8My4|3URq2_?1}vCPw|ll( zn#n`$<1DgNFAbH#b71|-cjJ=x1FdbnPWm$q-fN$M;PrI!TshPe0$tK~n`3(-N7(oE zXmvk9Va@h_p|_$>*%0KRp6r=|9GyPA85yK15(w?tp&Z_4o4WLwb{IOFIRn%il3-dH zE=&fVndHy+aU_#$HZ6meKf&kR-M%BBu8MT6y(x8UKUsds+Od}!?@}Jv+~tuWwydTx2-M_2+TP%L#A@I+bw~c|m@biU=-jGiI z(Q#~#Mr>>U02x*YbF-2n)rm4dJtxtYl&NBV;k!BX8@wk?ri^6F?uJKSCMF_^p!!q;|R4mk>7kk;LqewJJ9 zLy^_M>n%qw+r7I0ziqLQqo{G}db-oHjgPrUb|D3rIaqOmaWg&!L&t&OWQmak^&SRa zIvE)fX3uksmRmgBi!ygG#N*Y<$viM8gf1t*c)^e?wk?s;928fv@c1k|aIxwY1GiGw zs9bP6ZcT=Hx>xGN-?CLA9n!7l zPF)&xH%_gS;DZB+%$uYvu};jFe1utNgo(XY>THHgE!=T$H@S0Zvk%lDUZj*xG|uwN zo0~imJTOTS<&VU&-yvtQobKnmxrdlhx!gU-10KAz@-Vbz0p~AHBgjO{ zEV3s#*AR^f>ft=hb8wAA%y$z(Iqu(6dx#5oSWc-5;&@!^UpZx#77!jc#@hv!S!70M z$09rr$7UuOHFYLWf+09xenO@Of>qJ~!czLF0ZWfUXOOrf$iySp*i0dT;9fB+DVhsRDz98{P5Y#1?!5 zNz`25H?D8$HVH7uRrfjv z7HzY;ER3~}RKXfI*>U*hgXp-<9^!~}B;f(eGdZoM4Dk8tF_Cc=&&zVw5f0O*0h0_F zUeha`N;aOL_diaM>}@B1H^5mE+rB!pEZZ_;$obzpJ`%y{mV3KJ;ItZxh|VPNLufcG z3@3h|XI??Ks7F{#lAIYMizJ@|4e=Rm-^95&r|G-RxIJad&mQjXt~osyJO{qvbN({T zF;709K#2}h?bqXR<_I=W$~8fs5>xW^G~iP z_s!S4ht2GVJVl88ejlZS#P!1J4a?ZvZZ-{^11=KbbJf1ANtVMPcN&yHxjI@b z2p+jDMUlHR6a%-VVEMSi*}uE>?&H<|e2WjA_!H-2C&S}>WToU-aYS&!9I-5TCAP~i zqIIvvIP9kbBPK@{7y)5%4mfPavahm3%$n`Y9k{8G;UQ+8A`ZsYh@3!Fkxr!wovUzN zL5${+pHBz_H0H}bZSYT>@c4WWksnCZ7Y*C7%WggcBpwL?L7jd#rp(qVV{%7^)POmi zaGg7krJmEm(QcN67)Umwh}+cjVg%qNTukgCw4rLcHb~6c&9D7$&vsc5SQ8B!;4GgB1-4mdjGqH9kbG)lC8))pkB*-0<~+QVMAe4mmk{H`V)H*p zM{&XvBbBcY47p$ni#@b|qD!c)Q&ji+x1xACWCRF{O5lc?+?`zE;PhqGv#&XHq$j=e zmfPULXO;4KWsq20uI3}iHhyUG@xPZWo;JzE?KZD5mLF2=&S?v{!)E)*J2--fuW2**9jLTkW^34Bo+$$B4oQYe!NYz{@{up3Nb~vta1+ahF!fsQ~hpS!LXD zd!G%yL_QhgHR4xHGx%69al0kM#lE>LxaF(VV>C)+*K&P>BPj9rTKG}oT+S>U;vQ=x z0@hl0CnJ`&?VwtEiuVTGWti;ZX<-eYie-m^$AE%QJx4dW@WV4~TWy)LA4-7>6F)&?A(OoZoJ#^6I*y_#gko03{It0RaF500II60|5a60000101*%&F(5%OQ9xl(U~z$w zq5s+d2mu2D0Y4D`01p2Es6Xs@*zwiB>0@%s6^jV|2|wjU!L6RSC$R?g#@YV>L?ANT z9*za|9izKG)?efd9u4O|f#^wP5S$=EeN6K6xb=E}j{?oSb|YQ<<6N>bUGfhJAc(eD zd$&m^$NU~QcK$7T%XnVc@y-M$C*^xdcD4pLc_MX|19IQCTEiHKZolBcO5l&-=wfh3 z3mkBUzcg_#2!hrJqduu@83=+`5aH@S%JSWeocIH63oYfNgA3o8n+SxG3mx4UX?rF& z-{kd$!U%5w@3D6#1zYakuQ$KuaFRk!NtA4{l5!xkwh|iox-Lp!$a9RIU0sHLLw063 zMdR6M_V(S3GDl}`H^1cV7D={ZU>WPHU{yN8V__H&Y_sQrU4quYZ5|2}B-NSpZ$t6= zH%c^Zx=j zSg>pQ{JQKT%L_rpx}D&DgYD4)Y5bv2He;eGCrrL=qGVwm$-P?+>=HXNa_NMzhtJGz zl17Hw9^usabROWh+S`6_5j~NgksC>wp=e~W!lCd0()?il-GJsn%KdWG!6U`0n`+1D7|325Ms{*vm1 zj^O_Q&NwQ+Yj}7Ms1wRQ`d8P(I6oI(sn5tZ{R<`)Hh71rE+Y5mk79G$S)7Ti@-qm) zC-f!teHZ`{oexe3V@snK+p0;J`v=+T12d_B`2aC_U9f(J(-y{g_1CLMP~W5oG^~N= z%OY=w!?T^?KNjWOi`Xao{CaDG+C5#H#%Clw_XAV+8#CR5d}pmE{D#6av#h+IEMW9QhW5)W`;`pS_21VI#r#K6-^{>b zQF*t#zR0^j9nPj~!`)t|WgeDEL8a73+r)U^MEN2M`kWXPuA2sR6wnlck}&ldLgacE zVs|$U`vSkK7bm37kDz_OAFI(FyBQ`#-aVhD?>e#f?+?iMvmRe@)$EpXmdHU0bnf0j z?d_ST#CSk6VqTlF&JDK3j$tR3{>pkuIq7&Cbg_u;2%u+M?nn}LGH|fe8Fh*5cEkSw zTLjLT_mUlcIJ}p3Gl=TJ*{h2rR>|ooy+x2w# z4<46whf#v=HkHyCka?GGVeI?)exuHJuHpMOe(;u&V24o8mfQPj^=t3uHn9na4+vDZ zsu#2iIK98LkFM|QA>Oj=AnUEihtEKh{v`7*&OrYFcAJE#1B9dT++(Go3nFSQlq2_K zoD1y_c^ALS^?h4x_GD*OmN#sB>zIjVVda;wFtg?dJ=*;+x9#w4I)$IG;7*A%!V9a@ zD)`~izY8-yI~c*RbcW0e5RRqtWvd~lE0Fqehty!tY)igLt!6|WUH(_qy>cY#_U|C> z4TQK`RlMo;%McOAId~%{czWQBI^x1e!aTFYVTX*2D%f?_pVZrOBkXIe{{YzBGxwhZ zUnbCKuw)CvBpovQ0#%mE!zhhLN}jibnTGY(^Zicn;aC=L7e(7$+pe>p9DYm$i9PXf zESbT8+~nJvZjAlJxf!wnSU{GCknrwZo7LKeaE{J#hdf>I^(bV?St7zh*fSKq_K?Pn zwdpeKG``{7Kfncjv9Uar1XWmAbGF)ktt}r8HCY|IEn=W`o!QGYZj_lCSWImiTaqn= ziiO{)Mqje*K&Av20@mLr^(GQ9zTWpv=15@5aKMAf1AK!3Y$t;2^$XB|TG|b}J>c%F zv*+A#-|wE+ue-K=V1oYuk$%mh*!$(4Hb=%mFyFESudo)LL48Pm_l{35S^XgJ zZReQ>)%JF}#=EzivdbgEFTz{d?@t@Y7%zpI>%)!6%Ldi%)Pu9(mT<-6F1NJ9`>`ZT za6hwyU)`d6*+4=&$J6YyRxh}u?@|^dW9rpqHqkMS=Al4&B0*=a!}p(av}2-C;>Sm# zIz`e}mTS7eC^)mzoz52ci3 zUrV!%jF+CKV};wlrcL#-LB+f_<-5ko!j3Tr?j8hvj8CC?l9(=mi@}P-_dQI$;DcIw zh&5>#!G+o#JKgSNit2X}#$vD$5yni+StMx_OJ~1tNH0Ps(Pvj@k^S0mOATRi9_PUF-i!eBnPO5 z;}I898>rla%>+HBpEEaZvOxvo}uGomz?2U*ujj1>TghF^O?r~ z0OjMtb@pQG*$`Z1k^#Zpld?Nl^T>;>nJXk%4+K1BTW=dDAw5fP$903+&QN1EPnagEeWbCy|eAtjS;+0I!6*}`=oJ=to;8V#CB z2~>G7!w)WtOTv5ji*FljHkr22nbb|3Zdvdb)qjX)sx3^8XfO|#s&EwwN`^CBCnyZR9cn_X%}l z__@7L9W0~oj-zhNU1xA%JR}HD?7ySO?&*-I!oJB!{s6r*RYDe3{1E z%iZT2#`1XEWrjvtUe0#9iZ^2rZH_gII<>R)Y8JziAA}rpeP2<=+jdC0g#4ebnfgKi zcy-Z+VbcEqjlcHX`pxq9>vP#t?#1wr-_Z4FW7!eEqxB`IC%s3mb}^3jAQvh?u#Ps~ zH;%5qER_bCQ>5puC^*%`p?vBvAmW3F`B$aeB)WBH%8*zNr@owHVJNx$4* z(jEKV_Ve#QQ@^Ws*4u!6C(Q8r!W-Lso{@YbH}4xoy_n+jjj}0sjDA#f5Dqt$6Ozd!0y{cgB1c*kgl?w%&K(vRP%4apWV* zKVdB`F%J>A-*;DE0!LwOJhDFu{@@?Iqr2MNm}v?0=6GA4nZB?M(X1esc7I8lJ|9i8 z(%dkF_#Xmz6GllWA|o$9Ub;9 zUbxt2TWH$}KqQ;MNTtCuHQRW2EwkaAHd;J`;Jd_*q<2lu$xTJ!-JI>V+w%J3sSk!s zaF$s;O$LxXv}ezN*=42be;9E#st9<44{lAfZ%n&>?>TtRcFQ=;vIq4V$58BdcKKjh zZ&9PUGACPmWc1{C+ikb!)z`znm~DY!EynVea9Q^LO(B*kO|7BpbvkXfV79~Ik(R^0 zPlOS#V;mrS7H!*ymf67zi7h7g(=UmotG=5s_r3sqnc$h61A<|eV{MX4AmYrH+boA{ zgS@`S@{amgeS2ZrT6#fraz6q10em=PX^8;3&fv-JIxX2lfWNeCg@fs_pKg2Z*RL@> zEtieE;B2xkTw1jdtyrsmhTyD;+NfX({v)uFC3+} zOKqO`IO%zNz{xNvIx~PC{hl*xeeir_?~kq? RN#%+7AA`dj93DS||JhW%g#G{k literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/c3.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/c3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d16698f4215dbb4930774e30720f3fc44c11a08c GIT binary patch literal 61877 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


VPOd(~SVHa5N3>adSQU@JqHJ!S{vVD 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 ly1QXSbX)glp@p$MAx=1ZYYj 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 D!5whQ literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/c4.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/c4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f1b158fe155df83418a9a4f315802908fbff5965 GIT binary patch literal 38884 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 NzkMcq5chlb{{Ssb&qV+L literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/c5.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/c5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..75682d74b3999774d68b5b8164ae652335f56783 GIT binary patch literal 49170 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�|I++S9Du{UhZ^zvvrkq{a&`$=DR%N$A$FZ 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 QG#X*FDSRPc@^|t71FlN#O8@`> literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/c6.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/c6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3448035acb3818fa640adf432161d2f957dcbbc1 GIT binary patch literal 74724 zcmbrm1ymi+*67&>cZc8*+zIaP9^BpC-6aq_xVyVca0u@1uE9faAO7Ec@4I(qt@mcu zo9aH@zq6~VyLy*&)vh|{effPGK#>-g5(hva5Fq)n0q?sA8d4%6`d^h4#HD1#K0E*b zK~mPz&K?W}0Br4CoRlPli8VB}h@mF|FaQ>S0+;~6(Ae2QPFY+9_;6BUBE-%gf&Srt zySqi;<4OQ9M=$x6nE2oF|4)Q!?BL`A0HCiQp;=5!osB;@y zk3#?3{l5nI?~wm%_>cQB{Bytm)*Z2^shOdxjSKNVN;S5(v3GSMc6Kl{HYKM2e-`5Z z z0%!tyfH7bJ*aA*~JKzHZ0--=8@B>H!(t#YH5GVtxfqI|?=m2_wL0}A+1{Q!dU>i69 zPJutb9q|0okU@hGLFgbH5D|zRLOen1y`T}$3}^+k13Cu%1wDa*gCT%nfDwREfH8t`f(e1ifT@7#f|-Lkf_Z_3 zfW?5Ng5`r%f;EHnf{lSKfNg`Fg581x;PBvB;Ge~rA z!K=aBz=y!+z_-EAz#k!?AkZO*A?P7^AS5AFA&em$A^aesAkra9A(|ojA?6@s!7IXB!Uw>o!q>tN!|%X9BA_AAAc!F7Ah;sLAe12VAgmx3NXgmR0Dj>?3pfNF~xg<6g}g8CZ`8jS)?49x^B1g!w=7up^= zI65i12)Z$PFnS^S0Qvz26b2=R6owT>Bt{j+B*q_1G)z`ZHB1l849rf-&0mF|~8kWrRN zm)Vu2k#&-7lLM2JmP?RZmnWCElW$P~6r>aq6gIw6es%oXt_Y?0RWU>HP>D&&M`=hI zU0GkbT=`B#SS40vO_fU3RkcqISxrZ+OzmD>R6SmOTZ2)sy+~CDf!7$(O)=0`I)98<} zh;fSXsfnOTqRFu-pJ}}5kr|&^yxDJaKJx_gV+#R`WQ#LP5zBPTD=SH>9IJb41?v*) zcN=w^8e14!1KXc=Xm-|i{q}_R9`-X1v<{&T+m76hNsfPGk zeg35WA^rye5&@-waDmo=6G2~s;)8C2)q~qY2toov_P$Acs|ZC3bqZYy;|a_84)NXc z`(!vvcv|>dgh|9`kpD(x@h zC@U++FORJNt8lG2uGFcVt`eK5x|>iZfv8>$=08#9~G znG<4{(TUj^+XdGZ()Hf$)qUIJ&~w&n z-n-YQ-?#Ql|@R2Y~xK6Y!gkB z?32w?98;~+T+?kcyfa<10<*nyqH}}uQuAXA@(VMIs*B4@I!oKjCd*Y=F}PWPSnUk*YJ5f77(h>psBGym>5 z7C)Xo(LOmibvS)K3q40Y&%B_zXuK4>9RH*7=itie>iuujHO_U(4eL$c?bqAQJKMYG z`-lgehtfyR$Dt?nr=w^07wDJNSL)ZcH<`EfciZ>(_cb5{00RdHhX99wgoOBbbwNSF zz(7O8z#ziHeQb#62uKJYJ31-`D)PsN5E~N{n~;kx(!oFjxTYeHDQDm(Q)4&~=Oa zC(X8sKP7%AbjR{W=5#u*_vZlBD?5-wnxGg>Rsj5T!Ih7PNAF zMKjdUDuQ{>0+viAb4J=(&+OO~7AapA^2UlX={HQ1F7mUUscQH%=iWFqu#PS`PnQZf z5loLvDH23%CN*&Jvx;9;GF_B!B^E8N&*drBSR*~%G1m)5s0qy6YZ7Ks?YN|ii zYVy{Oyb~;MloFp=DH4as)r7M0Vs7tH@GK}i+-Hb?JkKEGbV};>O=9Y*swv99K08kh z56rLgwCWcvUT(E)Sax|C=Xor1f0~WctdpK+N%gZusDVVDfz2EtLFD~2b?m3<6Sfgz zYPcTd%Zgdo&akckwUU$>)1`ZQFo<=k0eukIz_Xuyt2I9UAf!N z<8-D&*G_H-jfI^$#j0Wout#RGxiDJL`0HV?p|Zy<+pn-HP;djrcK^V_{RB?V_w@TA6eA$wp`a>qMxn=`5) z{Z%5xsdJs@qJ4q1A}QW|f)s?ENL?UC>Wh3F$gCu`WQZL0L=gI^LpqX$GomB%U`3KY zYvHZt2@;h>dWPUlaaZa##u=G3+l5eW9_Q%uxtE~5yXR#s*=EhSoEdG&Xmtw%>G0q2 zz)e##7CP*C_BGSz633)O*QK8C?|^2Vo^rSN*ZMBwstE}euitgY3Z)rb*YkSslf6yFOpGKIgO*&tzETXMWSgzoAGx^;vZh`-cc zHTflCk@A83J3zHp=&&`uJ_W-bTr|z#z*OX~`Wos?{5m^|e8q1)-#gq@H<7MNT6{4O zALtS8nthROt2HmKp3!27dDQiMnIP0|7UfK^Nx?u|gh{^ER!;i2L-cVg*=B{#1W}$_ zOAT)9WU6I~jG*12e9QAZ9D&wR&upPa3U9>i&MnrL#U;n=^H3{|og&)B&8%8eyYD^9 zZ!W)L>RK%WEAj^}2JXAF^pg?@?mq`Q@%+{FzlL-X{eF8vk`f>PYJsPryS|~h)&eXU zQiS^@sL^2LxGoA~ECztI6RN@co9cyI(crC|uEM_0raz6%)m)(mN$R2ie>%WYzFBGl}|@@?QgloU7unq6L== z`3H(U+Yl5~1FHCL6Q;WjZGH6w;(WKxO5>+~n)6JVc#*C}%$Hw2@j)S+;rIm zY9SMTh)eA|OVrd6Z&RbU`gN&pVj1m5mD${7YF{6R9DmkQm5yfRITt(!OFW9^6N!NI zfld#3y9R;v_)M;BdE4=qRYG|I0o_ZtRLgC3G^9u|ZdWHA0qL=(I(i5@;gA_m7M}i& zCzbX~if}QcbCQB(@y-a<4ZYn!!!i5z>j@0UEE5xMeOhDb86cY}^-OAd>^@4@oD{C| zbEqDL1v7u`CTo+At&t=p{}esERh`3inbfOZi z;5@{)7J2=9w2p&9q*{5OsK2gcD9%mwp#4sfJr0?12H<4LNMLc^uXrmpT68m{4kW;EqLoW8&yx13w}|wk3W^MnbmF5os;itQANO zS|Ae+OWd0G>qVU3Z#jn51bXLBwf|Wl{4-M_^V599um6c%O@)yX4q|1w`XCb-J2+}IdA8~3` z>;)PnwKr#1?ez zTtVw<@ro48C)C_W2~6H!+}CzR_M%C9NxOYBHb+PPG~rksh_c5WQjb+;m4rLkZcSOQ zH2Lgyz|K?$S|rdIa?L7LW1CNbjTXfKsXq0mXvSzTVyfh!(7Q;-`7GH-rI84QLl{uylp;1I?e-q1WTF2R;t zL2{Lg&v8Xoc5K&U@?@qu?`p@&XdM`R)-I0XDszy%21RFsl2|jo>K*ZV>&D$rn7_yy7P-WHLPUDMFi*Vi7$2<`+y1b}8qXaHJ9OdXCn7_+z zH(Vu;5{-G3%3st@6iaqcvAhtDPz#2E1;foUgEJ`i#GSS+y@7#hHW7s>&+wu^YZfH- zz!6ZjV~opsEjWrvq6a(89lP7?up)YEK-E}JAzO8fM{ZL+n`Mw~!8YdU_gG#T?sT z%x3zNbTRN)!}B7kA*!JB_j*<9Izr86u4WzNp0z+>)0{*eTdC;0)wJXIwUivl#7M#*=@$jy{Q)}G*3*OzEu@jB{e@GTY7lqQZv~=AVKiZ z2d5{^Xwj4Mhl_X-ex0-W4!$Q%t3-G;zku5Ml+BL%-L|CtW^A0LINZ(>^XIs*55a+6jX_N91-hn{bZm*(9i?7R$pm!+JMD7$U>z7v{X9fK<`&+{-&m zBCZ%B@~oRCK|O9$@YH&&Z;QBCqa@V?euS?sum`%@ig;>vta5wxUrl(EHFpE>S9p)R5~1o4?ON~Vj7oc$R5`E(jNX*0J; zugd>c&dGd8u9b>u`ppc2lSu`!gO(0|P_f01>2z8oTCB876K5X#_j-YK6H3n(k$J5= ztE*PZ^7?+hAE6zPC1*6o-3(A> zJe<-S$V1h#lty`#Iorq(_v|sy;q#tTAWAz@^7Z_?9xC9m*}1j(E|md293}8a4_>?c1fnF_QoVg%( zV=)w|65~tuJB&S%afxKReM(wtJ{dP2aNdJAp*O+2n671iUc))f01puf(OQ z(th^ffAns!zlVv&v5Zd1^a|Z5>1o*s{faGMW*~#k8M7P!WS;U-D>O4aVSl`^tJNg1 z0t)oMom^iF$n%}xnx59!BHVWoRz0CX)3!VM>QSoPuI#~qHBCx6bx?WBkuA_A*YOk9 z`9hfS4Hg1=qMR%&aW0--R|>xlCuA%peok*tJ*qi~$dcy0a&Rb_ZP(kHJ8Ov<(L8@* zW}1UeGc0UU>i<6Kx$d)|m8Vj^|MH|$rQeytI`G(K*p#|&P9|<&;X&=G=~S;e@#r)u9ertz3JFvF>qI~-kEokfTS z6LX=~DV=Uf9klmoR&Ff5F!s5{oU0X>E_?YfhqUL^hIY8Mi(o`;#Cw^}CDHDz@m+UH zFQi003SITZ9T}24qd4HGeJj!91Ua6D_X|Y9;vDS+bdABseUF$w0KVnc0h9#mtvT=|jUu_O3|3rfj)<^5kcMnrU=w7@M=3R)Fu2Ix_>#SC)DAqAcE* zYwtpq6LL4g20k|JYIQM((_3k0FPj`zn6(Uj3u*?Zp%ft{;81*(cf0cxOc5Wa`pOyI zS=f%nt}rR=+r^2R+GI#~f?wF9^U0Uj;HD%mrTWEPn{Seg{66d0+NR}+ClevTGQ~nO zgRe`PA)X0tU#}6{=W_%vs%f$bLXd%nS1<%m|J!WXC1{?U54#Tm=)>;wF=g~`yALE7 zI0O_l2!Mh8FSE}-liolLZTP)U4mnn=_l7pgep|68K|5=mjAh%x9}HvI@1%$K`mT>i zw7-sQ*vY*&!w%P7d1YxcnaH%=%l|&lUmwV~J;yLc!(`-bNimk;p1F1&p~Lm1)~|&T zc78ckgPYspmL?Vr#Hpvji1hnjR-`_YSCNczVD3uE%~~; z02SAEGWd=mUvF~3n-d3Yu7XUKJ&k~^olAw> zU^cPt6VoFc#c_+eR^$(*@+JG$8xN$zAVcdA!*Ac&5zrw`)_f8nO`G>`Fbg}>{`Rj& z`4kBroSrp%YEIa@_xBV>V$h7c_F)w{Ck-y|4A2ELWr@f?Nc0Og`Zw@SSuW{4u))Ql zs*QOe<7@rYkQG`yN|vUTQBX;G`IO)*bQ_;~6YKcBwFtto6R!8`+ScDrEhAuW5t^bo zn{-_{hsG!Fu4Im$J?tfP-;`@u(p-PGvBh&!jYPRl&9BeP#FaDFQL!F*>T>!#0xrvY zT_q}mMNTKH=dg%g-Wg-G%=P6^;J0gTVi`lj@3Qbm*C$`oJfa422KrpjXuiN?U6;5T z=Be>S!+^5eoaURLg39`50&En~3wLh6Jlz~>*C2`_Gw@)G$$=kop`Wgl#j8MvdKT{I z8fX5_oTkIqjfl9F+`dHc-4|2p4|}K?*rupAHZF3yVCQbzDGg&WzUjsO$f_iS2RU=r zo{jH7epTl;`c|ZHJeJxUjXdD1{``4BR(h2u>Tug1 zM>|3Nfc#oi+bIbIlXe3Ud)7qTc=t27qzOf?WZ-hiTs!>FzFtH zXVGx*d8_s`#O7BK(LhK=P3##iX7a_2zRgA*n6Xg1WVhW{>x1)AvB`TXJWBGusiCyb zaKv|{BWaY;!ex+k(sb*szTo!%Y6Jl2|7-(*4=eMB^%weoHUi-PGy?HRJB$u+alRWH z#K&ohfG?v$oS536J2dklwFH&^ccmWzkQ%oZ7Z*;ipQTzH4;nJSiuZ$mlA?@R;43BO z^=(i8iH;nTVb`oDPTQ~8F8k?fu02Q%%dBl>K^8$>LP`^ZoadCl!2J;h@_#RiYz)&Zi2`0Fz z^qPsab@j|icjF&7=`oTKGL;Snbxbiat1tPJDkzd^lG+5CSaXJB zn*NN4=hz`7t-~U#IrdH*YG@mlWr-1s*$UITsY5KEopo=D1$nOZ@bMJRSd;U`j@dY! zpQBjZp(PqFTDnxT%|i;=zeK^|YGF6AcbB<>Mk#j0_q9dUNFow~R;@~KP6xv6su$)1 zf~nH}lpeBn;_nL{5T{6H7tf)(s9^F2cghbQe={Q-iew`^I@0{bZffSooJn2c*k#Vf z;NpViutQHX|LBsEdqCeW|EkGDWp0^Ur>Gti87?P77pU?gLHo(JT@99nNuA$NR5aK+ zGtQM^j{Zk%tWEs-c5sae{gH9OHwW*V1$%0aI6Z|q&!wq-IGN1!3lr6e{W!hc@rsz~ zNVo%j@kmn}Q8)jhv})(fSzqeoyd!(=@CZWc8nH z{iowy<<66wM)E}^UV0+5XK{*2TSp0`M#dW|CA#R0S2K%3G}uT_tGvZ$Oec=I<-FQSqNrOqqcOL}r6YdQW>G9@ zPbJvJ(i|iD2hu_r280$yS}kOeLyA@Pz#J>+)IY z!i%*|LGa7JG-%u#x=p&CFO(#xRc@ot@A3V$wM_(?1GtNfn2RHyEyv%d3_tKJM! zVfNbbf}ga4!k&pj=H}Fo+SD}ms=}gZF-Cd_gmnUAVYb#Yhbr}q`@$mc1G%4}Hfg$} zs)VB&lm)odMINK)WR0Up@@FApyWtXA%D0K`CDoYzDajE8inOB9I;7T$xJi0tgm+iO z6KmfHTUFWR5+0ckDv)6G% zQg|2^*Tfxr(Ij6s7MRBISLd3*;# zrhKcy8bfktKO;e8jKP04>w<<%Qh)J?>9I59r=xoZ$kX?`+3foK?3(G9+VV;3i-yhQ9BKII!h~O0}5#pP~UJY z&@}LQp?RDZPMy%0^onT^tAQjdM5U@Oul3E3L6fWw;HjL zC8i?QMerB)?fCFE6l_)ZB%dqOo+iIBDJ8P8+)?df20P}NZ&UUX&7eX&FWNgW#KlEu zOk(i!<$S3=;$#_tanqCm+eT1oUqa7U*R`NVD;BPYW!xhZ?rBf!H%V{QVP~vW3i_8e zXIi+(c9}Pw>!}kbAMeM^s3^3fD@W~mIqCjkQzLCmlrym5NzZ}dEYu2X9XHtTRfNX9 z2lO^#&6Y6EX2>lyf``#Of7J%H+pE;p;oNb~?!DUw9hXXKN^s~izSW^!aoIh$uoxAs z;aRTEyah6bA5G479sC$LZ7zk9mUFXCRQR6F5`|E#NMn3O=aEr=M zv8DrEa=Y>kYt=W7D~KfkG%^%eA3idmrHvAzQnw)P?QBodFEG{2^Z z(qg!8kLPOic%7&CDLju}C4Y`Al?oj8`E|E!4Nd&LdkVijyy9%F;I=XkEm1Be|4}1&A99{QbOu4djWzeG-x!mPNmX+B{FcqHkg#$y zQotzIu%anW$c{BT)br_c&Qv=o>9s|wOEs@{LOjK1bwf!@nywbq7QVEPVV%|xzT*(S z{~&2hhu@BA?K>cEyTGm%?M`Grm%})9alad87~3|;472P>M)w<9wR>{)bzS}OcTlZq zCKlBef2lk~xi_(JPaEa@rIT6vst*_?anued-I$w-1P%Zm!+SBpg z#`R!(=%%8VpMd$?(8SipteV`!VS;LB4jCtql9V4Tnx42q zqLQl&K14;t6ry%6yW*v6GahmXAfn0DZ=&o`tqWvm|Ve9GqiPldj0&mnN8LK zXJ2pIKzO{I>n7Oo<}JsGkO>xaG!b80KBSSV4h06i@Oe=JgAmD^?Ow-Rx~X~6wLgDh z^Y7;F26+>q+ud_#=0jH4+;Iei>ju+bx2Lw3&9}cO9Y@4AMUGBC$z9qOq<@QxJ2K1R zhhq(ehozG{J9yEO_8+0csEF2{({xzSORlm(3<=Vvu|EJj_^QlL;Aw4Id+SFOsgG(YvK+?KE%Ue09qr#!N_13d*=i{PHQ9S|* zS(d6S)>#rE+s}cFi-U`Xp<(v-Yb|5%%pv`P)ZrJ!utdkR<+A!@xH)Csz~_1MddS8g zWXRHt<#UKdp!sGl&{ptb*ZgHz)L=Nxl&!Y#DqvyM&t4`h2wg`)k?06TpzL~FDfyL% zOE^mXiC9xVxB}xHnEGg^URDwyaQ>t%S%48OW?kN2{b0S72*uB$q~a zmTE3fkAG+Q@)7T;lDyc!velTj)hb%izXJt$T+8o35gyf=e+3@%3g&g4fdxB!i|hU# zbOrsar2_Af>cdgyq2%ard^UMJ0r$=C9a9(bFs-iY!zMz`)4A{~E)K4U1aorXdy3XK z2DWp#1)a!u;P~|&_${{5e&@@7vEk(%YdAali~APmv2eA*HaKkaLF63CPI1w$g3Jqb=iY`o<=jM%qrR)o`l*h=Fod`H8L% z0~fyIDhdy9H-D|WVou#o9<`ae9^;85k@&>ISHh;+rgfzup<V$=XD;Qts*_F=l4UZj&^p&@ zJ&Br^JlaB_sGaZD>s!F1;WDOk|6`5O=$?JW!YX_7L3H?bMbyRTxb(HH@^hCrGmS$cEn__=r){Zg zMn0)<^TON6%5*i7hQZ0MEw4viZ*V6@E!ChgAgO1aejvU7q>UL@3tsR`pfr6U#`NCK8O^Ji?2HTg4~o2=j7TZn&2Q=PKe z<)f>A&N~2aQ6-5P$97`$tw1tLYQv^3F)ukuX))nZ-emQdgLTDmKH!TFf(;!-{YjPl zl&07(d@Y1}Uh9m<>iJJnzpUXQKIxOma$cE0#Y_?DSBdHh{#LGd5bxHb7{Xq*vL*i> zZjzshAQSxZ>>5j4VO>6DX>H>jKF*GjGnSb^0Q5ys|2|R?8s9swa))wcl?nTPmKb}m6B5> z6_oO#M4r`)+x9mC|PEGqm@g?QU0Ly@cTCrOd3{unG#mmhQ-zKRCb z%)J~dt7c}7XLX(|9Cn8_SjVX`e8Mq>+IXrWi&h44vLjTkJC8Qx`6J9+&cDAE@ge;6 z92J}}4=OtQK}cA>;BSKy!}*=g`EbCd)=X57YaqX?^mP4=X|+51jg&2-&ZxndFMje) z-*Yvhvi@{%5>8YZHg+8CyChQAuErRZkx_&If1G-;qjcc)Q0NL@<=NZAGSsv^$a96y zZNlrO_UTDPk2`Mu<`ewG80Muvy@_BG$+tnd5*?K^4eMmgjp%T71szk1*rm2Hw&0If z;Xxu;ku;=Grc3POHKn~F%VU%b1k0MQ+sSFJP0w7#{#YO$i@FhIJP)Gw?F}==OXJBz z?x`DjI&SMed)!I$GspI8yR-=v6iXdQO!rI^jJ+P z5MeK>n}jsk%vjla2)T-llEI*`pT$6sb&lD@Lu0%pf-4m_q>3`iK<4 zOlk!< z+<)69FzsX`q|My0h)~m4;9fmnM8zFMhVWTPiJyBtNZViG{Y$xv+p8O4L?ZL*>k%#PS+~(HGs+{0c-3laAQKgrvteuH z(&p4?EBP2y^~W)_W7&T4-fRk}WU#0A*ORJx*`C)5{Wd5QSFD8R**zz|*C=rOR6L$l z5%m_7bG={{88K_KT2ODxx8O}SxJsY$)UDr6fs$HqRj=W@5YO&tcyfD9CdR_m|el2DOnh8up}IF{SM@MtLYzAXkZbC*i18>uQZ>1 zbmo;G+qhd}(b(@)IjUWPY*<{)t=V5kyVVVfUYZusLrc_PXlq4f(x^$esM9i#ETO21 zSrm77T&=8^qoQIrPbPdlW~051wb$iO8!eY!o^DCCK7mQnU{S@Nor^pfuF&Jf9^I~T z62UZzKerPk8mTT!lANCI)nKx_xREH5=#E!+HRiRjbbHdJQO9>|eu1esmfJl>!lLKx z73y`KN;WXZ9)p)LMLIp?#hD0fy6qO9I%wu@3-F&^e5-P6!>AsZXg@P5#FsV05)DeP z_P(pJ)@;<=A7dK99Y`_nX4Z|)YF1B(O9(tt-ubpyDY!4{r?oTEg1$A6vdV^D-%zIe znq|F6gf~JYw}6&ph<9TvU-1t7h&`k|Sx`D#wxJuUJZi?HqagVdGiYd1PZ;U7@q0Pg zPLkVN#Z@?uZIZvf){e7q4bZ?DJ}kB+l&A9O{TS12+y!+_yUsVSc_pV`zvWT5?_4EQ z7bh?2Du|kbFB%;--rV()DqBiCpf;8?oBE^6gcJg(+n-yfbJ;|R4+T&oNBaI$Mw!`luzX7R z_HEng%U>tQG=cCdaS=RhuF@nEkA@5cx`hBk!~NYlu99m){|_UMItl>#u-ZUDK|;eo zLBd1+^OGbna8wAi&rFag=p;gl#LU8mj)735EJ|@0UyPg*^6JP$lvRV`duK4oSyh4) z1x20n>&3nryMz=J_Ra46!D2Jnz4{-9A8-LMcjlbSk8Y|*8Q*T zIja0fVPqnnNU;<32U^lpO|O=)j?|^WS>5kA#Jc3`oQ4m@VPDbJ0&;{EA{EV%aLQc^ ziw<|TQyH)hCb;TS*FsfYS(MfpMmP%wzS4&g{@mTnv zw{-w=-;(%2TI)3U;GL_~CeZ`iDx6U~O+Hx%?KE-YRgHAM)E=sARSaAprAl|}W;>l} zVvI%kLo9q`?W0ku{0OQUtn!ylY)WXTO;QBQY^vcQna|#ZtHfqx=FwKU&bn?*HQRa2 zdVRM7m_mMcIw}s5~viVxz|zb}okK zRf_L=@`4!8CJvkuZQK`^`)qo%?Qo`;e|>H>&)m$~#1lN{G1N&TG>O{Y5b*|t_+q$7 zED_vPh2eSYvwulFP_7X)l{xy!y@7Rv(;%leY`9&O>b@F$TZ;y#o3X^+Mc-N!`Dz`Q|M}LU zm`0m7zBwiRrR*DAHYdA_vyN_OC?U;6P_MC8MRk!XHrrm+oh~`gxDsEz_*#pYqdg>@ zo4*Ff=I*`U?9T#QBBdOB)R_b^Z0P;J)5y8+z`iTflfGm}tKE8(r*TF{QeK1@yVc!GAni^QuCshgy%8oDG#SibWxpYfEv17FT^ zy&q{^X20)8VINx9-Yo&naN}#r%?wBe7N06~w=h=psiS7{xz&F~7}nQv?k+Cu`@x$r zL>QpgT%xv7r5bR=+@7%Mj~k?}z+1N`!;P~qRBM<0B7{kDiBr{S5|dTk8>VRma@5&c zF~-Ewxpe!L`y#Lc-C5mi|ENIZKk`0d-v~`0szLL%uB>>ZFQ(^WwP;bF!rLwVWcMJ8 zUg0YwVk1bO!k0a%{YtTBXk+JTfyTDUq2eX%QMj6n6@ky)`;}HVSYg%mSM$skN;)=#oz|mrr(2`)4lX3v=j>lY3JRBIXmu^!v z<*L?N&Z$DIF?@}vSg)YoL&;lF0b`Y!Rg_+Gt4`WHzz;2pWQl`=;30SvDCH zsDpVtihnkM+}_KrF+yF#JbQPXd!TB;)FC4s=Acxs9@&K1EBR39NeGf0(IJR|GymB% zvLKZBi*>0rS`g93&JLu?HUVM!4lu#eF@p&fA@L1>@E!OC*Cr|M{|d!(?{!M~BF8uI z13TpSN4~wEY_2Y@@}v6i(>VSRAxUnkr;Dv(c7Tz{&X6?8<13ek_o6U~SHLZZllJVX zYO8oBb^Z)2rX+_9!W!IBTD?T56FRRhrf4s*NaPn^{UvsKZ_)t;--A7Yu#bdo@A)5*1Di7iFzN(=vYZu}VD z-bq|ggNzS!(C-O+6z9zu;?nJ45h2bBv3w~(*Tp3a{UzrzJOX5PI0Y1w@h!VxXgvceuwVdpQsEJj@tVyyb?$KAQqY>6sQfqmF6sWm9 z)#jPlv?^zP0MW7fG;p_wyf3i#Cweb*R}zLfW?Qp;Ke1PbnCeK9u8N4{{F&sud^P++ zBKFm1%O`%CDYg{fZwVarXETg(isg&<7g8=B)XOuC4h%=L8&tiVomeyVmuTMP09F`Q zIHTn6{c~Lg%m-STO4sD8P1o78i$CR^#U@WEpyz>47SCVtjoh~@$EVMKa1yD23-0a( zz#AF{F}em|LT1duJN}sFN2UD5dc>}+JwRZ=2EJi%67oRb#yq<@Himpo@nJw^9%m}$ zh@DkhYn-+w6vdM79z?>^5~Ep`8?i=^ zHz=b_{uBGYA|5vTkK(ny&=$lyFq8NuEx&*1>0Vs?S0o;eX%%jg$53;K%`^9g^t&1F zLfvHBVwwH!izjO_HsS9YyjHGiUe)~EW?|Y?8spXSwr#R9`%QE*3vYZxFC{Hj-+Xr0 z%yrDbyOf5%p?s62q2gav{wVs3uT{o;7j@%k>kG()()^5=%+CFV%v9rAs6%_Zn*W9A z((FQmVwKor$!^}Lz}ez(fvwR3@Yhb#0EP1df4YkqQU*4vXa?b|t@IN0T_=QRpQPONIE5#cDIER}+3{sqOVI z(oM1Po^zy+|3pw|UY3<3=Ke!Z`BQ7JZsiV%h}wEAi;}x|`7A0n#*TMg?PDFn*bBV+rNreQf7HS2V2OLeLvFUXj%=|Qc>tXA8?Pt1wRKwd=2d9m8Gl{%JI>+K0 zM_4rRvV^TH<0HmM8QlWQuJlQh_R+%yz|yx@@D|(zR6%;G3eh)JT29n=o?dGm%6dK8 zas4h;TXRWK>K2fQYd3`OmKH05yAS)tv%;(F)uT;{A_aRUvIU0Q8Kh)UcR}f+8#@|l zfk*O|)hGL6!VpI2@KX8Cbz;ToITe@^bZQId7Dc+_GunD1#K}_)miCQBPHerOB;o5y z@awmElE5BiS$CP$hBuRQ;FEbiP=D}88uz$h!sy_)g!!22s4&l^3dW3}9=yyYqTE8zJS%m~z$dMK4) z;3_?pRjq{r#{bAgSG!vdckbRtZ|y3RMCT&N(bTYIjaf=(AGqjpIm|DK9}>dF5`lFy zUk|w#1?DQ+;=0weQJ*~6y#tUzO}a@lB2HSyqC&^j}!XJupZt$T*S>HuS+A?ShZ6l;2 zpk%L4a2yG%k8&=wR+um#Bz1gS=c}@D4o`|fUn9+W%ic(BE5z{TwpNkf{1BQ3yW{g7 zt;_O)rj4K3WIhVpYPB@ErZ#d-Zc7vuD^5#DutNJVF1?)vaZ*8NY+!p#Tz?RS5ho=L zuGJf5ZFtkWnNh-9K}LqqcYMwtJP_37At~w0Mz{0r^2I`WkxKsn1}kH_wln)ii%TBN zP5ac_+d>IUk;Iof!m7s3$n#bh`%O`HSm${wQ@XHxO1HbT)~QcgcPlG;$Kq9qnN!Jo zu{f(y$$%+0ujZSw#L+p?HNNs}7I4;QlSg`NVtF6Kihsz9yHa8i`8y8~fkP4IJXX@p zRluh-4kD|l>Mv5k%w0Y${{Y+ODG5MJfKbg=95XAF&{z^%m zc!~pqM{*rr?if<&q>d{dY<-3Xz!oUSEP6?$0(qjfCS-(gWFUi3K zK5U|ju#Drcjw;6p$&LG!g}FJdX0Bv_4^a8-vA2`dyH>!85e?JH)FTe&|+V zmOcSWda$20Y+o*?uEzJc&M9o5P~8`@=lXTmeT++`Kk7jn4H&Bg(y|G zXfHjD?rtSicaD+Qj;qC^p+(IH3^hR>ZpV^yFpOfYa!5;^TBnt>cUf8k_g+=4uHVH+ zFhKO^f@%j--R&(hyUw42vA6SJ_~NW_abs1RvsZWo_r1T9xMP`87VbLfPCa>^e&u9l zbn{k5<&T1p^&viL+U_lCC$B4tvB$|Xu^B4V?3x;+J!w>Imj_ivHJRk#M-=!=q%Qin z@mB*};d)Hk-VN_5&Z#E7{K_{6LWMV;rk7nlULjJ=G@M-ed_HNf7&_~SrB}(HP~!UW zDc7o=PD)1$(;K7R;oS|JxEWQwmXPw_v9s5&t+q>L zo!1K-Zjvy;PF=;rJTcTudKe5<3Zf=Pt&Wa`r!%~K{%VelrayJV0<83{_h*uh&f6r> z3$1JJyY{%RR^J5Iw4w?+k3#D}=wN^f<7nQpb68yL)8v;93h2D-(?HER?nQ!u9wj*S zjTCuRM|O$UX#)w|D)V}5<*!J;s|#86ja9Y%drdy5qKCCtc$H&^+-kD$tGog(h!Cw$ z>rGDu24$buNP&cgVsBbpwbw{Kk zt4L(Ss_)=b&`oF$2Nn#?a=@(|*^T&K-y=m}xNgz)R!6?@CB6$s#Zv5iO3}<0TGqR} zH4LrB9o1)Lf=MnAa~0sO%FqpYr_F4LJGATv;+PY-E`2&is{;>tSD4bO*M!SWmTNos zihm-UY|ReqH+9}2RaaQoS67!ud%;{`HAV7m9983VE28s-70`>MsX?NFRN;w5g7ei= zTgOvei=(>i!U%lBo$T!IJ~%BR{{V5HdXe3E-hSm}j~k=SSePk$;Dgyv6|MgOoDChx zowpO>RgyklNyn)X^H!&3;NJxp>%P7vS(()p@K%R)W2cIg_2gDoca+jHSZZK0V~HfG zVkdI*RHk8e&37Eme{yxuRBe}jE9%dbFqa>zK&36Kjw|}Ia(FbABk*X=I>#82Uus*I zyQt)#=2YB#0!W|2(16=|QYRw0lDg-Z=9FUf*X}~M) zx|hu>V*$# zuJJ0x5Y3@R``2<-ryLvrL$>l&jxI^(sS)#5x90o43Krt`SH!4WgBxE3X?FnCT;56z z;D(~H3pCo@x~RaTaiLMS8X}t}4sGVs5UeptdA4RX!?`!zLy~H0Zv;tLtZA*HrkIoq zUf$(NT&XIns+%N5uHq5M=F>ulMy{_egE^BzA2eT!c&g2dj&t-D#Z`9v@joZ8lSmnt+N~Q zie5NXqB@$GoD*@ln>U zP(^@MI4AQ}SfJ+xb|x%7V#^O@p;^aPuJ8)f{;XGgRPXD|d$f1F_d9<1VACJe2y80;rFelTSi{` z(uHe<*J06c#t#uF9~uRxSo-WN(hdUoZ9Xb@KsMo*zK%)N+C=QTDYX@89ty7Ajnz~3 z$Ux+znb#ZUc?4{>UsDsLx;I!3C*p{`T?05SH6^5eHBPVgD_eYSyZE3+74Ra3Je-q| z;%b=G4+PValx;8Ng%PMkRn5$B=9?g6yO!u%x`TlSB8yz+oZ73eweVC}s=02h<+QXp zyqi@1N$s$?J8z2hs{87Z^i!x6rlbXeMYBf%D>;sx2HiEGEh(<2n@m5H%ygUMt z-p&)^a8|eVq`UQ00~cfBtgUbjBE8B=Zc?gA4*Z2j5TtDby*r;v);YJXHI2O^`3_zw z^1|mi#?5AHNfb9;ev#y~Q>p!VE9cUdrNkZy^aTws8Uygwa96;V_V=7iMn^9pJFlef0S1$6gD3D$gtY0tJOpg{iEPp$SlpUVbV#!oS4~ zYNJf%f)&(VYGOE1Ve<}mw3W{Lg0jLpEm8IuT&<7f&%HM{xVyz!BfwI<$=5e?Qj6v9 zsUxN@G<(L168B$_TnB3-e&*M>QA?yGZK^`yWnsS*V>v0>ckl~ESARs#JZ#I+r}gw} z{C-S-g7kZ00MU>9lmtzDz!Z}<;hhUc&!X7!^b zC;B(kOx$mn-9kAV+!JJL!2zr zu*zeWX15*M@>(^8;`wc#Tu*; z;Ei!rO{xV}b%)H_-`19$%}_TJ@hZ;T8@zj!t^HO8c%tuVAu7iZ;Hw=%n*Cn-*N0C1 zrH^EdJ0Rd$UwK*Pb1aX%=UN}MkOSCn1Kq(pNZU*-ac!2$MeDd@j0WJRKV2Tx3>J(1A=PW*E+Wt|G ziA~M!F7Z}au&D3~cXcACc~ZaHNPGqg$q?Y0=HR9-yy-GIbnJG!OxqzXlGHysTXetw z08m>ac2`E*WRctwQtMyJpUDd?mJJv#Q=R+#;7C)qV=YT>3O`!=mD`r==+YSLVE%>Mwo(53C^t55GVD8F4=e%YvS z(^j9gX<9?Erl#|29K9eP@|0)B1*E2JC$~29P3T=4E*89gAzG$zvsyhxrMuBe%v$Pl z{vkQ%cv0e)#|rl&(5yogYt1p)p|Zd!W41`c)o}azBG;nrP|~H*ns|&tWsgTe4;oeH zn~r?|0%{x-uE`dX)AKG*PpWq{ERDb^V{R*FW^aGZT3^(Po$gY<+DcDw!C7JC5kAf` zd&;ywuO&Nzvc;VfA6ugZBiw5tyU90X06knfF1l{#Oe(F$v*|Xx0!7)F9!JrlzT+SKDv0jag ztS-Ow73LJ@-j zdG1!pIYvGuL@{~2;-VNZUhr0_K7dwuv3tHKJ==^l=7f~1kAP9dBW|<~jIqWpSq-Bc zS_t^!v_rqN=xJm6TMy#J9>7PVu3B2!mqhspdq;KUqggx5Q2dtG;X@3*t+Ia)HEfNo zYxF#>co>#lE%>c0dYT$R^`vW7p8Ztcw+l}kv{3V$FGzn@$M);e57mtOb?Fc4*u3Xn zk^ca3vybtYq^JE_$Unp@(qq`M4>uL*C+RFh_FTOs_v}aZT)iZ3`n{Fj5*DpFeXahC zYg}tb8G&l~JdBdpXxrLdgfR>n3HL|wR(8J~p^S=;}IzP>p-R zJXGEz!8y6_c_^Pcuf)qf;TH%_*p^7&=&rFi4+6>X%LCM(AsUF-Ph*E_5 z=g_G`fl$W!o;j--u>6wGoA7oS1!jlUI)U!U^VB+HRhle5;H?kpvgqbjagpW9&dt^f z$CFjAPEn7EQ8d@Ad6h-TC!ET>#-8qlz2Uznossjr%hg_x$N8%)z7BL}?@!LrqU{m8 zgt1aW-vZoKL~${Z+t^u%bAx3bEppQ?v$N#JIOD`!v^2Tx^BImy(o_DsW*!igr?}~H z_5o?X*B|#ST6UYdTD~xk;JqXLVGr0ZNDg{YqrwHJe_Q_m+=ZqGTTM8BgwUpIZ$Hur z2Y%oR$mdY{M=3w;S{0E00LydzxK@MgG~C{IWLDtj{HIOaXa^>?Gx1t72fO4DzS(Fw z$%*~vo(tsmmq%u?huSVR(#<3N?)=rK^QDFTtC=hnR`UM<=4q!k{mHq;_eOh;9|dR_ zO&euzI%2HTO&E$p8%f6>;EP;GLwR+)PeH{oo$9$NAkc+K`PS>|l_3{Lj(W&M>kz_E73#hUnpzQhfM9&kbBZDLYO8gP zWZ)5TK)#8Q!W0ul9sI^i4Us+?${KMr z`a>)+#Z27N=OGjK^vzxFhBW=bMKc`NJ7^C$2vD=s+8bxOGLlH?d0DK$pXip)8}SAZ zB>Rf9k7wxg-(Uxa@7Qjh`#B5Ipm#KLkA<07 zOLuf6VR}t2QQ2V~XVi_X{8gwq&avr#lt|vZa**c# z0K1Z!(D2vG90i1jF~GPuj`a<^xQ~;HX6U1-__s9OQviz_9s;zY~H54r+l?2Y4zCVKu7x)CmpX;y^v> z{8V;r&&fJT`^i#lF1tErgH9=w!=M^5DbC9!RO_3n*uq_koXFetD{;6YC|XdOKK_U( z6;29-Cme$2es6Wk&uWo|TjUPK;u?HFRkTPP>M%Ibjolw|W!eUSwvmxf1Ib(Lx<$;h z%E<4JX7N^6yOmd@&iwt6z7e>uNl*ISm+VUPhmMkjctE`)h*V8wpX)Hk_$@v&(M@;N zoPQOk&RQm(Gll6Z&-QC1eliy=GU2_XVQ18b{{T|50r^&(l=p3082ZCmXaXwvc%(=BVV&Y>o(=0+9D7hTx>Uj;ah( zU4Y2~azR~JTnkfWWk*DW(wbEd&2MVO{u;J+l6X55D1lJgVL1nmtH1fdXxl(@Bz2=| z!$&pKJMLO0%)+)-E;5& zqJ5T^wE5Yuf8|z*}>U==(O%XKKwHfPf$W?4*wOP+) z*dQoeXcRr^vI@1x4zd?;SNEOdng&XZsCCw}7Zn|*5g^?>TgevSuqmuzcPeUk1mUgH z6HJC>Q8Y2*xl+Xb_pC`+m4PdYbXsO`%MQa{fviNEePgJNy%)!L7XR4JAu6 zPs=m|i++vCR1u%Z^bEJTn8ZWkSESv0mNEYTM^}Huwz3bF=o`+;{B)5;PhFsjWKKK@hr^6#V3rPK-v}|xRLu+(oy7}p0E(Ap8z`fb zDb@-B#;D}n6pqJT6P|FuDrzCs3AMQ6pHF=-yA1k40Gv@$Fc!Nm3)iz=`0zooQn{zJ z*McX!C?kAwS-n%*``FZj-`t%g(k}@(Z0Jvw>=u?E@{?KJJ(};{Fj{%z{{Xnyz~;tO z{pD<_E3}QU%h{VYH2qP96~29-{+hpY2N>gMq48RA%>|apNZ@3SJb#K1!dq?9(Kq&5 z3eapnk?85IN8h`L#mh}U2C~Uy9qzvGfS_7dd1sPcA_bN*MdHSb#Aisah+uG*Pw&1Hd6Ipj>gd)4=A1(ZL- zilac!QQEvG>?9v0tH`?PMt4>FB`e;hjr&NdE6Fz7emPtjD{|p^O4>LZ*y666eV_DJ zhnD?UDQ?s;6V|~oxhlI1l@W#aE)HP95PkwQKIE zB5$mkA?HP6k`m9CMA;qe-5bFzKh0Vod1TspPHBM}P{*8th*4!tuPV<{)B;=emk$Y`5kPWRg1&?8Pt$ zw=q>`w6*Pf8{ndW&W*m#rsgTEp}ke>Z16B*=d_;YwA7U9*Hc@WPjidaaZNA13ApZD z3YC~VQAKDC-nvFbdPex-vO!8xn`&YK@la^{L73VfE65<%0g3}w6bMsY&}gJ(nStXR zPsMKP-&|HS2){HnUN=Gw3aaFE8I)Oo>l7P_#OuXSg0I<|(!jp$PY!C(dcarR{$(0) zuXdmj`9MDKrl-4tYkCf2s<71OG+h+anz-Tw2bvhh44yD7Xhjq#gmwb*~6BuREmu zmXE<%zeE&m$$)Ac)D@*oc~K2lPjOMmH<}8off?}&1Gx1qU4xEPuX46JDpoLlDmG$w zoO5!bcQv#Ws-3kPt{fG*&n@E%%w*$1T6f{W0&}{4LobFjGtiJ5ZK2TYZtR6gFl{hS*%CWApysvQ(C8Eh-*>?Qf_dPc4R8wk%VBQPnVQfA zW3z%;1Z{D|mbQvJ*RBiP>5j1tk?aT7NGLy=b(+mbVO(zesjeh))X~K;tt5wG$R{*9 z{CMzE$v)CRa20PXb>3|?R!UyFe-$f7S%=9sxEiMAaCs{5Rn>^s8^-e*?+~mm9>$&+ zD>DWKzz;Pnjv=7=r(G2|(;kyxZ__y`9?~6n)KIIjL_3xEsB;?Ys*31E#aAUoayz4n z+DbdMimY`4SF3kQ<)aST$vMlKYuiH7sM6jA9f@JiHx}wT=_5~mpcD|q=e^>AS}j<} zZbiX^Gvb=o(Vzj)ip>@G`6(?HlWLi?6{{M5`If7W6m3aO!_?Q!0?OSD?oPu#?p{f< z%w%}0Sa9z>9zPWvt)tsjW+uDmxVV(oiUx&uf^ZF^um_GcUD~oonsq!*Y1~ix8ClAL%fTlGTUc(_aP3Gb6)G)QCtNvOrjMll@mD1V2wf}sqw(aeHkq$%=r|5aR`srYR6_$Rek*u*ARQ}? zL8!}ZY2m9BQPctfVMHdh08zV2V1jB2fmCX{W^YRTFCEAj+u*2+sfum-RcMadvR(08dz8zH08k^EJp!eZs?t!- zL*$@*Ml%~r4s9a^V5xnbmruG$A$*!5-gOn}>&ZM?8o|j4 z7zq?WAe*X1PEAt0>aMNzNSo5ZY-PAk2P735qmxM5;4a>5hKs#n z*Ht%;0Rvb35o-&%^o2{NH?q|^ zR-buVd8s&se9ZRgtDrRw8Nf|p%K!Ou&)*u1I;;MBxw{iLq&9to|4 z@(JvvP6S|_=<3>_=vYCn3V~Fo&uWS`@hQ>7(M}7PP4G_llz}-OOV=|FD|B>#sN_>* zZ4i4Yw0%N+XBHd0(306C?6uu4b?gw(YlK#H}*DMussA;zP{Hlk2`R8zLRd8r#4n=S=R+z2#MJ;I1a%Dh#@ z4PlHfDz9^cuqPz`Yk^OM(c8@Y6JF5fnuDkn1*C5ZI+#3WtyU*X9D=NNEO^TW{a!oj zi)`VcQqFu;^3Xdgaq;sQEuES5;N;N6&S|nd&PRg5M(zo!i@h<9p>kpEBP7-LdUMHb znT!PDhI1PI5SrG}t)SG`8n*(a1FWQ`@HA6Hch%A|qK&v`&*p+|sG@D>y{sMOS?z3d zp_Du|)HLRftFbEl$=@CNZ5Y7Ye4IoW}`!Bi^QT%PU;(U4WtWhqQBBS%=GXh37c+Zz~;vn>dBgN`@xhbHE6iw$97l>PexLO7Q1iMXskogl3z~ zcc%o_imJ88nbl>o$9h=!1yn_mob_!&_x4YPN|L`LCWGDp7+n zumw?i_V}xhs8U_6F!|ctcDD0C@zw&-c52_86Un%(BWc3LWT5xlt#+4I*>5iY0Hco; z9A3u22h*6T9qnz7`myeXWrul?G#`D~l=Icz`bP$%EBA|~cOjCs&DT3N@(MU3J3P}) z4-1h;pwY!NWSsJ$v%^=sGz9%7$D1^Pv4>qR%=s%5B-%N=+NgL z?36@Ya&t`_aNuN_6fV6!wF`XV^o;0T@)(t9maVbb57&Crw)5+)4yU@zlu_dQp!e?; zWEgKr_$jGIMAii3i{4d|%@MlceMvj_8tD%{3Tbhj{{XTThRWR7)n|p5sOon$S^E(= z%6m<@jD4SG!(H@86(=ZWjDDR47yUoC+K;~|^nq<``@R@)!fXt}g!FAW0%>>r*O$mpJ5ARJt>b~UF zOp~J`txck36LUcped@lTEJVE!#hDu&c zcU9@P=9GEj!aHD%F)w=4cFm%LmmnS^lJXIDe5vsN*yfsofb3mfgR-)`2 zG5M=>7IvFEFF3l2(;&ZUozkChVAW_0++$j%cU{Fo)eV|c7>Kxqq+jgp^jdaq-PLQ8 z+D=p*s+DDD=E8}*6Lm)H+L^$Rtt9gUAf62iN}3(ZJE})n*@4`q9@Zwm!v&&W6JIB) zy_Mx;lvXmw4&^PfNWgW*gNm_O+qlemo`WPLQiue`4AgSr$C`7_sv?|v0T6If!bNgS zmARl%*3?@Y)UT5~7Rr0P9I1Akeq(4bI0aCsRx7Kk`o1kymYlVUUO@y9=`aoCWHrgU zg%GX{s$`XOqiV6knE^p5qbu-K=nYL^sZ!o1zDV(Eu}I?GqiVE#pwX9W?%;!8cs}qQ zlC;LyzF0{dF5&=I&y)tlT-SURqRRHf*X^$L-0me<-|eC-@60PCjcIJ7dn8o?5zc(j z7&j88ldN@stEeDK1S)F@@VcO;O@(nl^df!gp$k)=Y={m8Z^Sx8m2~Xdd{y|omO8hF zte4~wcq#>Xy2$(t#Z!R?qaO)vhLXL5cymgMKm)KSIA*F*q9OG;E7Spc%j7Mz`Q#MiBCSKR zrC_U=RA(n949c0&Rw(Zx;%l0^XjLCkkyxx&K1&e4Acw(Sh1%-ys(N7tVVjfXH=b3c z(%i&H+@oa8J1VDH0FE|Zko*GD){9JG_K?6&0HL$OT_eQ@60Dc#$YgrI7;$NDaaMM| z?fg_vtthr`o7k>NsSrEPGt{ii4WqsuO}~>or4YE#XBgdWNdiW@Q-} zyhbk^6tMwzS2XymYY(iD7{J7p1*%J%C$yZCPM{$w^NPV$P;^aI6$eO!=9~(Vv<@gp zz-omvP`py`Q3qy)6-$n=MH8&n$K4yQ#3=+!ame7K7HGhs-3m)PjMW9NcfzTWJUF)V zP7Vq=SnHV#x*N*22>jPoy7Ma@hygxMt_|jz&B*iSotYI|nNbu+1!uH%*sO8n)$-Vy z1eBptvP!x^MLxl|9B|Dzk%3Hx&v>?%MM}55{;rL0#ag6>{IXuhlCW7HaMjQETZ;Kx zzq3lg&B?79sMAnPDl&@Z6_#GJ7S)YwB%?h)ez^MSD-dJiKED)|s)s)@4w?=8A3y zH@>$}#c!QQWZYI7{Y$(S{C)>h9TlRj1!lLx-Da)jf$?9}&GB};Rtp9H!~iJ}0RRF4 z0|WvB0|5a60RR910RRypF+oufVR3O)0NI=Dm_i38R}^e*MAJln7-2yR^vbp{L2?4q7KYJ zKm7@k?X(7~w534Junz1zUI~PQdH~%8JV73S1V?E}*oiE1&tyY1K|RV-fTN6?z;M8D zz;O=APA7!$o)f}&OK~m4yub4R0wDq!gkSy)5wfI9lvn50IXQ|T3<0)*;xr8@=FD?g z9j%O^Mg0E&#Nutt)Y}G4dkATPLuW>=AyL+=W5f#0mV#nHi@S%`mJzNror&>7ygDM- zVxm~jEs>?z2DgQ`E(ke3S zmH^b}chpfHu*-qi{-ben+eNlS8AR&2Vz_BvM0`PQvic6z;yI0Ky*NMOUI?Z7Nfs9K zyz`&Axb*b{)K4>`KfIQ%kCg%5u?PUIr(Qmx{kH~0IS#23_TlR z7cN}By{t`o7zT1)GHAnHyij7E$whW|^m)=z&f;SZJ)-OFTE>5=pX>!F zg40-*F+$91s_6kOhTF?nHOxms?hRprIVFvuX4z)f3l4=QZ*nx+RQ1*GF`vR~5IkWA zx@z?Z$Eac*2B0KR$aH+m4Q1w45OIrl*|cb!MTW3trBSyn5yTm;OQ*C`(OGPlOfU@s zqOu5cZp*BR%y&I-ZZgWFLgbCsMG?>Ru+QI6>0kRjZ9N@zGA>-cr^g4f&x0XSL!phO%5RK0I`$`ulFq(V7k?J zh`0;qd2wyHmQdyfSjRD%7%qE3NMZ1l)eI1ucW>$js-qO`d3cR30koha4R%-~FIH=M z9SaQB(KTNWGo37Au`T9Vf-W}`H(J${<_CriyGno3`X+_Jao$oBLE57x%WtUbp*!?Q zR)blJ=&*T)V=Kf+?P$aQ0L1l9I#hjpk(c}cfVj@X+Fxrykq%zvi)uVOi-A%k0^R}JB^kBH&{s=23pe+_Ij=*;tAK~`b3dQ(a@PRvOgYgzUpW{j;1+64{2 z0|v8tGL*uHg4oh51A_+eA9Vz!sEs;9qU_45vE`U!?rD0=gdG=6w3G!cD+-^e&9~r` z_Tu3)k~Ft&WdP>kb6wu>{{YI3$=~T;Y2hh}(dZe2VFanBoza6BFNQl(`i1H6XBhD7 z^8{GJ246;4yDx*8ePkszoH~^*a-LBz4Y2~6LSp;Z60@!_=Jq1AZ(Jl$$|e^U5mB~9 z*qDUStNx>O7rZs^9J<_~#5b25MZ?6+T(Cw~V`$Q%L(^dN7xfA?0P8qQ*5Ex+hNWrD zy;hr9xljX9i-Td;L^O#UEe8_|P1H5fIADM%HkoFbGLN*kx)i5;hc!RhNNeWJ4!$DSCAt8X<;%x#OV9bnY!^Lv!F+M@4~j_cGl{?q}3Pf9VcQoR>d0w&0(tk$Y>F%x&6#H z2p+9nQ|_c|+#ykJF2lDH+p(r^Kd6LtYt2R8s=A2RG5H&N!owJxCK&7jI45!tZY=Q_ zHkm3C#(m8QBa%z%N_8($gHX}ZcHmeI>UJ5g3BzCp_|y6ccG%U{r9oNvsvGXj#vj%vN8~ zzBGIDH%5(omGc;+_{U%)fI#m7HKeufS z0Qj`I1R+?e$4wJWVWU`<%FcQ_#qhAI2F33dYSd$H5~SG<&trMSZaHY4BZW3A{q-_U zL$?}Q$Pex|Rv#wN=m(=J9`e0zHY7|BsuNcr?E==2Y;OMmb4i3d=ZRXZU_LKx>L|3J zPRzm&WS|QOT5GgtOr0vtVl-~CFH_803YNW>2879g9@rF!EH3Joc`=ES7OGG%4`BcT z1$LU;88G+AgXnHQhS6d_@Bwn={{RQ0C{~HZe1EC7fZu<=yu%&i0X1obOy9Hr0A~mB zP%q6`YB!Rh8=L>I+V&a zL1EBivSA-uDI1nNzW5pxK+| zRn=UM#H4JNP}56oa}JOIt_h3BT4$(7saaX)E&M|@Lin=Wb*?Z(dPnMM8kO8H#l!p~ z^$*WzU%7Ii<>m;lmhvYHav7{wZ^CykcrmhcnYK{B;O1`A52jlO}GD z%n>y&L{>ya_j&Oiq9<`r+xVJq)ArScncAdbO|`BeCW&jCHu6AKWq1*5%(VHD`3~_w z=|o`O+g0TTC@^}FSBe%R3l+9bHa;MBFQ1i|O_Hql37lz(U;beQUZ{WC>`Ar7p8VY=ov9@bGcu?XM<4X<05GhNAI&2OT$2nI_X z#}x^L)l6x?pLiw~4P^;vmur?Gh6aGGb1+V3t%wF2{s2l;Scy|TerOJNxN^aof-uYc zsl=r7jGh?rM=W10{N{*$qYwwd{U_MWA9L+KGQ2MQpxK<7^UXB(_b2A;C2M#Yo9XVO zt@}4L4JYTt9V6hD61lvh>aNaT)JFm4HQ~8$GRwOCXv;VJURWRwk$OeT_)GIlwCv`e3eO(=f*5J3AFcr$8t4V9qZm2_&@-a+8=hn)#r%Sm%Y)cP-c-j z1Ph)cheAr|52?t4I_v?M`3yqk$TOA&7=vTx1;B*b)RqiQ;$PZy{@{-ZtRLc4h_6M- zwRAKC$L^1{ik}3}QQiLlvk&RZ@iD%+KIMYKn7DmY11s5d)1>e&Z%=$BYM-`QmVK2I z+4*JuK;WIy?U|`Zx`tkOKu1O|o#BlSzG5QOw0U<~W221;-;?~#OY=5aj$%s??TA_( z;?iGRYvqn&f%`D%A<%>+(6f!#FxJ3K%b~$AH5A`s_Z`ln2XCno6$I-tj@nQV>Q*re zjFobwOgo)AE$yvnOA(e?PQX)D8Ek5ohe^npi;-b>LSeP~As?xW*@O@BLE0_002CF| zXx!TPA+84n_GSBT-(^qel+d?zh6O2$hRASg8I3lXUx9OW`{6fc?U}vhDKsEn%bVZM z6JZ`BCwseckh<$paT4SWde_kj3k1Pz1H-h`J-mJ_)0ryW>oUc0zy@Iz@=VKgE&io=apq67m&1Zyg1u7HFg2nlUUiNOxeLHCnD2DcmfCMfZoVPZkr z$%&3uA-0AP#%7v+Qm+w)2$wPK!06e&M14TK)I1Rm+wltX6G<027dPE6(TPIXrPB-| zuf!(XK4VBW{{Z-Xr^ELY`$)bSP*LDYDJEG3r(TpnBcVgq7E zmzEgL>TGy{{{RsQtE+|$Z}T<=9fxl`%OoRfkAxq1T*3wrj5altoxd)D)Le{l;h~#= zj@RyK0f)qRAPpn7Ap&yd{$)`D7m_v%V#LbKv@<~+-PXsbwV`Zgw2jlOT${QOCb}g~ zB6an`v`s5xcNLqkikp=-OgBhw!C-CrfvcP(anCh<5ZHbw`(QHDo25bR2+mq^RAOzm zt%7IIv_}%}!Io}!dEX@Z2JPQnf-@en*s5aRWgKc7kkHi+Zt)vD&msN9 z0xYLdm6-gxBM{O`B?& zylR7p{{RDB1p|Qif!APv$zPt;KId=zp^@9JkErIqbY5>6YZK0hmd#JQqF;O4EZ@%f zO`Ld*WIfk1`7Kcetvf=y)ET|Qe0rL+e3ki#AkBVRl=)SzQRL1f(uk z`ZfBW*G5TbECK@78I8X%WlbQOOHvx3Sh-~zrsbiu(B)jS1qxzc3&$f0)vX*u=67UaJi5-JuKUw*a<( zMX2aO!jIaVu+{iVpOTTIpHOCj;F^*Fl8?x(3F*p#mPrK|4~_cc9F8v+gkcrciev zJdCMga}v=A{JMsU3tA#9k}n|C3!-T+H-b@}LVJSZgDDlM!2 zF~o??bc3NWjV~|=a#Zrnp~4Ke1-8kI=IK|q;$s7>Uy%w$tn&jL97tNur zr9_DYNvR8$b3`wZ`kVLZO_(?zwizw?cNXH>2}P*p9Ua)gJGz^grmy*Ii0SUocUQzc z)GQ8Nowav?@{x=W)ZBib(n)wf%J;-~e`5?ES&eL;b(yPzSSQ2+jZZUJmrFiolD&+6 zpc}Pho=s+@(M*8$5vjvI0wFD>Gq9JTg^0&lc{%@53_<+Y+84z*3ZRLQ5b!q)L~OZb_Aa*7gu?*ryF12Q8Z$nbuAwttmr6kl}L z_+TT`NJ~4_`+=UUDQ}wA9tzcO#97(6fO;`0cU}@5n%;Exi+Yu`F*@6v>JI$|n-OP1 zHo%!G68Ci#p|sG#DLEK^oyJv?0V!c-{4FDkfUSGg$3!&| z4b;7e>=OfbL$YqbLRe}jE-RfSFrx(431r-LF@tCX7KyUWYAy|kfxdzysKzmzTftv! z#rE>w=4yulxv>s%VUgJGh^Se3HI!U9xO`w$41YFEc5H(xT{S)rVTBJ-7!y4vcvIgo zq%E+5AEOOXw=4&#J=tFl!f#9%bfVa*gZm zZ>j_1VO^LKgILJ4Y3^3~b7`aFOHBGoc!_>lw@;r`Jam=bNI<&LZl@AW0J$6bhCJ}1 zUdE&-Pj5{9Wl&tr_x*w5?hb>yyF*}bg4^H(C%8Mo-QC?`aCdiicY?c1LU=CU-@oeK z+cnkmZt9#q-E+Fv-g|vAzlv@68Nx7jSXz&Y^&+kr&Xewj(L#r`PZ-1kR_QEa+HDrB z*`)&i)s2ha#CvL;r8jfdVz`c^bod|^F;aRTT?8Wik?*R za?G2~YAB76%P;z2LfBgY?E6<7ehK9$6NYZT-C-dPom9%iiz1bbPMbfv&AhGE@{&Tv zp4jmyeO`j62Ma|C%+@!7B^hUkMlzm+5h5ujsy&M31vz}x0Z26+`#Yyq9qNMp*Er*n zW&29LQQ&MnDV963zk%S7BcL}w6dYoGBx(^+f#IPao7&&|#S#tIIe zMqr_gbYC&V32oYKcv9TUBrJ7?}W2`V9YvU{T9gdg-D}0+y&n><0PWW?jb1A52 zcE(yApwQP5K#s>q_lVEXE5dRwWbc*=uXrO4_o6L`J^}wh0Ijh)b_q%QT+N)&t(?ck!0XzC(#S+&rYJF@N?EaO>innzILyjL8^9!0hw$)e@g zY|t*^MAk~#>Zw2J+DSV|^e?$%SN<)_5d^eMAM%fE>zNy_8%M?b+6Ay$&;3L;^3n_A zTt>6XE^ZL&6b&sDU+p8A%&K7(d!fAZ3~1k_(v7UUwkE5TVSv*$fr7x92JTkou0vCfGI_sK+Zx`soR}Zm)y!hCB>mgFXGOmyw56c0-VIeQ)^#empb(z`Ox9hu{OV0V(^! zA{5nMx={Nj#w@C~Q~FMnn;_5BJ?Jg_WC4Vz8`IG1Vm@4XC7+rizPVE8HSP`6s78Tm zxK=A<+Bm@*K(SqR;Bag_Vu=39exgJR?dj&N=I_|*ur%;XUTf>V9J_%>+7f)r<=h@z zifkkL6(E4(1#33i#FXC^-b4H=BxJE-S)vi(pLpfo(FpWo$8mBFC25nsdz2#~CynT# ztiYM7ICVv7tnSa_#zQ8?-eqPe}#Yt)ybSLk)Drwl8UNaXJ3>|y0r zZ!NDn`Eftd{FQ-TSqOV@QuKgOoZElRrMssS)rWa6D@$oWD}1{zoi=S^|4We^fsXts zvt6nW>w(8Yr`eAcb3oBi- zKGh16VV>xOOS+)#91XEu-VCpbXpGb2(<#7uCJ9?J+^RuZbbyRY=!ALUo)xdGrBX-F zRqt@HAYjUHPLmO+{!T-ia_%bgi#&VEcCnyPtMOZDpt8@$`T#A@Z*<4Z&UPN}=!yL) z@1UN^Pt$eS@JIT%>sL$FHm9$|V!AX(nQ23y+5L;}@AbWU(3wqSCg6{2k*3Ne`_cR_ zr9poD?fq~Qb$5Loh_nd0_8;?WULVpS1*=@}C)`y~rWU0&wWx7XA_TnkctKFoggt&1 zu`%L*`bFq0C|B{rH034qA&BHrQR_U-_4&EPAty2!DJMM&mk7<1P*ySi?B|;`_o`dt zW90S6t^(JBD+y|&#O?i;-Hp2=u4=Cucaq9AMF*_0+7dN?E z$`k44$&I_-^Gq^i487*xB{cS9$u@ywxL6+)Ed91AB7F+PmcY-#RE4t^TZkT-{BgbI z=34h@pgajVXwYq%ex_Qw>}#{|J+gr%WxXk~y;MbOTlz}gE9mSvUIAHS*oorwTI6w> z78Qk8-@-6_gAH!PQmc6{A!tEqC3~>6Qfhjevd-n7JS6S|wsbBPc%l-mEr}zYt-w9< z*!*B2UYg?)bc!-2wf-c>lAe1^Ju2^w4y*TuQVRjMm~*WR5p>l-nh>T^!Mn3_ zwTP|`xATTTl$)T1UooZHV-Hsv4|9ph&X7C@e&k?3_I%TEb(CMtUiJ>oI-bz^7_h|Qv`)(KkTFM(pQYNS!-vcme0E?kk6Da^1Q z6Hv@hPiWI&uYKx=X0pq0OFC%N4y`6V>Xh3P+Ng9?$qOiLwy>hEau2e)%w2q+(9}gY zvCVA?^=YU3O{7(HxI)6lb(x$JfmGJ zx{jgtZPjt7Q&Nw<04|2$rG+KW?f7;pI#JwiSTm zbk8)|>aHi>it*(lYPOszBFh-8-pu@|ZNb4wzf3aJ>?RC1?E>p7<>7E1i6Wy|OXe4Q z;OUb-_&EO z(dfq)z$%@5iT;`}&K{_K zR9^y*h%}(VwQqz-u$rm#2QFe2tY>@@3qBgz!hoK^YsmCZD3N*$-C@<1qt(A5tThvl zwouy}Z(@MIh1%nH#9AgbUg;Oc-xs)-+qMA7(X1zji2?h3g&cvCxW=Fg)k9GR8&%Y) ztAU^hFGWWKY(M%ad95EirL+m91<0*>^77x5u)}B@&G-C@Zjb~GJlzBQXl{m(ZV-Vc zrCrsN)A5x-KSk331&zl{wCYaW?&@;iELsmWm`u!RO+AWmAPR!LjWV*}6+0sLYk$-} zcPT!bTFSYZjPg-wTS|S6gm#=h6LFEed4Z#UEMfpB`5FdonN-nO4V9Sw( z6OYZEVo-u=zS;zk)T`vtX-Ad$wrSGT^ElHh%>Iu5$iiM&MjU+}N-h{}jn|XPr66`} zT2*Dfne@&wk?0>xrvq4%2L<(@sPsv3RNS02E$O#qUZ!h-{xXT|3@sO8bfAsvlPMlE z;s#TdAbztq^!UwZVYTmZde&>g9PCqvY^u!YHvq)PKnA6IDkE!v?)1Kpgyfa#1(6Ih z4Bxb!^$?R+M9_|k&&A(ZVoWIwenR`0lEkdw@IQ)ngwjFa?nhKD>m>e25L=L%dzG3g z!9u9{sZJk`b!SlYT4uXK*0gs!Wg5a@_pqdT&!IsXD~1PD+wedHrpP!@Lm%S`1x2mX z;KS%bU;+oOTorWUem0aD#4R<{!_J|0#=jA&s1dMMJFO zWB_?FAT;&>jwLKIhlYW9BDAECFl7iA`HU#JPbyx5hd{-UmWnZHWQlP_Z9|`Rfq&mE$a=hev2sE7B(t0DSfp#NOocCMwots9!(pq~}sp zgsA^|2cnouT35M$Pab;Zb}e0Ud;U-v8&-$BZHr9rf{6$YTd5}DR;!aGGmvgS(4I;C zQ9rM#C42txF|3*5TJC11nY!iNId!)l!*=qyZg0;t(YdliYi#MR zXb;tA?8C&np>)Alu8?2BLy(Le78pQ^?${)YP&~0Dhr^J-E#%A@<%qE$`w+rAs7ixS z8>X9}*PeRDN$Hbst&Em$fw;cMX=m3*Q!K54o$*9ZbD>LvlN~gmtmi1;+11%2ZY(Y7 z$?L!dne>0*(I zU0!DQKh#0s<9j9+K|ttCkyIqFxYF|6D*Fu0^ruDT*}nyJX7ou?_A~Jn(MUan42{xQ zue_U2%NyM@3k__r(uY)r;b2A^%`oBLBS{BATgt)(mB#26?V5kh$cEf&CxQcZYq}P^ zTwJ{qlUjpu13@|DJh~8345Casrdo@%4XW0zL9CW!%ZJ35x133gF{5BQLe`i zPNJzk1E^jETfLnu5NW5FEU|6Zk1&|kUvig@v6~845~|@LUP!O$#0_j-#;l1yw1WJn zlhWv7`mK9QT@i*W;15b<0VMSyL|LzA)h6m6c;UhS)!p7_j(_~)_CY1*l6EwsbS4gq`r7gi9 zzruVa+di0^AOt{l;ByAO>ydtWW?$TwG&ZT+imFK8g0_ZweC@{s)ouWiVnu za|-W!_)-f~X`tk|M6xP`GiD0)BDHto-Yp>K`le#s6eZaV-nYS;L=_N-#L*0IuBrMZ zw|->DK9A_a(J;WesLd}A_`QVE_g9$49X7^TAo`^hy^YRFj;ezs{_6qsH6m`-cWI*v ziX5l#d@C~^I|*pjw)yeCAz)9XYHsq)%3{EX=pPM)By(Fkd%I2+jLAqe!MOhYE>vv~ z={kR4z4Sv0hTD)$fJ06eL6!keDv6z!l;eL81K(zo_@jpTz`RAg1Go;1oSF~Iwbck1 zj_13~4CVZBBN}9Ru^P*POG)^zy{yUpsuA0RTR8)l!z7Xmj5_&N8hZq@>>Q=F57!5` zr3&>4?g09BSh3dkRbBpKO)G5|m_g0Q#x#D9tU9RiKT&lmzreI2LFc6n$qgJx+=F2f z%`=#b4dzdhxGf&PhQL2U6_?Z$sHx6^nX+U>$KiAaV+Z+kY1+Tga_z8IwBFJ_rW|b3 zMVHiE4ovJgJni7iyhNAOVmFJ#LqT(K=c5TQmF1>I$>_a9ZP?C-^BXzhG|eNc)gPuR zFC(I;bgX0P#yZXdNdn$~Jf#9y^Yd;x&GxV^%&Hxk-O#T*BsUO)>{ld&fk-KN(;6Yt zxJ|9nzCe%SKWw|M8KU; z{O^T&mDeSs<-0PP{=v-+(VZWr7z++xzAVc_@mH%xCUe&WLRt%=?Np&A>?UylE^^pZ z{YpS{VpTjMxsdDP$&zl2yE>b%+=ZQHQTisbx~_!WkqGhtoC^J-BRa7{IFc(m6Z?mL z%p90PRX)`R*{}MoEpxUr=V0@2)=}ml=`O;c`CY(PNZUZCi6MIc)^+q`v~59692^s6@j97DmfImTNU+C))K>y$3^0 z)+&u3 zaz8}v5-{a6t!v>{07Dh15h%VBTtUb&lGF4)Gzgbs-{vDY_ zij5#r_un>Loe=lgdB`(lGnJK#Itk~cbi~Jdilk4{>i*n$?5+j*^>)4^%#_B;l%if$ zbg`sm0xavtG?tdQc)8Hbrf}!9o^+5sGjMP;TN{8_J9;CFM*iKFH5FJ=&k2)8Dd&K~ zGSGu}VUJ;|@875uaR8)R*wdlh$~pLG4BWIB53JGt#2PlLJ)V{**#9(2G0NoPAmvFMx4AnH&Ey_#{z!yg-^dD2 zHJr_9Lq`e-$PiYGvqA;d7=fU6Ed zdkY+h!EEhBzlOilcl5-9Aa&G;xt?Pz1QWl}_nyjVRWzinh~50WI-0Io25(BkB4sJerF|G;)lQnk1QP&dd?I8m>b$qX@6-r0 zRjk=9JrtpkXCA!GlO-ryAdXgu5G<_|Y_=7l=to|x!IYmFTrVICC1G^tJe?Iqnqz^= z+xw)P1|iCMhSM`BG|Ll76f+hi)_y&%ojze46v~p!S;0Gh$n*2p($V$n-GLo?0F+78tL<26zj`#q_Iy!D1S`Len`6hC|u%L+*gi?Q(JV!U~E)Yt>@T?O<-N zpt0<3gJTL{C5;J!HK1eh3)&XS8H+(VQ5!o&S%#QjDmPiFd9OCA0iYSQevZjRdrwyz zAah8et7@=Kkl*wU)poRer`pv#vwqEy9c?Pcu*;b$j3|&spbL8a!xgq!aFK) z^@f3<1!{IK=L1|kiKL?chbw`CgcOB*o>X43ex5Y^>NX8mkk_pIRoDzl{{eg4vw#2S zQM|AFQTEmwy;j-FR>bo(^yrJ@wjleL`}n$Joc!3qsP(+s*v}4@TSz4)`Fo<`2yG1MRhIMYs)5WacWaD>p&Gcl46!E8#Ii(Z+TlF9Hiq z9%Z-jwNHVZ>wQ~gTX8{4UvFd1DsaL?j0B_iFanl+3P7~D zR93|UU}xvUj%`nN>558h#9#+7060v6YmuNKOIOS%(zkDR+-=rAsM54k6|4cX=uziDcPf9)4;D2r7nIlWyIWA zkyn($(4Kb}`(lV5C_W3onD}8hW|J}@LYQ~sAazb|6ogf7q@1mvawlfHO4U#f8$b;d z`$c2EA$3)=m`9&lf0lbOe+!>6CeFfKG9+(}XpdA?OAs~RNiuB^| z4QuE!lkt1K@(xR)8&|$_b!q^r$Snu8ZoMEg)~?U2Pcp1JhY+UM{GuV}-7#i5)K$w6y-q!dtRtjO7l|yf!_tC5 z$QUe*>bY+!##-dtbo|>Xr#Q&9t=dlLPB%JLH*A*D_QP~nimBmS_5Vbx&+lO42wJY(qgs;MCb$d24M%!&g_OTm+amUI#3 zq*R-Jn0321{GnCjNaFvVhar@5h3ap@gk*!u{S61zA@4AH(p~eUI*Qe9nd^+?+WZj* za(^E8&+gr~$vw8Lkw-78&pn>_FUO!|x}F*n^ zi}rwpP4(?hf6&sn^RRlJPM$R)vG#WXmcCXU9vw`bX$!3rA6(X@JbXmTgg9G4mfTh= zYZG`pcqc2>@ipXN*JT-1?%m0TbPI}#@mFSiX=L0`m4P_DJNs9`^I>k7Y zX@9$0-5z(b9gIO()+H7;J5ZY@1zL4=Zt z=?J;+GSCyKnP@$@*Z0KfVm$R|kpXvl@IMDC@RSH9t@kKtFUgn6{5r8T0zsGr#B zyH&TKqiQ_)TM!6dS&{me?Dzx2!sLTQIU(^Fjc`3OH?hu%R*@;`QtE#YDAK#s_N^~h z>mga$&SEt-Kxm5g%2_-E4Os-GwDDz_2@YJuMsyfT5c`FX04dCCkyqzVAgQO_ruuAF zevws|*q$%$U#;EfTdCKg#|NF4ceWmk6}z1rip>@Dk~oJS%WM#a@R0pNXj`|;TF$YgEP5Ho(9*PK86%$R&-Fcb|Vba|AU~v`~pwjDh`++ zFJ}EzZaAWRjh*q+4>O$Pgf>4LCP5nuXWsL8KY!9v6P#fP$A)TnVa{sJaB>9p-?CE&aq@|@Dly3u^E++U4)X-Xy_vu48T6R@qY<8brHFe}|HG-ek zDqexJOZ-l?tuN2~efr3@$AyreYAKReRWVxgKp6B_oy8B~-$~<@p*J0In&R?SkG!h% z7eW@xvfo{&8y!|p$?B3e;!`H=oh2Jytm(X1u$4Es%km4u1v$neXNF3!W#ZD<*A%y? z*T9+ED1GQgqp=_l-4SOw_(~kaU1!;WINP}KPbfdx`A}9dz`60K#%&{$rMe(edK+rC zU!Aiv%{LK5bAIiu)Mk2`a?EtSnh9?*T9#;nH`14X4j<*gC?R)FKk8Q-UkTdTbe#wS zey|GW>S5X2s*}|c7UN(sK zvDBz?L7iIs@XZ!^cMHxM9G%{Yn|@LCJj0lEFr--yUDSV8dEWna&-?s1$bC@2vp*ev zJ9Qh`RJ;L0?=lk=Z)C(CEhWYAaWj?C@MEa%`1VI=I&Tt~l39oEM)bg2HOAKK$Dl;U2|wnZc@ua? zO9pwWc7L1o7Kt>qmLIX>pk{^Imsn@>XisY8FVaq^UIV}2CgUoc?ApN$T*JKal2Eoq z*?<#GyEZML8-h8PBlBdea;U|&(4%K&-ppsYq5cHB2$rLj@uIP&2Dac89F;D-&JrDu zU8`6fc8>_l-+GTtX}-3NM|J0I{yS0K8z?0u9FW!~rHW1j$`Z&od)JN%^lvxWG(tOhsf{Y{gCNc#Sf?xJx>I(?Lu;gc|+qo1#dW9i(GLWKyx79DeX0 zTlJ1>$~l6M=Rd`S3W0BdE!7%IBfpZVQJ{+*4oL;KIskjztKH!ktN?IOadBBXMANL2 z$D|kIuWw8e&4QH-=QS1vn?Lg(N~>*E1rqZb@TeUDhp6~dob_!<6tXW3ZH(F0i{3k? z@)4KK@6G;Z7n>HXZz~p?J?jHWzLIs?-&K|bP6kR+o6fcr$!6Uc>v-dFVbUUVD^5En zZc(jEVMi881?hJ9Q#cWOFX(Fl;ENxmQpp!bO%UVU+Ke(Y6i|a3RXRXhIn#cduympd z18m9QuVM_WqU1u;M}k~qJ7+Z!;UR#L+w3Qx$3!U}LV&>{iWdLt%8Da-)&J-;6!Btp z{0DLE@M`#4JK5L4m+*NJy~vWRc1Nf}^m|}~{7!11eW#Tv{`&$-I93G(+9p>zX`S?# zmw~{dGDT}-m!Nv_cZKyO5?dS%NBBev$`LVQ%(lCJC6|p1f^fF0a&Y9eT|B!CMnS{C zI`)@;+loT^1kcRbD0XUc{&ZEyDJw#es*_@SpLVJ+hurj}In`-$u_?*#q~cOr%&o{3 z3=B(nmg5;>E!kPiS$HV$Y*7f zPp%@DNBi&$#mW??KJU$%5n5q9_#e**rWcf9FJF;MgS>IBp2-Q>hxKjeah$Q1IqI)^ z6X{0n3*=4PN^3n;1kZbK4;iN%*N)48s^@sCU0F!so}px~oP^L1Dwi&0)jkj_9`qupC7;>! zU7%X?=RvST?8$)UVHzDA{OpY|z@AsR6!sKycvoM>I}CbqGA=9gE=Gl~FRL!zY;?#Y zEKh=`ftph@yrqOAAaGMIj`P}CPf4%=exIkr&q!)=<5>fJi+fadee8)1ZY*}BW;1V# z#9p9k#WnBJ@wKS`B<;&sG4?(k3dx6yF|EkkV<()dLgkuRqJ}KVT!Dv$*AY*^utAKK zHsKVx4dglg&G@9$|A6yY_Mcpye9Gv~WR@^yK%5vyM$Xl8tc#NMCF1WS2p4e#X2e7Z z(rLm(zlYp!%nr#YcI4S{!x!mtmpsMP5^xR)o(#OP&}asxr+=vobtpdQ*JxV^~<)Ed6?(EnEy~rXs zB3VQEF1USfD#Cc)a4spd#}3%w3Cm-rZu8DqlpuG>dJ!0069mu-lpgId(Fvn5e!qz` zR~4&@huIEt4&Me@9HD)$n;rRiC1QDC{S7B!>k=wy|FQqV> zR8}}l0y+B$scwe^DMdWLAP#WwQFf-mJf&Zs?}ta-#{M??%0Lo%RK|P! zv$wV}FAbZzuKwR&s0urCJ1}FRW4Up+>yTES!{=n!&lxm2E;x788@2f*&9Lxc>W2EM zs7;aB-86!ez=e81J+wnnzS*>8Hp&;&h5v;m|NBMrAQgq5+4f82cg&xBP!QDxvQw85;uUO& zqc}U%U{t*tE%yzIBC843HaKW>dQ6}V5_J7bLrszZ+Hphu>V?SNu~X>V2hvx9STnIz z%9W`z64#f2!Z6z`0w}Q0z68g9V{SC=g-fw=3cdgTSTnZZm3G@;cwL~KcMFbqho_b>F?Cru02Uqo zA0!s~f2zxY=uIv5=f(f`tLQ-V|M%JNA3rjn;hn%y2H+4K_ zQ3yeCppl@7@bSW>n%dQO6AA-c5j?shBhybsbZBP>_5WOv8fv=z+mRx>;!Lun;{>*Z z?Z-DJ@f&C0Mw0%^V)y!EBC|twO2}sNyoQtUlFqu*vZo9Ug07cdqs@_W}y7lEsh;+ zmjy$@a6#O1*khts-L`N+7oZrqyd6}8gp6Tn6p|i zJ1EKutR*Fm!eJu{a8c$}s5(r%r{Gbx+$GK*uPhg97AnIJ z=xe@rrs!gGSF{r>aVj5D?Yn~sb*=Pt_yml*qGKZmR|p6u7$E4#Q}0%Dm*6l&jKHT{ z^5Eq@x}B0(DYJ@XbqAn~F1a7EOYNi2o{bB)Xpg@7<160jE1wTg@G_xWqrr~O3Sw1q z&Qqc;`QQtK5k);Ho0JWlws|4$i6$2jkAmOEV$LP#S)wvJeq)8v-A7>OcW$gSvvY*( zsGy(-I=_cbBzEi3Nc^xj&2nN&Iy{YaMCtO>JL<^Ye{Zr*%u}@iuqZyk@r@#>&QJ!PdO`kCQoK# zo`3=f>BQH}G!{BCY6GOu>92|%69e~fi0aIRM|BX7r(9rnm#@`fGn7Ht&NR~7N}aC8 z7y}cyY{~0Wo;z-lQ_(CnG3COKd_a6Ay)W2s<~?y#R3kLOG@XXTYu!3yR2;3WJ|H^y zMg_zljhU}u;qiq>JOL@xe%j#E5`F5hLN95=s_c< zr)@CMIaTaLxzwL~`?dZvcRH_cROSD4Y+p}a{w_3b@(s_4 zhaGg~?c=7i7ogkRRi%}6UUHup@Wi6>fp9r{>bl+As2}7bMMhp5=}6`HiFjr}Ls8_q z!dhO78jpgNP>ZFY@gy+XKgz6m7vW*@JK~(n`1x$)EIeljN+& zM!(YWud2UVHgv~PHUKc?s348t@C$k$oNe_3UW2|qFv`H2p7nqZW&ETnhzL8v&Q#oD9s zOu@dF=QvIZgqW6h(ZLJyvL~eA8HbDw&LURX-iu^&4 zs*D*_<6!0P4HIx%f59eKQzRP8bliE9)Sa|YmFyPv)^#4>Mu*UBvY<6dops$4&{{R} z0Qy_!ZP#G!dl5P??Z}2K!b@SgAQj`ume0dJ1jtdQ284KkZXg3ll&tysG8NOtb5c`j zI7BGF;b7=anNGe;1QWK@5`j@Cp4GE?dZR6t8U^*8&&L^FsukeF`mvb|Pn_vW zJ=c~39ZDxWv34KA0V@+7(dQdV{ZjGl;C=QLg`vN7jFS`XT@}_jqw6PS?(|OaJ59aF zM4hl23Tp?@sY}%TU;m^e#aweC@s4WB%xS}}SEZ>9qo<@|97ioBG1L#*$z`TW=F+G9 zhWlAA8g;_*hScvm*b=!nAUD>O08Z$n(c5m2JoKC7zqylkpe2Z+$cSKo^=SgMnBJ4& zZBg0kYRbu)4T1PDhGOp%8(=7L^yg-|GI8y0#7NLUvt>H-`ljF~UTOL~ZnKTPtkJx) zLhKx$AdH!1jbzT~kLZ|lb2h>J0m)r+$l?42UrJNGRz|xuw}eMrb3h)P z_yJHh21>XbNx(Xn$yS`cIiKV1XtlSGHqJ z4YcgkaZ|5mdl5|R4zW%)!y8sQ+X}1L2+`oxp%@seSg)K|V>i*bi5ph<0^iR~qV?h~ z+Pm@}L@TZV9g%mqvklKpp*wP(Wk>07d-)1GGLNd-gq8~AQr0FeY8;&ScHl=)$-ygq zy6%AVE;gcIO${5q)pA$W>|@1_BD6dp%bbZ_IA?;flRj(ErB`!Xl`v%gcle4xd&C*G zL`U|`0T(F~t@LZ>j1^sDyvbVME3~iNKS-U|%zO1K@cO0$$(Zee72GfrOST-0@u~WR zhA4^`%B&bWCvRNE%IJ1US@l6Rh8G;#N4_uK}c=ONvA0FVv5Eu_vTZPX)<;Pei zK{}TcoW0`^Cs#!8X%|~OyiMNjCSfxDit<1=9ZHVQa%;AVB#7T7F5QD|5d|)2&r$5v z6ix+LtxsnFE&|PO9l@o|%A&_=#A?FNbe{N{Q&K36(jSQxwj8EDTQ{Io+Mh3^J5lAq z(OiVfU~5^1VpLOKWexp?kkhy->m`}+2qYyme zLbITBTqy<+0%x2uiI@!^37j#&;lL`>SXP;a2>sj3ig<8i%m32#knq>R+wJOP=FP9G zJ^@zW^M#=yOz!B|Z>nXn&u~vR9pOsl_-8Rk}A8{?Ux=2`LfiLSVv`K{BHQABy7~hW*qrYI`EPG z1*uEF!Yv-Ad_K-9yt?V}<_D`$XBCgwAY0-SubYfNALZPYrC$3fGvaG>AF;OPcrw%{ zd+^6QO6sU~qWE!&9e=HlYlQRMaLkbc!L2N~%OSHdymrhAu^C4g+76}l6Z1T7HC4!C z{}Eonh@7=%K%B8{Z0*?i0A1+Ut|hKE^C0d}#?LF{+!&X0A_js8uJ^gsMx>*e+LO<6 zqBoGE6#*U#V!0+==GoHJ;hVt)NW*w}u`N4G<5>xPPWbvxwWkgr(14~>l@}e!1}t^^ zxht~Yt}Z)ju@9U*mXh?z2K%OJe1y0^OPERExhMg)PR^FEDuff$^ZHgmz6@ca_eIfr z&ZS!_psDCUbyYj&L7BtC%FV}~>gb<$11GOBJp&rHxnP6+3QOX<#?yN}*3#u^TU@k+ zS0CGKWu<$kkU|;s9c%EWM!iAxKhr;aVizEVMTIM6k^LOV6?L^CjcpVo7@ORhTZYCJ z6^-GIy*S$4VGljSC;i$n^f0AOob?HDTvA#W1+W7r*oJ!Sz+H}Utz}n~KxG+tVn(bi zsiU!GFilY|#laF;V2xHGaLm&x=1aQqp`&m^is$8%0^2ij1GgJ(+05Ho*yk>TK4SZq zCyv?>D~ZEaalvrisB2W~3dgOk)EZG%!$Ni z!^4tw*JCeNbYXAW4gA4LxU za9dOGufsM!Zi4)8MIROH5wdnC3*U6?t61(wUpxC5Xv~EWenx(LSrj1FQDa@DxWTru zxTVc)@lz*^Q2kI+I;m(q7Gla}j)~KFLP`V*7DW#xWLe}>IBHWanUed`Ju?X23{HU1K1 z>3Wvp!o#Gs8fXrH%k2~rgdyW6z49grNhj*@vLR27#62hEwqQZHFFnBjAauSKigT5J z{L(L#)`dI=QCJSlHfWhTR|u)V?=TLgS<*6;7#mMlf%lEqXlEe2**JXcXxzUH5GY7i z@+3ysmu9^>Y&D9n$&AOU-{V#4k$1=hjqdFcXhVHxce#`)x>Nj&G&0+B_ay0l)i>gM znP&YyaBI=~t^m-m%6e@X98*+nF#49FG(vC%_Ig2bk6&ClEeU^=lC%GP(f4&yru&~& z-v1gjB*fQ&_y11H|7Vr=zqAC5|Fg@=h&w)px_kYNNhS(4uRSD!G96%S>+j7Jnd8CV4ddA zRQ0fEVQAs_A%i}S$rJUQj8_q-4XIT;en=nN+~#BBMhkrTF7s}ZAdNz`%37SrtNi<`u?MOajoH7#Uktfrt_ z4m&Nc`CN4N`@#(pZh}gg%Y!o#XZVlN z@G^Aoufef=?u)40!5XX*(T$Mvbz1U)gKsg$*%kAIt09V5g-j)fJyVPe?YEUcwChjo9V77$%6cgGq&zXnGyNp9hQwYmM<`x2 zL>W5HJ_I4l9tq>CI1-5q`tfTF+DY^X3{zEpc`>8lrGz+WGyvT5>~2T}`dqWxRG` zJo(fsVR=L(NLb`KH~0aQ=$onj0peK8djk@=dSg3vZ;^f28dzliPsM>u#^9Zo=8 z##)xDK%~kliEC4RucMse6T5*QvOgHjPQ~0Ggqu(J;V+ElGcm$%486YuE6u<)dvgL{ zl%@djOB?D1%zXI~XRAg~x~s_d!dEI52X<8#j4hk(!XIKf%&Y|o8(&_iV-OTB7iJg@ z8~XK|co`9D74zozPE6ru{hrtHMuSCZbIWwFl`CDM>iCmM*IJbN)yO7$%3O3ktiO|G zhc}O_vd;P;h(swG4pI7|i1XvI8JNRE;lxLC#N4uY7mIoJJ`_Viv>2;}%@$G)sf2<&74U=L)k00`tAvI15zb($Ohw#A zDU~fPKve=7=&*I1$gKx6Gw6ALI|5xwAjdbgEMPK;jF-8OPuxR0zm=aWp>*!IXUhogb9Zs0k%5Pm_SJD3}ES@*fc{ECM4&R~Q^j24)jPCkUkg{2LVr zCfP%^!3qFt!T+Wh2Dvy^A^MvO*{ll(r5_@O6XFT>n=GNzcgukftAoi!QXhSWvI~=p@50lG_9!pFeN>!z41?1yFc+aaO*BUU?7XtemJwbn5xzf z6Jo(blH+C+DIErCDTzv(v8lrB3yoNXhWTxRYTIj=WOq+UfU7|$Wmjavx=vA?#t80} zM2Cu4TS%;Uwl+vcY~KX4#6UlKLfRY|+qruBw;Sb}_YJ4u!zQB3F*y)iRfqbNv3Qm+ z4;Ew~B~zve7M?7E0#;#7{rFYUxm^l2GlGey4DG{q{d8FJAvF(0)UlGs$v*gQ?7F|f)!Ui zRV|~vv)3*C2wf=wwYCWEAYlRll`TND$6ZJD1-`mgy>i1zJ8|$2CzcZe|vx!lPK^zF>Gh=CD2@e52@r{m`4`;BFsjuVbh= zVJD_ChWUj}VEdMGTmZcl{fDS@5vR@IBA~X&t9UGznOI2!a&kQ)-m^Wz!GIa;zm5T7ycJo+;xTL-qItn?J|Q8rAp z+!;bsDC252bBx7Pdv`^FgWH)vG}U+L?d*D#lv}T)>OBO)n=ZX{Pdrtif80FQO;Tl* zq*Y;*v+G5YmLk9`=e?kruZT z2|)pE2XADQwxBxU4*>&=W|&Hqy9Q+ezy#$~6decQA^|TCQIvizNqs;70CYfc0x;qi z#}OC^l#0aQpjj@*72af2eEYqKh-zSRbjhr~d$^Sxz=_{{T`kQa6bNN)toGU>onm zH03fd11%DeaNq`Q=z<(i6E?u({{T>kh=&GG!-(I4_%i7VH5Jin_ma5yfI&srZ-K3B z^6uqD7%JO@RaU9;OBPNV1bHuAJM7Y80qK%9-j-P}ivVxKmdAd5&dH z7mt2o#W)e;j%CZkh<<^UT-Sc1F<{Yqd5)OQp5{m~fzDna;kdP{`kBVcA_pi#9%7~x zARXQf##vcSWt6qB8+PUt00jXm^7`mb9}Gf)Y_ru&Gi=Lk<%>kT%EYS>Oit8HtW2+R zu`%-eYbg|%h<*ru34t!qrH5_uZ_#0XFmbt=fgI>*Hru0YB$MC)dc#?A_=nBXH+O+vv_Eqm z&LJtHgNrHt#CL&Q)XKehLu0t6?NG`N;&r_M1DE+GzwC$B#u8Gpso z>7XwO$n?Y0q2~mHm@iyv8x&Zp7;kv<2yvFY-5NY`7-%dK_(O_em5JG-Hr3varJ)(z z{y>|;gvk4Mo$D>;2kuOJ@kj$?KWPB@rdNM(v+p^zM=m&?=u zgo<%ECYd%6Wc-Stptm#x0FhU@aBeCJ++wVEGf%~i*g2bu^2G4t#Sa*X@-gc^;t-E1 zM*gWr*Vo_}K*VWmwjr3FwG(`zXjhNZZkljDQ2r%=?nwBwvda`c6!R_hNdn&sPyxW~ z5AI}IasEUxdIuNo8e_s=!Ww4q>-P_z1yAZE_7#8F~3$>PAxQ!U^9ZGDo zLz={3v7)L~V`?wZ%Y<+*0H>*7Bo+oTLhMSxd+6nZ{tTjZtv*SAg_jmwzxc5Zh>eCXr>VkUxahvjMk(V$jGuW~qw^C5@~`N# znk^weG6RWq`f+SV_=SJ+P+)~|9tdTnbSKbMHkCP0#1L?c`kD!GaDBA^XFMVL7Y%iI zcl(Ae zo93@B?m3*`j!MTYA7ck|aJoU0De+IJs{Z91%5;Q01T@tw4{rguGMW|vsF!J{{T->hE;jCsT%r}SZ(kD zR_xRO;;A`3nq`9Z{$*K>*8&fR^p(ovfvZ!(jXF;iM6tFb=9X39H~6^99Ljer@9}?x z7T}MbJs6)6M<0ZY5J4?eo(TR#)ORhuuQd8~$IWA`Za+x0XLZdZPkT3NfCGOCdoiScv_( zD_~U9N?N*uSa9f&4ge4F2#~oI0hTKJdTJG8uPMIL{{XQj9N}7dM%i)d9g_mIQQ&2_y-UfX4+Wg{P%bL@$NeCR>o6#XbtsuN3uYtvmjnwc z@WM+n$fH!4+0+e0UA2tNSRJcxXQ_bRY0(5zkL(v{MJxv)$?{9GqL3GA4=f0v@p;F% zAxHNmxQB?wFk4vXTobtEsF6B4BYR&9k2IAO6A;jL%oG|i{{RMpSS?#u7g@s@=Rr{L@U8B;x{6#7-oIn|} z$66A|Xi(_4IE*p|`6fAo_i&M1*UT_G>g>aI<01T(UU^@(Kfy&5Aq(pSPR1=jx0=fc ztBqU@fQ{QaSUsT#1tnCkK@c&_T1udSS&3+tMMPHEqd4kT7dWq}S#{K|8F`LLqrY3(K!tD71!AWvQHn3rIy8yfJU#_NA}r87~p?F0=+H!nyFcK zx~O`)fq@eEo}*XT57dq09i(7r!TuC6z~Y1Zfw7K@C(j}NDYU`c`%i!dA-c|0zfkq7 z$wL+uVH=@gZUL))w8_kB0|5l)z71ZYgm9vPgixJ|>ue!p+Fy(R0D}QVf1<$xYM3ti z+_L=YXqRmwM6;EPcz^0iVRUg5PCC;fG7_;zT;L30IWnTwVyLX_bl$k4o~}w3MrXnmJ6vt(27Er;$GCX4kOv&@;PBH zof%->CEQoJd&4bTr%cAO;Oun}6$ixs0J+W*8?<6$aF<@-0S2z4(N2<4Q?%|-0=CLj zOoxauwiqxrhy>O2f`G^y5rC5a0O0l{Te1nrp5r5eDEWUI7jD9Qj7Hkzf6$OzxyCQu zpf|kpKBA7|l#zM5Me&Bh!SYOk$6^ornfON0{V~Pkw*5^ZIKlnSaX3HHBi-ZrgtWzn zM2rBq5A8dc;93-WXw~#a3maU&aiPIYbm9F()=n963wSh~7>>h`11tXk+^j2Trc$Xm z_=+&{*NE>~FhAH7QjUSRU>&*xcL)&d((6U{EwY?47jL*L0a~jq++cJI*CSN?NZ3!R1hM-^^So? zT1u}hcXk1*%s_M)@iIilgNQ!#Jj)gi1#V*5)&w@BFh?K{a|G9Ns>W)@;PDL&h*JjT z{{X{mABg3@L_7d+MjK|*1L2!mY^UsJmbv{+)N`mFjNn%lA9Yh9%^V*yC3VBY+cH+= zSM{mEhiUqTCsTv_oSkrO_Zocv02AnfX?`qCa~xoOM?b6|>p%L1xQVl|4MXN%XeErv z59QmwCJD{roB^9UVmBa`qV<;Thi?(+&;WiFz;HzQFx272Fp|Y(hrwX{!%G#qMf+}; z4eu1}csxo)gsT*6?y~uq0x6M8FQx`=iXpS$Hz}9{&|sKFh?te;16htQ!9^&vWuvhDLk#{fe{+^D3x3&~nYRbjy^D7L z0CSP8E`Ep&H!L`0A8P*qxF{$USgM%@aR^&8e?v_L2S6wY45ACu^tryJQ^2)kq^CbH zpaB=W#+2*416ahqC3Of`R~Cl75d|VpSAcZ_RsR5bgFM34DOCxS=pfIOQ+sc>{*j=i zc&I4CX-Qy2FrcJInFq`_N%$0bCo<6Rj3*9L(xa&4$JFsq`;3MU=9qrqVRa6KuYz01 zOp(bHQwuE>>NyA-?a>EBzG^sm!CdAx!)Myx)}@h6#93Lqsv)fv4%AhIUH77O$SVU? zy|i4)#MtpIiWOr6Q)2`XR^awWT%c*1o8zcuJ~%N=p>c2;aA<{s-XU?6Df2MUOBk*& z!(n~H;9paYNv{(`C7u2iG59ClRM95UKcSi#xBlSAyZK+Hqxw0dzoIwi3R2##2k)Zq z`7+bz`GmrNaM|@768QfBYIEJ%e%XR!D|hN-5OIg@5t#C>D16u-;Vi)POR$aoInOAHko0X#$uo=gz^%Y)bDm?fl!VCAS&5YCME85b#V z1_T?5SUzL>zUJss-E&AU)LpKD{{3Ot`~rW%CFQI2=^ZAWt$$gIz?ca5GP;|~Ebv3v z`2MjpN)82+NDeW7aoOJve%LJ%&EEQjZv@r(VTAb!l0cOJyei`uM~D9aQ3W5mAH>&P zO#EjL#B}kVoe`Ng#lxxSeV&*@6QE_)4tbeXIHpV&4JbQcd>E7z;NPg6qLx)P#8YbS zLsAA(+Rsrynf4S@k!l_pLg`#5F&b7Tc!40R6(P{-Ah7b1=?dl)piRUquOx9rkj(^E zl~}g?R3}8W_ZBgP7|awi7}!cjhv0wvz93S_fz-UFVM|AV4%Qcza_w!IBR|$%P6F2E zphL?aq=9i14h=@C;XkQD)JvIeVUtl1317HIjG)ll_!E{74mIj|S*Gf=wi?EM18`MdF@A@wdX!ZdoH z-lWL?03oxY%uB9#48KidQpBYGL@|_Hr2+%2A*LC#43Lo~Fl{g(+~tiM!aW5rfbRpl zpohZ2L}3$&v?43xgZ;S26of%x&Ih5Pug0&pIG`VbG@d%W#@+u@)BE@@KLfjG_02tCP%d zTsa2)EXRP{sC$Wixg*2IvSQ4DRbo2;AgY+iR`UlEX<)e#h3$xupJTQZDq!$VPAH~%|_HuDe1Ov>xQj3-x9-y9q|Dy zr0h-+!f?QqW%j`6L>6izMV2q9*eakGx_~4qyrgm&23{=)O0-E@MqvHD z%;_rINA}$KVS%Gu)Fr8vLCA1F*HAtH0B{Eof*cB9<|fi>631{B80`9G-}WaA?mBfD z*eGQ|VQdAcq>EvZ)xhnc*^Sl)VxY*>Xtx}EK!(>1?XjI`TI*84G%hkM%}2k%Im7t! z#Kms^0L*2{OO}W4aSj%`{_ICW-(UVSCY`wcg%Ye*#peDX#suoma~A*w8@8o?$Tt*T zR+aP?##QZTF=5w{5*^~(m2B;dn~ir`uidJMx@F*>Z5ZxTU> z8xJzT5UhN{PE5YgK4Fb4*#@m9oI8odVhzQ^wlOB^lwzZaWHQ8jlQJW2p%Ew$Lf!Wm zLIJ2>tlZ_LL@V+(CZCXI8nf@|Hb-d|TUbJ|Yx~9~f}UT}MZD+uWKOBHiu%kpfQ&B$C=!vJ`bz+=xLOAC%gs4&#+0C;%nK|_xZAyR2wCGd`f&=J zw+E(yD1r@FKB+7V)>!`lM84RWFMYtF+QTP8Jp<~X+nevOmoEPR69g&`{WlV(H>7`* z`xZ^UU^@c!H5AHJ!b}^!Xbrap(Ro%(0`e;*^H6)DFmYbx){SzCmTuu_0fW5eBUeX^ zOSKC%xL08ZEVl~Etv>gUOskoBoud<`NSTcg&9|>XNKofd%iFT=dWM5(8+wmL{35Ga zWtdyh5KjiN4v-pvr=5;rT9hkYrt{pVXoC&S0W7wRwfK#`0mO06CZ0KkyHLFqo4JdN z)H4h?h^vUAir!sEtpT+(zZjSNy1!nS)w0Egz3YMPBBX+C{tZ;Q? zz1k#DHuSj#{{SN013^@qco~ZUJeB^~QDi#)lvoF7pSXpeGiTg5L3=)fsc?;tAXI&K z)46!$Kb~NuykL!G)r?2xT(Nin`(p{kKHF-8GD=MwC8lZD0T}NNCg7M|tV}={T9g~v z;`0b9SE4ns^A~v%APW&xjUSlN0Ov6Rz8p$K!GMk+w|H7FW*L6vn@rYbK7=+F+T_0T283mjHwWPBfkQPf^z{3tV$>IZ<>p!2 z{uTbuMiBn-&qv|@nB1=Iugq5D6y$oitS!mY%M4F*b~p>`{v?e3qm9v=w_HbPu*8%R z1(`N8Q6@DR*R&Q{vE~)F8!MFtwBBN&g|{53usA$Qh*nVq^>Hht9=;%DkPNRpLuw&! zP5NQcd_oG=nc9~9!wMni`I)G1j-s1g=aw-)#}S;1X59EB0)3D09v+HfwVs3niXRTm;k(~h_CCRbt}l> zhj>TGs6tZ-znPXAWshtUAgfgPVi{Qx&?q*O5uAn~3t9-;5I$oy#qI-CaTrkX)LX!7 z*b=^3W+r7tw=oyhL02$f+o`hVKqfI#j-yoBD9p?mI8b0l5yYdxZ2^!72dFNY#msXm zS`H#v3oT(hM*jc+57_P*fV?^RP#Y@C{RCOj)G7H#X&e{wQE9$^-9Q#QC_bfh0c}O{ z#fftxkzVr;&B4WF&MB6ZtB%`4+`6OTxa!O<+}Sq8d@wsu#HDoxkft3$-9{Hh(A&&w ziq(gYEF!L|g^+mExaM?RC92S>533^0u9tTFMY$dU{{T?5e{fXeq(RB(TS78gd7R=Pa&yiL&09YiofV^;E6$bprN(g^3NClEM zfdEy+d`{tz9CuROZ!<;r0T3%jxk}O-AlHU@h6C-lXX-nI0x87f5zRA(xDyE~2)yqZ z1Kxzzw(+6wL`u2K`r*MFsPJJux|%EeX#3Oxq3$0;8suJ*@q3y3D-rKf(N%!TVU{*8 z<(1UB;@1pv#cm+0EubfxtoJDoBRVV!xHh?|Rpm8ZLX|Im_AzYne&tm|$#A@~;i`Gb zA%-xwCcIg>q_cv*vM7F=ljlgZpw<5X&s5;F;3-g)ZQM zE;^RB03{DLE+IT%J`O>hiS)mqu&096pifCbPddVJKQkfs0cz!TpZ>tV@@Nb(YqZa} z-!SORLg_;kAGue8p)r7%K*`zkauvx?wlJeAh1HnWT4P6H%ObsMahz5fW1XP zmUNj|fCC2;0bE1oD5ad#rZjBkP9Fgd#H46${gU9cJ0`KuOd!krDHX6|G*rH#Fyo_F zA5h~s)=z+fZU$UW!7Pk0W1lI4Y~995??mn$Ui@CB3ImN1$|LWHh7V)_cJ4m({ustQ zCZs}`N_gB2N&f()g3p*p_=*CTDd`d9maag7QxKUl2zNHvb$fRS*}#DmZtO=^gO;(9 z75@Oj;2Zh_?{8OMuJcEHJ=+7q)`VE z`&0bj)>Xkl@(daMUn z3jKwCiqg5ARqH4*269l9-> zqjN1oiD0-O);*%K{{TZ6wjM)M2yOEKF;++8R8BDg8klCRT4As%$B8mH&{}vKl{Rr+ zg?E`n7kM`==kU!TQ3+#zi-?Fy1%cJw7j59mu{}E1-W##JuWerjUzl7kil-vI8D*hQ zw&g5$=TIsDoT8$J$<@360H@{D6n_CerYmytMHixet`#XC$vIgu37Z7<8>?jKQFh04 zDPAN%JT?r3h%YcAB`((vEEw;VT|HzG3z01edAop|vLt=#TLNl^pLt8xzXG%A5Oh7Z z`{i>KGCh&vvOgb(8PD*U{crk#pM{UW}QSl8=Ni;Li_-ZrW40}l~_9~4nw?zB} z=dlk4+9Y9ZQn)XuFvPJ`qmuz^ZU_ZRcM**aV@w+zVX~*HgO}3c0r4U+&`5eWm zLiVt49YoV9{M9oJi04qkhl#~sBO26-`WK(5T-HeUnN6@jEfLWcXT5F;N*)cv3(4Kf ztQqbX5XyCY%Rt*p=5f$=6z2YFUOcrISIi+*W{ZJTml%wrS-1;GA}G?uMR_vt(8|K7 z4tFsjhY5T>A<%$r*B^fK z4P3JqG~M4xg7AEUKLW^c%WrIU2tR;;c@2`>by!E$tU6T|Zmhd)3`fzi5^GVc40jni zjL7>9@Us%4uMFVB@eJ#ocsSQ5xZskfm?=e=2CCxKMp~g{R;&?iD@=6%0Js$x^@tCX z@-pXRsC~exE}e+9vg_Y*7eY+WcJn#t?r0r0o?{7|ucW7U52FOxx6Y>YifOO5F~x%J4?$xJ&~F+%Pm!Z-Mm0=BskZu0Eld@pz=KxYoVoVGy^|4b*HARYd_lVwduA z!0y%CG?7(4V>D?{ElTZzaKs^9W*v#txp=0X+_iwi{ilL8nr1o4=5v(v%*u~yh^!N{ zETlGD>Ts+70E|r1esuxR1a%%}zlEnc&U_Oaa?VH+us7Kj7iQ{Y1FJkrdQ0e*a2%!v zAYcSaX90tNcjVGxi8ewKW#dJo$V7{=zE%6gKUsgQww90jO4wyV(*Dw=`&YDHXfmZq z$={?2s;k)byh=2=P=EEhjS-z5pey~%Ia1iY6qfmhD1?NL9pKJU)Vfj@t1o03F3C}k zmL<9|b4C>dsM}z1VOOB)AP@VTXsTHi5lfeQAEp`xT-&X@)U-P4WW)xghMdeSkM^@r zShQmGfNh5v^EB7yoFr5(<#D)#mI9lG!W9#26Pi8L{LH~ z>`ukW^v50-y;&GvVnLWCw6q-&DNtYo{^y4MQkOx<%nW<#B#T0)H69U`&Q5E#X#uqB zFd}f6+d}g6XNXL{f!(8vGI(XAd0ss;Ko~>*$xjHIQG@e?l8@*Vud(i9IQshuOy{{Y!>^8F%!*j2@0tJk<`ULxUqC~OV@9}v=r zE(al~%yWZZ-Zr3U<$O;G5Zmo9igc732o|j?%btly;WH?Nez6Jy2;+;mv1346qYG

B>0xq*+) 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


Gu7@m5GmyRwf$fBhIEBL4tNWS@&f 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/img1.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/img1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1d9915da8caca9e8886e47d7fda55ee0325bf6e1 GIT binary patch literal 97927 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ט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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/team1.png b/section7/eazyschool-start/src/main/resources/static/assets/images/team1.png new file mode 100644 index 0000000000000000000000000000000000000000..9e5f9dadb0015b5114645cf3dd7d71e8a20c2560 GIT binary patch literal 66243 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 ZyuaH#j;t>bjJ*H=002ovPDHLkV1lzeEcyTd literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/team2.png b/section7/eazyschool-start/src/main/resources/static/assets/images/team2.png new file mode 100644 index 0000000000000000000000000000000000000000..8f183ab8e89311541146dda846c85307d74e9213 GIT binary patch literal 81358 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 IM6N<$f@xp?761SM literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/team3.png b/section7/eazyschool-start/src/main/resources/static/assets/images/team3.png new file mode 100644 index 0000000000000000000000000000000000000000..27b10a319f6dd8bf3851bcd5fdf94ca502fcb623 GIT binary patch literal 78307 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 z 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

~ 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 z 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 z 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 LNkvXXu0mjfi!r<7 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/testi1.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/testi1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..965bfe0a3cd9a3c361061754a1ef3621cdf1e54b GIT binary patch literal 9009 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 E3-=x0ivR!s literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/testi2.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/testi2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e31e08c4a22cd5654b29c8ff58a4813f01dbb0a8 GIT binary patch literal 4971 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 JO|STT=0A0T&!zwX literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/testi3.jpg b/section7/eazyschool-start/src/main/resources/static/assets/images/testi3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8c104ecafdbc00ab5db856b744a31099d0781580 GIT binary patch literal 8824 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[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter(t=>t.matches(e)),parents(t,e){const s=[];let i=t.parentNode;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)i.matches(e)&&s.push(i),i=i.parentNode;return s},prev(t,e){let s=t.previousElementSibling;for(;s;){if(s.matches(e))return[s];s=s.previousElementSibling}return[]},next(t,e){let s=t.nextElementSibling;for(;s;){if(s.matches(e))return[s];s=s.nextElementSibling}return[]}},n=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},o=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let s=t.getAttribute("href");if(!s||!s.includes("#")&&!s.startsWith("."))return null;s.includes("#")&&!s.startsWith("#")&&(s="#"+s.split("#")[1]),e=s&&"#"!==s?s.trim():null}return e},r=t=>{const e=o(t);return e&&document.querySelector(e)?e:null},a=t=>{const e=o(t);return e?document.querySelector(e):null},l=t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:s}=window.getComputedStyle(t);const i=Number.parseFloat(e),n=Number.parseFloat(s);return i||n?(e=e.split(",")[0],s=s.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(s))):0},c=t=>{t.dispatchEvent(new Event("transitionend"))},h=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),d=t=>h(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?i.findOne(t):null,u=(t,e)=>{let s=!1;const i=e+5;t.addEventListener("transitionend",(function e(){s=!0,t.removeEventListener("transitionend",e)})),setTimeout(()=>{s||c(t)},i)},g=(t,e,s)=>{Object.keys(s).forEach(i=>{const n=s[i],o=e[i],r=o&&h(o)?"element":null==(a=o)?""+a:{}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase();var a;if(!new RegExp(n).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${i}" provided type "${r}" but expected type "${n}".`)})},f=t=>{if(!t)return!1;if(t.style&&t.parentNode&&t.parentNode.style){const e=getComputedStyle(t),s=getComputedStyle(t.parentNode);return"none"!==e.display&&"none"!==s.display&&"hidden"!==e.visibility}return!1},p=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),m=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?m(t.parentNode):null},_=()=>{},b=t=>t.offsetHeight,v=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},y=()=>"rtl"===document.documentElement.dir,w=t=>{var e;e=()=>{const e=v();if(e){const s=t.NAME,i=e.fn[s];e.fn[s]=t.jQueryInterface,e.fn[s].Constructor=t,e.fn[s].noConflict=()=>(e.fn[s]=i,t.jQueryInterface)}},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e()},E=t=>{"function"==typeof t&&t()},T=new Map;var A={set(t,e,s){T.has(t)||T.set(t,new Map);const i=T.get(t);i.has(e)||0===i.size?i.set(e,s):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(i.keys())[0]}.`)},get:(t,e)=>T.has(t)&&T.get(t).get(e)||null,remove(t,e){if(!T.has(t))return;const s=T.get(t);s.delete(e),0===s.size&&T.delete(t)}};const k=/[^.]*(?=\..*)\.|.*/,L=/\..*/,C=/::\d+$/,D={};let N=1;const S={mouseenter:"mouseover",mouseleave:"mouseout"},O=/^(mouseenter|mouseleave)/i,I=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function x(t,e){return e&&`${e}::${N++}`||t.uidEvent||N++}function j(t){const e=x(t);return t.uidEvent=e,D[e]=D[e]||{},D[e]}function P(t,e,s=null){const i=Object.keys(t);for(let n=0,o=i.length;nfunction(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};i?i=t(i):s=t(s)}const[o,r,a]=M(e,s,i),l=j(t),c=l[a]||(l[a]={}),h=P(c,r,o?s:null);if(h)return void(h.oneOff=h.oneOff&&n);const d=x(r,e.replace(k,"")),u=o?function(t,e,s){return function i(n){const o=t.querySelectorAll(e);for(let{target:r}=n;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return n.delegateTarget=r,i.oneOff&&$.off(t,n.type,e,s),s.apply(r,[n]);return null}}(t,s,i):function(t,e){return function s(i){return i.delegateTarget=t,s.oneOff&&$.off(t,i.type,e),e.apply(t,[i])}}(t,s);u.delegationSelector=o?s:null,u.originalHandler=r,u.oneOff=n,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function R(t,e,s,i,n){const o=P(e[s],i,n);o&&(t.removeEventListener(s,o,Boolean(n)),delete e[s][o.uidEvent])}function B(t){return t=t.replace(L,""),S[t]||t}const $={on(t,e,s,i){H(t,e,s,i,!1)},one(t,e,s,i){H(t,e,s,i,!0)},off(t,e,s,i){if("string"!=typeof e||!t)return;const[n,o,r]=M(e,s,i),a=r!==e,l=j(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void R(t,l,r,o,n?s:null)}c&&Object.keys(l).forEach(s=>{!function(t,e,s,i){const n=e[s]||{};Object.keys(n).forEach(o=>{if(o.includes(i)){const i=n[o];R(t,e,s,i.originalHandler,i.delegationSelector)}})}(t,l,s,e.slice(1))});const h=l[r]||{};Object.keys(h).forEach(s=>{const i=s.replace(C,"");if(!a||e.includes(i)){const e=h[s];R(t,l,r,e.originalHandler,e.delegationSelector)}})},trigger(t,e,s){if("string"!=typeof e||!t)return null;const i=v(),n=B(e),o=e!==n,r=I.has(n);let a,l=!0,c=!0,h=!1,d=null;return o&&i&&(a=i.Event(e,s),i(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(n,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==s&&Object.keys(s).forEach(t=>{Object.defineProperty(d,t,{get:()=>s[t]})}),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}};class z{constructor(t){(t=d(t))&&(this._element=t,A.set(this._element,this.constructor.DATA_KEY,this))}dispose(){A.remove(this._element,this.constructor.DATA_KEY),$.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(t=>{this[t]=null})}_queueCallback(t,e,s=!0){if(!s)return void E(t);const i=l(e);$.one(e,"transitionend",()=>E(t)),u(e,i)}static getInstance(t){return A.get(t,this.DATA_KEY)}static get VERSION(){return"5.0.1"}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return"bs."+this.NAME}static get EVENT_KEY(){return"."+this.DATA_KEY}}class U extends z{static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,s=this._triggerCloseEvent(e);null===s||s.defaultPrevented||this._removeElement(e)}_getRootElement(t){return a(t)||t.closest(".alert")}_triggerCloseEvent(t){return $.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback(()=>this._destroyElement(t),t,e)}_destroyElement(t){t.parentNode&&t.parentNode.removeChild(t),$.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.alert");e||(e=new U(this)),"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}$.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',U.handleDismiss(new U)),w(U);class q extends z{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.button");e||(e=new q(this)),"toggle"===t&&e[t]()}))}}function F(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function W(t){return t.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())}$.on(document,"click.bs.button.data-api",'[data-bs-toggle="button"]',t=>{t.preventDefault();const e=t.target.closest('[data-bs-toggle="button"]');let s=A.get(e,"bs.button");s||(s=new q(e)),s.toggle()}),w(q);const K={setDataAttribute(t,e,s){t.setAttribute("data-bs-"+W(e),s)},removeDataAttribute(t,e){t.removeAttribute("data-bs-"+W(e))},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter(t=>t.startsWith("bs")).forEach(s=>{let i=s.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=F(t.dataset[s])}),e},getDataAttribute:(t,e)=>F(t.getAttribute("data-bs-"+W(e))),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},V={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},Q={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},X="next",Y="prev",G="left",Z="right";class J extends z{constructor(t,e){super(t),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._indicatorsElement=i.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return V}static get NAME(){return"carousel"}next(){this._isSliding||this._slide(X)}nextWhenVisible(){!document.hidden&&f(this._element)&&this.next()}prev(){this._isSliding||this._slide(Y)}pause(t){t||(this._isPaused=!0),i.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(c(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(t){this._activeElement=i.findOne(".active.carousel-item",this._element);const e=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void $.one(this._element,"slid.bs.carousel",()=>this.to(t));if(e===t)return this.pause(),void this.cycle();const s=t>e?X:Y;this._slide(s,this._items[t])}_getConfig(t){return t={...V,...t},g("carousel",t,Q),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?Z:G)}_addEventListeners(){this._config.keyboard&&$.on(this._element,"keydown.bs.carousel",t=>this._keydown(t)),"hover"===this._config.pause&&($.on(this._element,"mouseenter.bs.carousel",t=>this.pause(t)),$.on(this._element,"mouseleave.bs.carousel",t=>this.cycle(t))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},e=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},s=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType||(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(t=>this.cycle(t),500+this._config.interval))};i.find(".carousel-item img",this._element).forEach(t=>{$.on(t,"dragstart.bs.carousel",t=>t.preventDefault())}),this._pointerEvent?($.on(this._element,"pointerdown.bs.carousel",e=>t(e)),$.on(this._element,"pointerup.bs.carousel",t=>s(t)),this._element.classList.add("pointer-event")):($.on(this._element,"touchstart.bs.carousel",e=>t(e)),$.on(this._element,"touchmove.bs.carousel",t=>e(t)),$.on(this._element,"touchend.bs.carousel",t=>s(t)))}_keydown(t){/input|textarea/i.test(t.target.tagName)||("ArrowLeft"===t.key?(t.preventDefault(),this._slide(Z)):"ArrowRight"===t.key&&(t.preventDefault(),this._slide(G)))}_getItemIndex(t){return this._items=t&&t.parentNode?i.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const s=t===X,i=t===Y,n=this._getItemIndex(e),o=this._items.length-1;if((i&&0===n||s&&n===o)&&!this._config.wrap)return e;const r=(n+(i?-1:1))%this._items.length;return-1===r?this._items[this._items.length-1]:this._items[r]}_triggerSlideEvent(t,e){const s=this._getItemIndex(t),n=this._getItemIndex(i.findOne(".active.carousel-item",this._element));return $.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:e,from:n,to:s})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const e=i.findOne(".active",this._indicatorsElement);e.classList.remove("active"),e.removeAttribute("aria-current");const s=i.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e{$.trigger(this._element,"slid.bs.carousel",{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),b(r),n.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add("active"),n.classList.remove("active",d,h),this._isSliding=!1,setTimeout(g,0)};this._queueCallback(t,n,!0)}else n.classList.remove("active"),r.classList.add("active"),this._isSliding=!1,g();l&&this.cycle()}_directionToOrder(t){return[Z,G].includes(t)?y()?t===G?Y:X:t===G?X:Y:t}_orderToDirection(t){return[X,Y].includes(t)?y()?t===Y?G:Z:t===Y?Z:G:t}static carouselInterface(t,e){let s=A.get(t,"bs.carousel"),i={...V,...K.getDataAttributes(t)};"object"==typeof e&&(i={...i,...e});const n="string"==typeof e?e:i.slide;if(s||(s=new J(t,i)),"number"==typeof e)s.to(e);else if("string"==typeof n){if(void 0===s[n])throw new TypeError(`No method named "${n}"`);s[n]()}else i.interval&&i.ride&&(s.pause(),s.cycle())}static jQueryInterface(t){return this.each((function(){J.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=a(this);if(!e||!e.classList.contains("carousel"))return;const s={...K.getDataAttributes(e),...K.getDataAttributes(this)},i=this.getAttribute("data-bs-slide-to");i&&(s.interval=!1),J.carouselInterface(e,s),i&&A.get(e,"bs.carousel").to(i),t.preventDefault()}}$.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",J.dataApiClickHandler),$.on(window,"load.bs.carousel.data-api",()=>{const t=i.find('[data-bs-ride="carousel"]');for(let e=0,s=t.length;et===this._element);null!==n&&o.length&&(this._selector=n,this._triggerArray.push(e))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return tt}static get NAME(){return"collapse"}toggle(){this._element.classList.contains("show")?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains("show"))return;let t,e;this._parent&&(t=i.find(".show, .collapsing",this._parent).filter(t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains("collapse")),0===t.length&&(t=null));const s=i.findOne(this._selector);if(t){const i=t.find(t=>s!==t);if(e=i?A.get(i,"bs.collapse"):null,e&&e._isTransitioning)return}if($.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach(t=>{s!==t&&st.collapseInterface(t,"hide"),e||A.set(t,"bs.collapse",null)});const n=this._getDimension();this._element.classList.remove("collapse"),this._element.classList.add("collapsing"),this._element.style[n]=0,this._triggerArray.length&&this._triggerArray.forEach(t=>{t.classList.remove("collapsed"),t.setAttribute("aria-expanded",!0)}),this.setTransitioning(!0);const o="scroll"+(n[0].toUpperCase()+n.slice(1));this._queueCallback(()=>{this._element.classList.remove("collapsing"),this._element.classList.add("collapse","show"),this._element.style[n]="",this.setTransitioning(!1),$.trigger(this._element,"shown.bs.collapse")},this._element,!0),this._element.style[n]=this._element[o]+"px"}hide(){if(this._isTransitioning||!this._element.classList.contains("show"))return;if($.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=this._element.getBoundingClientRect()[t]+"px",b(this._element),this._element.classList.add("collapsing"),this._element.classList.remove("collapse","show");const e=this._triggerArray.length;if(e>0)for(let t=0;t{this.setTransitioning(!1),this._element.classList.remove("collapsing"),this._element.classList.add("collapse"),$.trigger(this._element,"hidden.bs.collapse")},this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...tt,...t}).toggle=Boolean(t.toggle),g("collapse",t,et),t}_getDimension(){return this._element.classList.contains("width")?"width":"height"}_getParent(){let{parent:t}=this._config;t=d(t);const e=`[data-bs-toggle="collapse"][data-bs-parent="${t}"]`;return i.find(e,t).forEach(t=>{const e=a(t);this._addAriaAndCollapsedClass(e,[t])}),t}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const s=t.classList.contains("show");e.forEach(t=>{s?t.classList.remove("collapsed"):t.classList.add("collapsed"),t.setAttribute("aria-expanded",s)})}static collapseInterface(t,e){let s=A.get(t,"bs.collapse");const i={...tt,...K.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!s&&i.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(i.toggle=!1),s||(s=new st(t,i)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){st.collapseInterface(this,t)}))}}$.on(document,"click.bs.collapse.data-api",'[data-bs-toggle="collapse"]',(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=K.getDataAttributes(this),s=r(this);i.find(s).forEach(t=>{const s=A.get(t,"bs.collapse");let i;s?(null===s._parent&&"string"==typeof e.parent&&(s._config.parent=e.parent,s._parent=s._getParent()),i="toggle"):i=e,st.collapseInterface(t,i)})})),w(st);const it=new RegExp("ArrowUp|ArrowDown|Escape"),nt=y()?"top-end":"top-start",ot=y()?"top-start":"top-end",rt=y()?"bottom-end":"bottom-start",at=y()?"bottom-start":"bottom-end",lt=y()?"left-start":"right-start",ct=y()?"right-start":"left-start",ht={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},dt={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class ut extends z{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ht}static get DefaultType(){return dt}static get NAME(){return"dropdown"}toggle(){p(this._element)||(this._element.classList.contains("show")?this.hide():this.show())}show(){if(p(this._element)||this._menu.classList.contains("show"))return;const t=ut.getParentFromElement(this._element),e={relatedTarget:this._element};if(!$.trigger(this._element,"show.bs.dropdown",e).defaultPrevented){if(this._inNavbar)K.setDataAttribute(this._menu,"popper","none");else{if(void 0===s)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:h(this._config.reference)?e=d(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find(t=>"applyStyles"===t.name&&!1===t.enabled);this._popper=s.createPopper(e,this._menu,i),n&&K.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!t.closest(".navbar-nav")&&[].concat(...document.body.children).forEach(t=>$.on(t,"mouseover",_)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle("show"),this._element.classList.toggle("show"),$.trigger(this._element,"shown.bs.dropdown",e)}}hide(){if(p(this._element)||!this._menu.classList.contains("show"))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_addEventListeners(){$.on(this._element,"click.bs.dropdown",t=>{t.preventDefault(),this.toggle()})}_completeHide(t){$.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>$.off(t,"mouseover",_)),this._popper&&this._popper.destroy(),this._menu.classList.remove("show"),this._element.classList.remove("show"),this._element.setAttribute("aria-expanded","false"),K.removeDataAttribute(this._menu,"popper"),$.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...K.getDataAttributes(this._element),...t},g("dropdown",t,this.constructor.DefaultType),"object"==typeof t.reference&&!h(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError("dropdown".toUpperCase()+': Option "reference" provided type "object" without a required "getBoundingClientRect" method.');return t}_getMenuElement(){return i.next(this._element,".dropdown-menu")[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return lt;if(t.classList.contains("dropstart"))return ct;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ot:nt:e?at:rt}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem(t){const e=i.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(f);if(!e.length)return;let s=e.indexOf(t.target);"ArrowUp"===t.key&&s>0&&s--,"ArrowDown"===t.key&&sthis.matches('[data-bs-toggle="dropdown"]')?this:i.prev(this,'[data-bs-toggle="dropdown"]')[0];if("Escape"===t.key)return s().focus(),void ut.clearMenus();e||"ArrowUp"!==t.key&&"ArrowDown"!==t.key?e&&"Space"!==t.key?ut.getInstance(s())._selectMenuItem(t):ut.clearMenus():s().click()}}$.on(document,"keydown.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',ut.dataApiKeydownHandler),$.on(document,"keydown.bs.dropdown.data-api",".dropdown-menu",ut.dataApiKeydownHandler),$.on(document,"click.bs.dropdown.data-api",ut.clearMenus),$.on(document,"keyup.bs.dropdown.data-api",ut.clearMenus),$.on(document,"click.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',(function(t){t.preventDefault(),ut.dropdownInterface(this)})),w(ut);const gt=()=>{const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)},ft=(t=gt())=>{pt(),mt("body","paddingRight",e=>e+t),mt(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight",e=>e+t),mt(".sticky-top","marginRight",e=>e-t)},pt=()=>{const t=document.body.style.overflow;t&&K.setDataAttribute(document.body,"overflow",t),document.body.style.overflow="hidden"},mt=(t,e,s)=>{const n=gt();i.find(t).forEach(t=>{if(t!==document.body&&window.innerWidth>t.clientWidth+n)return;const i=t.style[e],o=window.getComputedStyle(t)[e];K.setDataAttribute(t,e,i),t.style[e]=s(Number.parseFloat(o))+"px"})},_t=()=>{bt("body","overflow"),bt("body","paddingRight"),bt(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight"),bt(".sticky-top","marginRight")},bt=(t,e)=>{i.find(t).forEach(t=>{const s=K.getDataAttribute(t,e);void 0===s?t.style.removeProperty(e):(K.removeDataAttribute(t,e),t.style[e]=s)})},vt={isVisible:!0,isAnimated:!1,rootElement:document.body,clickCallback:null},yt={isVisible:"boolean",isAnimated:"boolean",rootElement:"element",clickCallback:"(function|null)"};class wt{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&b(this._getElement()),this._getElement().classList.add("show"),this._emulateAnimation(()=>{E(t)})):E(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove("show"),this._emulateAnimation(()=>{this.dispose(),E(t)})):E(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...vt,..."object"==typeof t?t:{}}).rootElement=t.rootElement||document.body,g("backdrop",t,yt),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),$.on(this._getElement(),"mousedown.bs.backdrop",()=>{E(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&($.off(this._element,"mousedown.bs.backdrop"),this._getElement().parentNode.removeChild(this._element),this._isAppended=!1)}_emulateAnimation(t){if(!this._config.isAnimated)return void E(t);const e=l(this._getElement());$.one(this._getElement(),"transitionend",()=>E(t)),u(this._getElement(),e)}}const Et={backdrop:!0,keyboard:!0,focus:!0},Tt={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"};class At extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._dialog=i.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1}static get Default(){return Et}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){if(this._isShown||this._isTransitioning)return;this._isAnimated()&&(this._isTransitioning=!0);const e=$.trigger(this._element,"show.bs.modal",{relatedTarget:t});this._isShown||e.defaultPrevented||(this._isShown=!0,ft(),document.body.classList.add("modal-open"),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),$.on(this._element,"click.dismiss.bs.modal",'[data-bs-dismiss="modal"]',t=>this.hide(t)),$.on(this._dialog,"mousedown.dismiss.bs.modal",()=>{$.one(this._element,"mouseup.dismiss.bs.modal",t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(t)))}hide(t){if(t&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if($.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),$.off(document,"focusin.bs.modal"),this._element.classList.remove("show"),$.off(this._element,"click.dismiss.bs.modal"),$.off(this._dialog,"mousedown.dismiss.bs.modal"),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(t=>$.off(t,".bs.modal")),this._backdrop.dispose(),super.dispose(),$.off(document,"focusin.bs.modal")}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new wt({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={...Et,...K.getDataAttributes(this._element),...t},g("modal",t,Tt),t}_showElement(t){const e=this._isAnimated(),s=i.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0,s&&(s.scrollTop=0),e&&b(this._element),this._element.classList.add("show"),this._config.focus&&this._enforceFocus(),this._queueCallback(()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,$.trigger(this._element,"shown.bs.modal",{relatedTarget:t})},this._dialog,e)}_enforceFocus(){$.off(document,"focusin.bs.modal"),$.on(document,"focusin.bs.modal",t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()})}_setEscapeEvent(){this._isShown?$.on(this._element,"keydown.dismiss.bs.modal",t=>{this._config.keyboard&&"Escape"===t.key?(t.preventDefault(),this.hide()):this._config.keyboard||"Escape"!==t.key||this._triggerBackdropTransition()}):$.off(this._element,"keydown.dismiss.bs.modal")}_setResizeEvent(){this._isShown?$.on(window,"resize.bs.modal",()=>this._adjustDialog()):$.off(window,"resize.bs.modal")}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove("modal-open"),this._resetAdjustments(),_t(),$.trigger(this._element,"hidden.bs.modal")})}_showBackdrop(t){$.on(this._element,"click.dismiss.bs.modal",t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())}),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if($.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight;t||(this._element.style.overflowY="hidden"),this._element.classList.add("modal-static");const e=l(this._dialog);$.off(this._element,"transitionend"),$.one(this._element,"transitionend",()=>{this._element.classList.remove("modal-static"),t||($.one(this._element,"transitionend",()=>{this._element.style.overflowY=""}),u(this._element,e))}),u(this._element,e),this._element.focus()}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=gt(),s=e>0;(!s&&t&&!y()||s&&!t&&y())&&(this._element.style.paddingLeft=e+"px"),(s&&!t&&!y()||!s&&t&&y())&&(this._element.style.paddingRight=e+"px")}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const s=At.getInstance(this)||new At(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===s[t])throw new TypeError(`No method named "${t}"`);s[t](e)}}))}}$.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=a(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),$.one(e,"show.bs.modal",t=>{t.defaultPrevented||$.one(e,"hidden.bs.modal",()=>{f(this)&&this.focus()})}),(At.getInstance(e)||new At(e)).toggle(this)})),w(At);const kt={backdrop:!0,keyboard:!0,scroll:!1},Lt={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"};class Ct extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return"offcanvas"}static get Default(){return kt}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||$.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(ft(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add("show"),this._queueCallback(()=>{$.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})},this._element,!0))}hide(){this._isShown&&($.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||($.off(document,"focusin.bs.offcanvas"),this._element.blur(),this._isShown=!1,this._element.classList.remove("show"),this._backdrop.hide(),this._queueCallback(()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||_t(),$.trigger(this._element,"hidden.bs.offcanvas")},this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),$.off(document,"focusin.bs.offcanvas")}_getConfig(t){return t={...kt,...K.getDataAttributes(this._element),..."object"==typeof t?t:{}},g("offcanvas",t,Lt),t}_initializeBackDrop(){return new wt({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){$.off(document,"focusin.bs.offcanvas"),$.on(document,"focusin.bs.offcanvas",e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()}),t.focus()}_addEventListeners(){$.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',()=>this.hide()),$.on(this._element,"keydown.dismiss.bs.offcanvas",t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()})}static jQueryInterface(t){return this.each((function(){const e=A.get(this,"bs.offcanvas")||new Ct(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}$.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=a(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),p(this))return;$.one(e,"hidden.bs.offcanvas",()=>{f(this)&&this.focus()});const s=i.findOne(".offcanvas.show");s&&s!==e&&Ct.getInstance(s).hide(),(A.get(e,"bs.offcanvas")||new Ct(e)).toggle(this)})),$.on(window,"load.bs.offcanvas.data-api",()=>{i.find(".offcanvas.show").forEach(t=>(A.get(t,"bs.offcanvas")||new Ct(t)).show())}),w(Ct);const Dt=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Nt=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,St=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Ot=(t,e)=>{const s=t.nodeName.toLowerCase();if(e.includes(s))return!Dt.has(s)||Boolean(Nt.test(t.nodeValue)||St.test(t.nodeValue));const i=e.filter(t=>t instanceof RegExp);for(let t=0,e=i.length;t{Ot(t,a)||s.removeAttribute(t.nodeName)})}return i.body.innerHTML}const xt=new RegExp("(^|\\s)bs-tooltip\\S+","g"),jt=new Set(["sanitize","allowList","sanitizeFn"]),Pt={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},Mt={AUTO:"auto",TOP:"top",RIGHT:y()?"left":"right",BOTTOM:"bottom",LEFT:y()?"right":"left"},Ht={animation:!0,template:'

',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},popperConfig:null},Rt={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"};class Bt extends z{constructor(t,e){if(void 0===s)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return Ht}static get NAME(){return"tooltip"}static get Event(){return Rt}static get DefaultType(){return Pt}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains("show"))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),$.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.parentNode&&this.tip.parentNode.removeChild(this.tip),this._popper&&this._popper.destroy(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=$.trigger(this._element,this.constructor.Event.SHOW),e=m(this._element),i=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!i)return;const o=this.getTipElement(),r=n(this.constructor.NAME);o.setAttribute("id",r),this._element.setAttribute("aria-describedby",r),this.setContent(),this._config.animation&&o.classList.add("fade");const a="function"==typeof this._config.placement?this._config.placement.call(this,o,this._element):this._config.placement,l=this._getAttachment(a);this._addAttachmentClass(l);const{container:c}=this._config;A.set(o,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(c.appendChild(o),$.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=s.createPopper(this._element,o,this._getPopperConfig(l)),o.classList.add("show");const h="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;h&&o.classList.add(...h.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>{$.on(t,"mouseover",_)});const d=this.tip.classList.contains("fade");this._queueCallback(()=>{const t=this._hoverState;this._hoverState=null,$.trigger(this._element,this.constructor.Event.SHOWN),"out"===t&&this._leave(null,this)},this.tip,d)}hide(){if(!this._popper)return;const t=this.getTipElement();if($.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove("show"),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>$.off(t,"mouseover",_)),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains("fade");this._queueCallback(()=>{this._isWithActiveTrigger()||("show"!==this._hoverState&&t.parentNode&&t.parentNode.removeChild(t),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),$.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))},this.tip,e),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(i.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove("fade","show")}setElementContent(t,e){if(null!==t)return h(e)?(e=d(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=It(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const s=this.constructor.DATA_KEY;return(e=e||A.get(t.delegateTarget,s))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),A.set(t.delegateTarget,s,e)),e}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add("bs-tooltip-"+this.updateAttachment(t))}_getAttachment(t){return Mt[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(t=>{if("click"===t)$.on(this._element,this.constructor.Event.CLICK,this._config.selector,t=>this.toggle(t));else if("manual"!==t){const e="hover"===t?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,s="hover"===t?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;$.on(this._element,e,this._config.selector,t=>this._enter(t)),$.on(this._element,s,this._config.selector,t=>this._leave(t))}}),this._hideModalHandler=()=>{this._element&&this.hide()},$.on(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?"focus":"hover"]=!0),e.getTipElement().classList.contains("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e._config.delay&&e._config.delay.show?e._timeout=setTimeout(()=>{"show"===e._hoverState&&e.show()},e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e._config.delay&&e._config.delay.hide?e._timeout=setTimeout(()=>{"out"===e._hoverState&&e.hide()},e._config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=K.getDataAttributes(this._element);return Object.keys(e).forEach(t=>{jt.has(t)&&delete e[t]}),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:d(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),g("tooltip",t,this.constructor.DefaultType),t.sanitize&&(t.template=It(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)for(const e in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(xt);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.tooltip");const s="object"==typeof t&&t;if((e||!/dispose|hide/.test(t))&&(e||(e=new Bt(this,s)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}w(Bt);const $t=new RegExp("(^|\\s)bs-popover\\S+","g"),zt={...Bt.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},Ut={...Bt.DefaultType,content:"(string|element|function)"},qt={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class Ft extends Bt{static get Default(){return zt}static get NAME(){return"popover"}static get Event(){return qt}static get DefaultType(){return Ut}isWithContent(){return this.getTitle()||this._getContent()}setContent(){const t=this.getTipElement();this.setElementContent(i.findOne(".popover-header",t),this.getTitle());let e=this._getContent();"function"==typeof e&&(e=e.call(this._element)),this.setElementContent(i.findOne(".popover-body",t),e),t.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add("bs-popover-"+this.updateAttachment(t))}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match($t);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.popover");const s="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new Ft(this,s),A.set(this,"bs.popover",e)),"string"==typeof t)){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}w(Ft);const Wt={offset:10,method:"auto",target:""},Kt={offset:"number",method:"string",target:"(string|element)"};class Vt extends z{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,$.on(this._scrollElement,"scroll.bs.scrollspy",()=>this._process()),this.refresh(),this._process()}static get Default(){return Wt}static get NAME(){return"scrollspy"}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":"position",e="auto"===this._config.method?t:this._config.method,s="position"===e?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),i.find(this._selector).map(t=>{const n=r(t),o=n?i.findOne(n):null;if(o){const t=o.getBoundingClientRect();if(t.width||t.height)return[K[e](o).top+s,n]}return null}).filter(t=>t).sort((t,e)=>t[0]-e[0]).forEach(t=>{this._offsets.push(t[0]),this._targets.push(t[1])})}dispose(){$.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={...Wt,...K.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&h(t.target)){let{id:e}=t.target;e||(e=n("scrollspy"),t.target.id=e),t.target="#"+e}return g("scrollspy",t,Kt),t}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){const t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),s=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=s){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;)this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t`${e}[data-bs-target="${t}"],${e}[href="${t}"]`),s=i.findOne(e.join(","));s.classList.contains("dropdown-item")?(i.findOne(".dropdown-toggle",s.closest(".dropdown")).classList.add("active"),s.classList.add("active")):(s.classList.add("active"),i.parents(s,".nav, .list-group").forEach(t=>{i.prev(t,".nav-link, .list-group-item").forEach(t=>t.classList.add("active")),i.prev(t,".nav-item").forEach(t=>{i.children(t,".nav-link").forEach(t=>t.classList.add("active"))})})),$.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){i.find(this._selector).filter(t=>t.classList.contains("active")).forEach(t=>t.classList.remove("active"))}static jQueryInterface(t){return this.each((function(){const e=Vt.getInstance(this)||new Vt(this,"object"==typeof t?t:{});if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}$.on(window,"load.bs.scrollspy.data-api",()=>{i.find('[data-bs-spy="scroll"]').forEach(t=>new Vt(t))}),w(Vt);class Qt extends z{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains("active"))return;let t;const e=a(this._element),s=this._element.closest(".nav, .list-group");if(s){const e="UL"===s.nodeName||"OL"===s.nodeName?":scope > li > .active":".active";t=i.find(e,s),t=t[t.length-1]}const n=t?$.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if($.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==n&&n.defaultPrevented)return;this._activate(this._element,s);const o=()=>{$.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),$.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};e?this._activate(e,e.parentNode,o):o()}_activate(t,e,s){const n=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?i.children(e,".active"):i.find(":scope > li > .active",e))[0],o=s&&n&&n.classList.contains("fade"),r=()=>this._transitionComplete(t,n,s);n&&o?(n.classList.remove("show"),this._queueCallback(r,t,!0)):r()}_transitionComplete(t,e,s){if(e){e.classList.remove("active");const t=i.findOne(":scope > .dropdown-menu .active",e.parentNode);t&&t.classList.remove("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}t.classList.add("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),b(t),t.classList.contains("fade")&&t.classList.add("show");let n=t.parentNode;if(n&&"LI"===n.nodeName&&(n=n.parentNode),n&&n.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&i.find(".dropdown-toggle",e).forEach(t=>t.classList.add("active")),t.setAttribute("aria-expanded",!0)}s&&s()}static jQueryInterface(t){return this.each((function(){const e=A.get(this,"bs.tab")||new Qt(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}$.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),p(this)||(A.get(this,"bs.tab")||new Qt(this)).show()})),w(Qt);const Xt={animation:"boolean",autohide:"boolean",delay:"number"},Yt={animation:!0,autohide:!0,delay:5e3};class Gt extends z{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Xt}static get Default(){return Yt}static get NAME(){return"toast"}show(){$.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove("hide"),b(this._element),this._element.classList.add("showing"),this._queueCallback(()=>{this._element.classList.remove("showing"),this._element.classList.add("show"),$.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()},this._element,this._config.animation))}hide(){this._element.classList.contains("show")&&($.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove("show"),this._queueCallback(()=>{this._element.classList.add("hide"),$.trigger(this._element,"hidden.bs.toast")},this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),super.dispose()}_getConfig(t){return t={...Yt,...K.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},g("toast",t,this.constructor.DefaultType),t}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const s=t.relatedTarget;this._element===s||this._element.contains(s)||this._maybeScheduleHide()}_setListeners(){$.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',()=>this.hide()),$.on(this._element,"mouseover.bs.toast",t=>this._onInteraction(t,!0)),$.on(this._element,"mouseout.bs.toast",t=>this._onInteraction(t,!1)),$.on(this._element,"focusin.bs.toast",t=>this._onInteraction(t,!0)),$.on(this._element,"focusout.bs.toast",t=>this._onInteraction(t,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){let e=A.get(this,"bs.toast");if(e||(e=new Gt(this,"object"==typeof t&&t)),"string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return w(Gt),{Alert:U,Button:q,Carousel:J,Collapse:st,Dropdown:ut,Modal:At,Offcanvas:Ct,Popover:Ft,ScrollSpy:Vt,Tab:Qt,Toast:Gt,Tooltip:Bt}})); +//# sourceMappingURL=bootstrap.min.js.map \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/static/assets/js/counter.js b/section7/eazyschool-start/src/main/resources/static/assets/js/counter.js new file mode 100644 index 00000000..1bcc307d --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/static/assets/js/counter.js @@ -0,0 +1,98 @@ +(function ($) { + $.fn.countTo = function (options) { + options = options || {}; + + return $(this).each(function () { + // set options for current element + var settings = $.extend({}, $.fn.countTo.defaults, { + from: $(this).data('from'), + to: $(this).data('to'), + speed: $(this).data('speed'), + refreshInterval: $(this).data('refresh-interval'), + decimals: $(this).data('decimals') + }, options); + + // how many times to update the value, and how much to increment the value on each update + var loops = Math.ceil(settings.speed / settings.refreshInterval), + increment = (settings.to - settings.from) / loops; + + // references & variables that will change with each update + var self = this, + $self = $(this), + loopCount = 0, + value = settings.from, + data = $self.data('countTo') || {}; + + $self.data('countTo', data); + + // if an existing interval can be found, clear it first + if (data.interval) { + clearInterval(data.interval); + } + data.interval = setInterval(updateTimer, settings.refreshInterval); + + // initialize the element with the starting value + render(value); + + function updateTimer() { + value += increment; + loopCount++; + + render(value); + + if (typeof(settings.onUpdate) == 'function') { + settings.onUpdate.call(self, value); + } + + if (loopCount >= loops) { + // remove the interval + $self.removeData('countTo'); + clearInterval(data.interval); + value = settings.to; + + if (typeof(settings.onComplete) == 'function') { + settings.onComplete.call(self, value); + } + } + } + + function render(value) { + var formattedValue = settings.formatter.call(self, value, settings); + $self.html(formattedValue); + } + }); + }; + + $.fn.countTo.defaults = { + from: 0, // the number the element should start at + to: 0, // the number the element should end at + speed: 1000, // how long it should take to count between the target numbers + refreshInterval: 1, // how often the element should be updated + decimals: 0, // the number of decimal places to show + formatter: formatter, // handler for formatting the value before rendering + onUpdate: null, // callback method for every time the element is updated + onComplete: null // callback method for when the element finishes updating + }; + + function formatter(value, settings) { + return value.toFixed(settings.decimals); + } +}(jQuery)); + +jQuery(function ($) { + // custom formatting example + $('.count-number').data('countToOptions', { + formatter: function (value, options) { + return value.toFixed(options.decimals).replace(/\B(?=(?:\d{3})+(?!\d))/g, ','); + } + }); + + // start all the timers + $('.timer').each(count); + + function count(options) { + var $this = $(this); + options = $.extend({}, options || {}, $this.data('countToOptions') || {}); + $this.countTo(options); + } +}); \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/static/assets/js/jquery-3.3.1.min.js b/section7/eazyschool-start/src/main/resources/static/assets/js/jquery-3.3.1.min.js new file mode 100644 index 00000000..f4ca9b24 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/static/assets/js/jquery-3.3.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.3.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){"use strict";var n=[],r=e.document,i=Object.getPrototypeOf,o=n.slice,a=n.concat,u=n.push,s=n.indexOf,l={},c=l.toString,f=l.hasOwnProperty,d=f.toString,p=d.call(Object),h={},g=function e(t){return"function"==typeof t&&"number"!=typeof t.nodeType},v=function e(t){return null!=t&&t===t.window},y={type:!0,src:!0,noModule:!0};function m(e,t,n){var i,o=(t=t||r).createElement("script");if(o.text=e,n)for(i in y)n[i]&&(o[i]=n[i]);t.head.appendChild(o).parentNode.removeChild(o)}function b(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?l[c.call(e)]||"object":typeof e}var x="3.3.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector",w=function(e,t){return new w.fn.init(e,t)},C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;w.fn=w.prototype={jquery:x,constructor:w,length:0,toArray:function(){return o.call(this)},get:function(e){return null==e?o.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(o.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n0&&t-1 in e)}var E=function(e){var t,n,r,i,o,a,u,s,l,c,f,d,p,h,g,v,y,m,b,x="sizzle"+1*new Date,w=e.document,C=0,T=0,E=ae(),N=ae(),k=ae(),A=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,S=[],L=S.pop,j=S.push,q=S.push,O=S.slice,P=function(e,t){for(var n=0,r=e.length;n+~]|"+I+")"+I+"*"),_=new RegExp("="+I+"*([^\\]'\"]*?)"+I+"*\\]","g"),U=new RegExp(M),V=new RegExp("^"+R+"$"),X={ID:new RegExp("^#("+R+")"),CLASS:new RegExp("^\\.("+R+")"),TAG:new RegExp("^("+R+"|[*])"),ATTR:new RegExp("^"+B),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+I+"*(even|odd|(([+-]|)(\\d*)n|)"+I+"*(?:([+-]|)"+I+"*(\\d+)|))"+I+"*\\)|)","i"),bool:new RegExp("^(?:"+H+")$","i"),needsContext:new RegExp("^"+I+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+I+"*((?:-\\d)?\\d*)"+I+"*\\)|)(?=[^-]|$)","i")},Q=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,G=/^[^{]+\{\s*\[native \w/,K=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,J=/[+~]/,Z=new RegExp("\\\\([\\da-f]{1,6}"+I+"?|("+I+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){d()},ie=me(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{q.apply(S=O.call(w.childNodes),w.childNodes),S[w.childNodes.length].nodeType}catch(e){q={apply:S.length?function(e,t){j.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function oe(e,t,r,i){var o,u,l,c,f,h,y,m=t&&t.ownerDocument,C=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==C&&9!==C&&11!==C)return r;if(!i&&((t?t.ownerDocument||t:w)!==p&&d(t),t=t||p,g)){if(11!==C&&(f=K.exec(e)))if(o=f[1]){if(9===C){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&b(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return q.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return q.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!k[e+" "]&&(!v||!v.test(e))){if(1!==C)m=t,y=e;else if("object"!==t.nodeName.toLowerCase()){(c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=x),u=(h=a(e)).length;while(u--)h[u]="#"+c+" "+ye(h[u]);y=h.join(","),m=J.test(e)&&ge(t.parentNode)||t}if(y)try{return q.apply(r,m.querySelectorAll(y)),r}catch(e){}finally{c===x&&t.removeAttribute("id")}}}return s(e.replace($,"$1"),t,r,i)}function ae(){var e=[];function t(n,i){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=i}return t}function ue(e){return e[x]=!0,e}function se(e){var t=p.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),i=n.length;while(i--)r.attrHandle[n[i]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function de(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function pe(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ie(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function he(e){return ue(function(t){return t=+t,ue(function(n,r){var i,o=e([],n.length,t),a=o.length;while(a--)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function ge(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}n=oe.support={},o=oe.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},d=oe.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!==p&&9===a.nodeType&&a.documentElement?(p=a,h=p.documentElement,g=!o(p),w!==p&&(i=p.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",re,!1):i.attachEvent&&i.attachEvent("onunload",re)),n.attributes=se(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=se(function(e){return e.appendChild(p.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=G.test(p.getElementsByClassName),n.getById=se(function(e){return h.appendChild(e).id=x,!p.getElementsByName||!p.getElementsByName(x).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=G.test(p.querySelectorAll))&&(se(function(e){h.appendChild(e).innerHTML="
",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+I+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+I+"*(?:value|"+H+")"),e.querySelectorAll("[id~="+x+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+x+"+*").length||v.push(".#.+[+~]")}),se(function(e){e.innerHTML="";var t=p.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+I+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(n.matchesSelector=G.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&se(function(e){n.disconnectedMatch=m.call(e,"*"),m.call(e,"[s!='']:x"),y.push("!=",M)}),v=v.length&&new RegExp(v.join("|")),y=y.length&&new RegExp(y.join("|")),t=G.test(h.compareDocumentPosition),b=t||G.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},A=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===p||e.ownerDocument===w&&b(w,e)?-1:t===p||t.ownerDocument===w&&b(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],u=[t];if(!i||!o)return e===p?-1:t===p?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return ce(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)u.unshift(n);while(a[r]===u[r])r++;return r?ce(a[r],u[r]):a[r]===w?-1:u[r]===w?1:0},p):p},oe.matches=function(e,t){return oe(e,null,null,t)},oe.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&d(e),t=t.replace(_,"='$1']"),n.matchesSelector&&g&&!k[t+" "]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return oe(t,p,null,[e]).length>0},oe.contains=function(e,t){return(e.ownerDocument||e)!==p&&d(e),b(e,t)},oe.attr=function(e,t){(e.ownerDocument||e)!==p&&d(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},oe.escape=function(e){return(e+"").replace(te,ne)},oe.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},oe.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(A),f){while(t=e[o++])t===e[o]&&(i=r.push(o));while(i--)e.splice(r[i],1)}return c=null,e},i=oe.getText=function(e){var t,n="",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else while(t=e[r++])n+=i(t);return n},(r=oe.selectors={cacheLength:50,createPseudo:ue,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Z,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(Z,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||oe.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&oe.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return X.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&U.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Z,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+I+")"+e+"("+I+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=oe.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(W," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),u="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,s){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",v=t.parentNode,y=u&&t.nodeName.toLowerCase(),m=!s&&!u,b=!1;if(v){if(o){while(g){d=t;while(d=d[g])if(u?d.nodeName.toLowerCase()===y:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){b=(p=(l=(c=(f=(d=v)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1])&&l[2],d=p&&v.childNodes[p];while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if(1===d.nodeType&&++b&&d===t){c[e]=[C,p,b];break}}else if(m&&(b=p=(l=(c=(f=(d=t)[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]||[])[0]===C&&l[1]),!1===b)while(d=++p&&d&&d[g]||(b=p=0)||h.pop())if((u?d.nodeName.toLowerCase()===y:1===d.nodeType)&&++b&&(m&&((c=(f=d[x]||(d[x]={}))[d.uniqueID]||(f[d.uniqueID]={}))[e]=[C,b]),d===t))break;return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||oe.error("unsupported pseudo: "+e);return i[x]?i(t):i.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?ue(function(e,n){var r,o=i(e,t),a=o.length;while(a--)e[r=P(e,o[a])]=!(n[r]=o[a])}):function(e){return i(e,0,n)}):i}},pseudos:{not:ue(function(e){var t=[],n=[],r=u(e.replace($,"$1"));return r[x]?ue(function(e,t,n,i){var o,a=r(e,null,i,[]),u=e.length;while(u--)(o=a[u])&&(e[u]=!(t[u]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}}),has:ue(function(e){return function(t){return oe(e,t).length>0}}),contains:ue(function(e){return e=e.replace(Z,ee),function(t){return(t.textContent||t.innerText||i(t)).indexOf(e)>-1}}),lang:ue(function(e){return V.test(e||"")||oe.error("unsupported lang: "+e),e=e.replace(Z,ee).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:pe(!1),disabled:pe(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return Y.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:he(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function xe(e,t,n){for(var r=0,i=t.length;r-1&&(o[l]=!(a[l]=f))}}else y=we(y===a?y.splice(h,y.length):y),i?i(null,a,y,s):q.apply(a,y)})}function Te(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],u=a||r.relative[" "],s=a?1:0,c=me(function(e){return e===t},u,!0),f=me(function(e){return P(t,e)>-1},u,!0),d=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];s1&&be(d),s>1&&ye(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),n,s0,i=e.length>0,o=function(o,a,u,s,c){var f,h,v,y=0,m="0",b=o&&[],x=[],w=l,T=o||i&&r.find.TAG("*",c),E=C+=null==w?1:Math.random()||.1,N=T.length;for(c&&(l=a===p||a||c);m!==N&&null!=(f=T[m]);m++){if(i&&f){h=0,a||f.ownerDocument===p||(d(f),u=!g);while(v=e[h++])if(v(f,a||p,u)){s.push(f);break}c&&(C=E)}n&&((f=!v&&f)&&y--,o&&b.push(f))}if(y+=m,n&&m!==y){h=0;while(v=t[h++])v(b,x,a,u);if(o){if(y>0)while(m--)b[m]||x[m]||(x[m]=L.call(s));x=we(x)}q.apply(s,x),c&&!o&&x.length>0&&y+t.length>1&&oe.uniqueSort(s)}return c&&(C=E,l=w),b};return n?ue(o):o}return u=oe.compile=function(e,t){var n,r=[],i=[],o=k[e+" "];if(!o){t||(t=a(e)),n=t.length;while(n--)(o=Te(t[n]))[x]?r.push(o):i.push(o);(o=k(e,Ee(i,r))).selector=e}return o},s=oe.select=function(e,t,n,i){var o,s,l,c,f,d="function"==typeof e&&e,p=!i&&a(e=d.selector||e);if(n=n||[],1===p.length){if((s=p[0]=p[0].slice(0)).length>2&&"ID"===(l=s[0]).type&&9===t.nodeType&&g&&r.relative[s[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;d&&(t=t.parentNode),e=e.slice(s.shift().value.length)}o=X.needsContext.test(e)?0:s.length;while(o--){if(l=s[o],r.relative[c=l.type])break;if((f=r.find[c])&&(i=f(l.matches[0].replace(Z,ee),J.test(s[0].type)&&ge(t.parentNode)||t))){if(s.splice(o,1),!(e=i.length&&ye(s)))return q.apply(n,i),n;break}}}return(d||u(e,p))(i,t,!g,n,!t||J.test(e)&&ge(t.parentNode)||t),n},n.sortStable=x.split("").sort(A).join("")===x,n.detectDuplicates=!!f,d(),n.sortDetached=se(function(e){return 1&e.compareDocumentPosition(p.createElement("fieldset"))}),se(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||le("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&se(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||le("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),se(function(e){return null==e.getAttribute("disabled")})||le(H,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),oe}(e);w.find=E,w.expr=E.selectors,w.expr[":"]=w.expr.pseudos,w.uniqueSort=w.unique=E.uniqueSort,w.text=E.getText,w.isXMLDoc=E.isXML,w.contains=E.contains,w.escapeSelector=E.escape;var N=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},k=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},A=w.expr.match.needsContext;function D(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var S=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(e,t,n){return g(t)?w.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?w.grep(e,function(e){return e===t!==n}):"string"!=typeof t?w.grep(e,function(e){return s.call(t,e)>-1!==n}):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,function(e){return 1===e.nodeType}))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(w(e).filter(function(){for(t=0;t1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(L(this,e||[],!1))},not:function(e){return this.pushStack(L(this,e||[],!0))},is:function(e){return!!L(this,"string"==typeof e&&A.test(e)?w(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(w.fn.init=function(e,t,n){var i,o;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:q.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:r,!0)),S.test(i[1])&&w.isPlainObject(t))for(i in t)g(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(o=r.getElementById(i[2]))&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,j=w(r);var O=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?s.call(w(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function H(e,t){while((e=e[t])&&1!==e.nodeType);return e}w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return N(e,"parentNode")},parentsUntil:function(e,t,n){return N(e,"parentNode",n)},next:function(e){return H(e,"nextSibling")},prev:function(e){return H(e,"previousSibling")},nextAll:function(e){return N(e,"nextSibling")},prevAll:function(e){return N(e,"previousSibling")},nextUntil:function(e,t,n){return N(e,"nextSibling",n)},prevUntil:function(e,t,n){return N(e,"previousSibling",n)},siblings:function(e){return k((e.parentNode||{}).firstChild,e)},children:function(e){return k(e.firstChild)},contents:function(e){return D(e,"iframe")?e.contentDocument:(D(e,"template")&&(e=e.content||e),w.merge([],e.childNodes))}},function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=w.filter(r,i)),this.length>1&&(P[e]||w.uniqueSort(i),O.test(e)&&i.reverse()),this.pushStack(i)}});var I=/[^\x20\t\r\n\f]+/g;function R(e){var t={};return w.each(e.match(I)||[],function(e,n){t[n]=!0}),t}w.Callbacks=function(e){e="string"==typeof e?R(e):w.extend({},e);var t,n,r,i,o=[],a=[],u=-1,s=function(){for(i=i||e.once,r=t=!0;a.length;u=-1){n=a.shift();while(++u-1)o.splice(n,1),n<=u&&u--}),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||s()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l};function B(e){return e}function M(e){throw e}function W(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.extend({Deferred:function(t){var n=[["notify","progress",w.Callbacks("memory"),w.Callbacks("memory"),2],["resolve","done",w.Callbacks("once memory"),w.Callbacks("once memory"),0,"resolved"],["reject","fail",w.Callbacks("once memory"),w.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},"catch":function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred(function(t){w.each(n,function(n,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]](function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var u=this,s=arguments,l=function(){var e,l;if(!(t=o&&(r!==M&&(u=void 0,s=[e]),n.rejectWith(u,s))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred(function(e){n[0][3].add(a(0,e,g(i)?i:B,e.notifyWith)),n[1][3].add(a(0,e,g(t)?t:B)),n[2][3].add(a(0,e,g(r)?r:M))}).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,function(e,t){var a=t[2],u=t[5];i[t[1]]=a.add,u&&a.add(function(){r=u},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+"With"](this===o?void 0:this,arguments),this},o[t[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=o.call(arguments),a=w.Deferred(),u=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?o.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&(W(e,a.done(u(n)).resolve,a.reject,!t),"pending"===a.state()||g(i[n]&&i[n].then)))return a.then();while(n--)W(i[n],u(n),a.reject);return a.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&$.test(t.name)&&e.console.warn("jQuery.Deferred exception: "+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout(function(){throw t})};var F=w.Deferred();w.fn.ready=function(e){return F.then(e)["catch"](function(e){w.readyException(e)}),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(r,[w]))}}),w.ready.then=F.then;function z(){r.removeEventListener("DOMContentLoaded",z),e.removeEventListener("load",z),w.ready()}"complete"===r.readyState||"loading"!==r.readyState&&!r.documentElement.doScroll?e.setTimeout(w.ready):(r.addEventListener("DOMContentLoaded",z),e.addEventListener("load",z));var _=function(e,t,n,r,i,o,a){var u=0,s=e.length,l=null==n;if("object"===b(n)){i=!0;for(u in n)_(e,t,u,n[u],!0,o,a)}else if(void 0!==r&&(i=!0,g(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;u1,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=K.get(e,t),n&&(!r||Array.isArray(n)?r=K.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t),a=function(){w.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return K.get(e,n)||K.access(e,n,{empty:w.Callbacks("once memory").add(function(){K.remove(e,[t+"queue",n])})})}}),w.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&D(e,t)?w.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n-1)i&&i.push(o);else if(l=w.contains(o.ownerDocument,o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}!function(){var e=r.createDocumentFragment().appendChild(r.createElement("div")),t=r.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),h.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",h.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var xe=r.documentElement,we=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function Ne(){return!1}function ke(){try{return r.activeElement}catch(e){}}function Ae(e,t,n,r,i,o){var a,u;if("object"==typeof t){"string"!=typeof n&&(r=r||n,n=void 0);for(u in t)Ae(e,u,n,r,t[u],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ne;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each(function(){w.event.add(this,t,i,r,n)})}w.event={global:{},add:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.get(e);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(xe,i),n.guid||(n.guid=w.guid++),(s=v.events)||(s=v.events={}),(a=v.handle)||(a=v.handle=function(t){return"undefined"!=typeof w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||"").match(I)||[""]).length;while(l--)p=g=(u=Te.exec(t[l])||[])[1],h=(u[2]||"").split(".").sort(),p&&(f=w.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=w.event.special[p]||{},c=w.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=s[p])||((d=s[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),w.event.global[p]=!0)}},remove:function(e,t,n,r,i){var o,a,u,s,l,c,f,d,p,h,g,v=K.hasData(e)&&K.get(e);if(v&&(s=v.events)){l=(t=(t||"").match(I)||[""]).length;while(l--)if(u=Te.exec(t[l])||[],p=g=u[1],h=(u[2]||"").split(".").sort(),p){f=w.event.special[p]||{},d=s[p=(r?f.delegateType:f.bindType)||p]||[],u=u[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;while(o--)c=d[o],!i&&g!==c.origType||n&&n.guid!==c.guid||u&&!u.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||w.removeEvent(e,p,v.handle),delete s[p])}else for(p in s)w.event.remove(e,p+t[l],n,r,!0);w.isEmptyObject(s)&&K.remove(e,"handle events")}},dispatch:function(e){var t=w.event.fix(e),n,r,i,o,a,u,s=new Array(arguments.length),l=(K.get(this,"events")||{})[t.type]||[],c=w.event.special[t.type]||{};for(s[0]=t,n=1;n=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&u.push({elem:l,handlers:o})}return l=this,s\x20\t\r\n\f]*)[^>]*)\/>/gi,Se=/\s*$/g;function qe(e,t){return D(e,"table")&&D(11!==t.nodeType?t:t.firstChild,"tr")?w(e).children("tbody")[0]||e:e}function Oe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Pe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function He(e,t){var n,r,i,o,a,u,s,l;if(1===t.nodeType){if(K.hasData(e)&&(o=K.access(e),a=K.set(t,o),l=o.events)){delete a.handle,a.events={};for(i in l)for(n=0,r=l[i].length;n1&&"string"==typeof v&&!h.checkClone&&Le.test(v))return e.each(function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Re(o,t,n,r)});if(d&&(i=be(t,e[0].ownerDocument,!1,e,r),o=i.firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(u=w.map(ve(i,"script"),Oe)).length;f")},clone:function(e,t,n){var r,i,o,a,u=e.cloneNode(!0),s=w.contains(e.ownerDocument,e);if(!(h.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ve(u),r=0,i=(o=ve(e)).length;r0&&ye(a,!s&&ve(e,"script")),u},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(Y(n)){if(t=n[K.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[K.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Be(this,e,!0)},remove:function(e){return Be(this,e)},text:function(e){return _(this,function(e){return void 0===e?w.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Re(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Re(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Re(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return w.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Se.test(e)&&!ge[(pe.exec(e)||["",""])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n=0&&(s+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-s-u-.5))),s}function et(e,t,n){var r=We(e),i=Fe(e,t,r),o="border-box"===w.css(e,"boxSizing",!1,r),a=o;if(Me.test(i)){if(!n)return i;i="auto"}return a=a&&(h.boxSizingReliable()||i===e.style[t]),("auto"===i||!parseFloat(i)&&"inline"===w.css(e,"display",!1,r))&&(i=e["offset"+t[0].toUpperCase()+t.slice(1)],a=!0),(i=parseFloat(i)||0)+Ze(e,t,n||(o?"border":"content"),a,r,i)+"px"}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Fe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,u=Q(t),s=Ue.test(t),l=e.style;if(s||(t=Ke(u)),a=w.cssHooks[t]||w.cssHooks[u],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"==(o=typeof n)&&(i=ie.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n===n&&("number"===o&&(n+=i&&i[3]||(w.cssNumber[u]?"":"px")),h.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(s?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,u=Q(t);return Ue.test(t)||(t=Ke(u)),(a=w.cssHooks[t]||w.cssHooks[u])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Fe(e,t,r)),"normal"===i&&t in Xe&&(i=Xe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each(["height","width"],function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!_e.test(w.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?et(e,t,r):ue(e,Ve,function(){return et(e,t,r)})},set:function(e,n,r){var i,o=We(e),a="border-box"===w.css(e,"boxSizing",!1,o),u=r&&Ze(e,t,r,a,o);return a&&h.scrollboxSize()===o.position&&(u-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-Ze(e,t,"border",!1,o)-.5)),u&&(i=ie.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=w.css(e,t)),Je(e,n,u)}}}),w.cssHooks.marginLeft=ze(h.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Fe(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),w.each({margin:"",padding:"",border:"Width"},function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+oe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(w.cssHooks[e+t].set=Je)}),w.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=We(e),i=t.length;a1)}}),w.fn.delay=function(t,n){return t=w.fx?w.fx.speeds[t]||t:t,n=n||"fx",this.queue(n,function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}})},function(){var e=r.createElement("input"),t=r.createElement("select").appendChild(r.createElement("option"));e.type="checkbox",h.checkOn=""!==e.value,h.optSelected=t.selected,(e=r.createElement("input")).value="t",e.type="radio",h.radioValue="t"===e.value}();var tt,nt=w.expr.attrHandle;w.fn.extend({attr:function(e,t){return _(this,w.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){w.removeAttr(this,e)})}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?tt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!h.radioValue&&"radio"===t&&D(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(I);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),tt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\w+/g),function(e,t){var n=nt[t]||w.find.attr;nt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=nt[a],nt[a]=i,i=null!=n(e,t,r)?a:null,nt[a]=o),i}});var rt=/^(?:input|select|textarea|button)$/i,it=/^(?:a|area)$/i;w.fn.extend({prop:function(e,t){return _(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[w.propFix[e]||e]})}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,"tabindex");return t?parseInt(t,10):rt.test(e.nodeName)||it.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),h.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){w.propFix[this.toLowerCase()]=this});function ot(e){return(e.match(I)||[]).join(" ")}function at(e){return e.getAttribute&&e.getAttribute("class")||""}function ut(e){return Array.isArray(e)?e:"string"==typeof e?e.match(I)||[]:[]}w.fn.extend({addClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).addClass(e.call(this,t,at(this)))});if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},removeClass:function(e){var t,n,r,i,o,a,u,s=0;if(g(e))return this.each(function(t){w(this).removeClass(e.call(this,t,at(this)))});if(!arguments.length)return this.attr("class","");if((t=ut(e)).length)while(n=this[s++])if(i=at(n),r=1===n.nodeType&&" "+ot(i)+" "){a=0;while(o=t[a++])while(r.indexOf(" "+o+" ")>-1)r=r.replace(" "+o+" "," ");i!==(u=ot(r))&&n.setAttribute("class",u)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):g(e)?this.each(function(n){w(this).toggleClass(e.call(this,n,at(this),t),t)}):this.each(function(){var t,i,o,a;if(r){i=0,o=w(this),a=ut(e);while(t=a[i++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else void 0!==e&&"boolean"!==n||((t=at(this))&&K.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":K.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+ot(at(n))+" ").indexOf(t)>-1)return!0;return!1}});var st=/\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=g(e),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=w.map(i,function(e){return null==e?"":e+""})),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(st,""):null==n?"":n}}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,"value");return null!=t?t:ot(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,u=a?null:[],s=a?o+1:i.length;for(r=o<0?s:a?o:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each(["radio","checkbox"],function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},h.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),h.focusin="onfocusin"in e;var lt=/^(?:focusinfocus|focusoutblur)$/,ct=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,i,o){var a,u,s,l,c,d,p,h,y=[i||r],m=f.call(t,"type")?t.type:t,b=f.call(t,"namespace")?t.namespace.split("."):[];if(u=h=s=i=i||r,3!==i.nodeType&&8!==i.nodeType&&!lt.test(m+w.event.triggered)&&(m.indexOf(".")>-1&&(m=(b=m.split(".")).shift(),b.sort()),c=m.indexOf(":")<0&&"on"+m,t=t[w.expando]?t:new w.Event(m,"object"==typeof t&&t),t.isTrigger=o?2:3,t.namespace=b.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),n=null==n?[t]:w.makeArray(n,[t]),p=w.event.special[m]||{},o||!p.trigger||!1!==p.trigger.apply(i,n))){if(!o&&!p.noBubble&&!v(i)){for(l=p.delegateType||m,lt.test(l+m)||(u=u.parentNode);u;u=u.parentNode)y.push(u),s=u;s===(i.ownerDocument||r)&&y.push(s.defaultView||s.parentWindow||e)}a=0;while((u=y[a++])&&!t.isPropagationStopped())h=u,t.type=a>1?l:p.bindType||m,(d=(K.get(u,"events")||{})[t.type]&&K.get(u,"handle"))&&d.apply(u,n),(d=c&&u[c])&&d.apply&&Y(u)&&(t.result=d.apply(u,n),!1===t.result&&t.preventDefault());return t.type=m,o||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!Y(i)||c&&g(i[m])&&!v(i)&&((s=i[c])&&(i[c]=null),w.event.triggered=m,t.isPropagationStopped()&&h.addEventListener(m,ct),i[m](),t.isPropagationStopped()&&h.removeEventListener(m,ct),w.event.triggered=void 0,s&&(i[c]=s)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each(function(){w.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),h.focusin||w.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=K.access(r,t);i||r.addEventListener(e,n,!0),K.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=K.access(r,t)-1;i?K.access(r,t,i):(r.removeEventListener(e,n,!0),K.remove(r,t))}}});var ft=/\[\]$/,dt=/\r?\n/g,pt=/^(?:submit|button|image|reset|file)$/i,ht=/^(?:input|select|textarea|keygen)/i;function gt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,function(t,i){n||ft.test(e)?r(e,i):gt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==b(t))r(e,t);else for(i in t)gt(e+"["+i+"]",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=g(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,function(){i(this.name,this.value)});else for(n in e)gt(n,e[n],t,i);return r.join("&")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=w.prop(this,"elements");return e?w.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!w(this).is(":disabled")&&ht.test(this.nodeName)&&!pt.test(e)&&(this.checked||!de.test(e))}).map(function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,function(e){return{name:t.name,value:e.replace(dt,"\r\n")}}):{name:t.name,value:n.replace(dt,"\r\n")}}).get()}}),w.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return g(e)?this.each(function(t){w(this).wrapInner(e.call(this,t))}):this.each(function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=g(e);return this.each(function(n){w(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){w(this).replaceWith(this.childNodes)}),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},h.createHTMLDocument=function(){var e=r.implementation.createHTMLDocument("").body;return e.innerHTML="
",2===e.childNodes.length}(),w.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var i,o,a;return t||(h.createHTMLDocument?((i=(t=r.implementation.createHTMLDocument("")).createElement("base")).href=r.location.href,t.head.appendChild(i)):t=r),o=S.exec(e),a=!n&&[],o?[t.createElement(o[1])]:(o=be([e],t,a),a&&a.length&&w(a).remove(),w.merge([],o.childNodes))},w.offset={setOffset:function(e,t,n){var r,i,o,a,u,s,l,c=w.css(e,"position"),f=w(e),d={};"static"===c&&(e.style.position="relative"),u=f.offset(),o=w.css(e,"top"),s=w.css(e,"left"),(l=("absolute"===c||"fixed"===c)&&(o+s).indexOf("auto")>-1)?(a=(r=f.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(s)||0),g(t)&&(t=t.call(e,n,w.extend({},u))),null!=t.top&&(d.top=t.top-u.top+a),null!=t.left&&(d.left=t.left-u.left+i),"using"in t?t.using.call(e,d):f.css(d)}},w.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){w.offset.setOffset(this,e,t)});var t,n,r=this[0];if(r)return r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===w.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===w.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=w(e).offset()).top+=w.css(e,"borderTopWidth",!0),i.left+=w.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-w.css(r,"marginTop",!0),left:t.left-i.left-w.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===w.css(e,"position"))e=e.offsetParent;return e||xe})}}),w.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;w.fn[e]=function(r){return _(this,function(e,r,i){var o;if(v(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),w.each(["top","left"],function(e,t){w.cssHooks[t]=ze(h.pixelPosition,function(e,n){if(n)return n=Fe(e,t),Me.test(n)?w(e).position()[t]+"px":n})}),w.each({Height:"height",Width:"width"},function(e,t){w.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){w.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),u=n||(!0===i||!0===o?"margin":"border");return _(this,function(t,n,i){var o;return v(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?w.css(t,n,u):w.style(t,n,i,u)},t,a?i:void 0,a)}})}),w.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){w.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),w.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),w.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),w.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),g(e))return r=o.call(arguments,2),i=function(){return e.apply(t||this,r.concat(o.call(arguments)))},i.guid=e.guid=e.guid||w.guid++,i},w.holdReady=function(e){e?w.readyWait++:w.ready(!0)},w.isArray=Array.isArray,w.parseJSON=JSON.parse,w.nodeName=D,w.isFunction=g,w.isWindow=v,w.camelCase=Q,w.type=b,w.now=Date.now,w.isNumeric=function(e){var t=w.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return w});var vt=e.jQuery,yt=e.$;return w.noConflict=function(t){return e.$===w&&(e.$=yt),t&&e.jQuery===w&&(e.jQuery=vt),w},t||(e.jQuery=e.$=w),w}); diff --git a/section7/eazyschool-start/src/main/resources/static/assets/js/theme-change.js b/section7/eazyschool-start/src/main/resources/static/assets/js/theme-change.js new file mode 100644 index 00000000..1ee17708 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/static/assets/js/theme-change.js @@ -0,0 +1,22 @@ +const toggleSwitch = document.querySelector('.theme-switch input[type="checkbox"]'); +const currentTheme = localStorage.getItem('theme'); + +if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); + + if (currentTheme === 'dark') { + toggleSwitch.checked = true; + } +} + +function switchTheme(e) { + if (e.target.checked) { + document.documentElement.setAttribute('data-theme', 'dark'); + localStorage.setItem('theme', 'dark'); + } + else { document.documentElement.setAttribute('data-theme', 'light'); + localStorage.setItem('theme', 'light'); + } +} + +toggleSwitch.addEventListener('change', switchTheme, false); \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.eot b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.eot new file mode 100644 index 0000000000000000000000000000000000000000..cdef69f09be0ba253b6a8fcf74a683b2849424fd GIT binary patch literal 136822 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 &=&^OXx>DnU;mPNd2~DZS<1txA+=Q&CwkkVL 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 b)_CDZ?P2@cUmg6udjF%sU(l=3dY|||3h!_* literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.svg b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.svg new file mode 100644 index 00000000..54da424a --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.svg @@ -0,0 +1,3717 @@ + + + + +Created by FontForge 20200314 at Wed Jan 13 11:57:55 2021 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.ttf b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8ecb67b04090d546a75fff5b110a75887a5dfd79 GIT binary patch literal 136516 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

P=Dl^Rj^C)5i_MLUN1jaQkTwY#yUE~OY%Uf% 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.woff b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.woff new file mode 100644 index 0000000000000000000000000000000000000000..9bd812abc35c6ce879a42e0a38ad38412ea27bf2 GIT binary patch literal 92136 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 PTwI$BE<67V$F61&bYTzk literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.woff2 b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-brands-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..2acd92d78fcbf7794e5c03f3b580f60b9305c8dc GIT binary patch literal 78472 zcmV(`K-0f>Pew8T0RR910WydH4FCWD0u@960WvNDONF5T00000000000000000000 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

GeiDTd z5fCX=JLs9;Z7ur|kYw9uFDyQM`6I;Ag{{fx^rxaz=t!FrnCj?zsecV(rGl8We5I@B zd$IZ;01BS3-8(p&$?b;%ibHjAf~Gd-RPR)_rERT?|7()+srmy;QpZUM#0IDk7ylB4 zbB)YHg)+=srWSL3DR|L}WZR0(y9{CmR^Kr4rEc<4mj$qGa7{C#g_32*=bDr6PeCsu zVu;q+^M+JOA|WPVRB3%-TV(1tO-IzLorK8fX*JLA>x1*lXQziCdqgN(CHQl9^`!UB z$?SO~Nq!_%;-a;ovDjlNfX((l3-LhL`0WOAG!_or(VMPJ|D^xS{fP7^v+ENI#PVp5 zon@3K4VZvPiwZ&^C7Xy@1Vey1%vB*yc#(*6PX<|Fh>!wc*5!|ln{*dFblJd^&%H8;TKXt*&Oz zjm~i0wHAFG>L{VSx*S*9*W@1-!a2Ra>&YUod@KsnaCc~?cXh&bTQoRcI2~sPPBe@? zLRxQ*Dm6;GD&F#?SReXP0w z##bZ)^vRcBCTZ|%wo z?W>co{u8XOVOzEo0RmC)n7l9k<4;&0J->_SLg|O+9fsek50z+q6?QtG)%K5essH73 zdCezd3=&QWf4p&wu(56ci3xX{r==l&2`(QIH=BmgA{bzRS(1sz!2m~$M>RL0>HBAHq$YToO?e?6uoN{n_IKIDgrnFwZxGA1V7Y_a51y88D6<*@S{*37X zLwIu!j!4pQ+PFO-QzOuWtL%(FYSMfgYV%`Rn4*!0Z*k23lLlGjLR>HHe2=Yki!`B( zegO^$6=Ubbs;Zpl)WO(jmY`Q$9gCqBRl|$Q3^4r*$>Qs4by?KTp?hyVIQrzxm8n9-lG*0ByzJJA;H~>Qt#5KS zW4f)I+@39v1j1#kS(8&q(AfUOx$)UE^Omd7CrmqHX)UGM0j9Qv?c^gK0Na~Q{@_01 zI!THOq$Lb~ZOoyC)%wYM7xO>)@<>xmQ~Vc9vqqpxr(6j zySZ)cMAdT1cn_D6f7H(wRhZ1tDD?42ExlBf5=JWKVM6GYR_)D3Qf%kFESmbEpW}hT zut8Soq;4j4a+!8N(1-Q2)IK`N(Z;>XJuO$s9${*F8tvk$8iCr}6r_hG+oU(Srj7nF zNndE#ZX0WTwVCFTw$1?US(UlnniOI}io1+>mK)bj#90Bxlmr=#?%nR*mb5g003kLk zwGTT!%mdZ|d^l5CnkzIdN@ih$J6W9C3Kw1Fzg ztm(v9)Hy~p^O77+2;pd0c2~K4#8a%U(MKYQIRi;yrf<9v8Wf*h z%1QQS@LhYbebx3}ZpjUL4i&0{6Ww=(dHRdj?PJ?!;{7Uk)*`>)8gw)Hjw>AG7R{F} z|MdK@Z#r&sKxbbq0_5!Q+xh*IxBG+Rz-Eh_y(y`+4MVCQEY2I<7Xpkf)r!;ivGTi+5JZ-MLn-P@6v$fgr}o3|dYyE}o|l`qCT`zgP4WX#)FuOA)# zLU{3FymBxf^8DGu&Mk-l);La&PF?_mT3yKU8n$pp{wpPqcXf3Vio z(uxk&MKOm-E8QWw$Bm}JK7k~Jsm6u$hqA3xh-4|#sP}qE6XmMiggyxqi_`iTaIA7W z?0ms``n6+niC#Yz#-wwi?cj#vA|U9VypOd;4S+2xa|d5A$_PtNjMPL02%JoiG51{2 zl=~AG@&^hr;|pmWjUX3LG@mVWc>s={D(`dVDi zw#T`r84)W?^z15`J!{NxW1vYo_VoxkJ;lb3a(sf1aZS`nXQ`BG4v#i1vDlz|=pZaQ zK>!SEp&bVh;fu+S4GH=L+#un-v?K^&o`Fsk0N4T|K$w8FKvW_iCKnls5bI*xAaZU2 zBJhO_j(`^>1S4cZ00_9bF!UA3USy;Q#8w?F$r;m51tH-D1-fiY92Afzl6EzK_ ztaXL?2<-^O`-&y`2z5wS8lC^}7cMkq-QaJz#;z?0V> zUIj4h9|+&yd&Cj20rC;FxvU0DbICO^09+pI!JolxCw1n;M(41tJzvNqe%%2bcpoz{ z=rl|KDnQl0IUrKGG1RHBQb#G6Rku!|A{9(iip2z!sbL@>si9Qy$L&mEadVg7ytfv`!?=13Z#-sJ8m#gv@kQq#$*Ar`->qRhBi z)Y7+>vdK8hUDeG+Mo4=W$!c41frP>!fJOyabR?{~NZkVY1;7}J0z2FLIxj^qs*VTU zMTl8Nb_RUSP0inGuHRC5x7e9Y@CGqLP|QeTyW|!;fF|>0-aPDPB<}iXGJ>??SM!-8 z1q{uJ3lt@+Z( zZbx^DH17`$3{qM|IU;m&g*i4i&HW%CfAYRly7oB%87?;=dmTHw21qRe8(%?(lu z2`QaIn#d<~e^ke9mWv7!14~+c(K=2}8V=Lcn8ySrRp$KJi|RmNIq|!Kmao95gV5_l zetb5o^pU@i{uU79quGQ==J+8P=RhR1UrIABq|@s!h7S$4I}exc$gZocsDFu+%#0p@ zxh({VwK~XSf+T+5AVL_KsZN~f=sZ{p>k3}qJp`hJQa7!Y0xlUf;yvapXgew2oE# z2FWp@DSJ~$wWpM_PKtZABV6Uen7i%qo}mfXAq-y#0h}5Vtc}*RwDA@l=5OE)yZ|dB zVipT==HY@#NaM8VR`Zz(malbI=F)}tp3^N3u3Oyn?JC(CnXRgMPV)=5H@da8`Fq4) z<@;gosv>m)bi?Tw$Tl3THpD`!w>zX}-S4S*X04K_SkWAiSeVRYLtfAef)#}dYYi>KA{0G~XU5JDaHWRa zaSR(1+p(0bGo>8%KTRA7dt5M;mra9=wsBqnWMz>A$t1E!(c;D5^n{XGFzAR#Z5N3- zuN&ZHOx6z@yn5@ZktBnXfY|-7d67`!@Gv>t)hXBT9)(sj?Q*P>_^m_;2bQ&d#5_%= z5bjk`^Vx~xAo%z+0P83M zyBdj8`*dp}g;0tMAm`j-uHt9>@1j-DFfJoj%C_mX;lfmqG0j$<+}NY@oU~vVwl_kQ zXgqJPuRWp{yW(ES^Ikxi|6=Ca9tkXB?)hb`tspai!N|3)vXZiAA0a-A7Q@CV%fwns zbC$oFle<3ubdwIw?4Opq6VnB~jfwNEcR65dwsK%RB>PY(`tyW|UwF@3NB>!pmj$_b zpn2r@cZcfHlY&umRnM$QWcp~xhEpehAD_%$R1nQ}qUrV?YfWEE$-H?4?*|cn&r!bp z`~Sosq3Y{*WP>ec!etIoBhz$TWBb#6@=0nit#)3T0eLwscJ6n4r&q(N`u9>u(LoXj z4_ewWUPm_xA(4=wgaX205z4p`XG)#IC`A{Ff1JS;ta!wmF>lW~+C;ajhH>*Ltg9|PDjtd6=>w^Fsd!#vw{ zDiImET4hDSo%Aw+OKZp$^?kKJVGgY-FGXZJ9>Uig5nL$Uj|Fi(Se9jc03A|)s5CG7 zqgN%F6W?_g$kRpiHZ`O$2|~@_NURh4B1g;(!^Y_V`R%Iszpz*_gqG7S&QHocsC?9X z{zJkM6b&y(h0Bdya@$CNxd+Jo6PS_g706l`t{3#7oSp|3-jtvIJ43#gws34vF87TaXCJjuDEVJ`03#8x=I*6 zUHrJifEVrB=3P}JxkHCIK$?dm=HA*QChRdDtI!uF9%zn*%9iNEmcHHYZo8u=S$wgB zJFKW{2JOCP_}+;oG~&^uuWhJ}%BS4~4?8G?rA$E>543+U*qB+!8C0lxrsWbkuq=dG z{sm~|MI=k&rJyweP|5f>2xRnb(qK+#hwz@6A#fiWGjMDdkfbq0jv5W-^y4!{EK)a$ ztYPH9%muDR>sZ_rIQCF72}@TgYs|2QZ8BtWLXw8vyynErkf^k#Mn({HjhI9V14PgX zpPCG02)PxaS{by+^N!S3+t$OHFIN>Z@D})1D^*o^FI&a&vCqDN z@Tj%Q)0>{>ej`YWJ9~6woqD`i8qL>{i)e{RFBbVVWpEAzz&YR!krDjhZZTl)%geCaSqHJz(tm% z5|S;uxYYRxu%Y*G9Z+eXYKmR*UK^fh@^d|Q?bQ`s7PszZag;oEPGnFOW-4gz@F;7s zeO0(HgBy5c9xoos(g<8BjR%8jzE;D~5f=VnY&5LwW_)t9490(S{1JR>{#QzoWsvuW z>(U22t%-tr;JvhS@bdos53?v0B8V*;cHE$ID?1o=lDy;+-~2UK?mq6nhQYZ}BE+w; zt8)Wy<--y&^URG+3f^Yr1WZiQN+p~#`k9X`-`QXS1#e?Yc}Teqm$Y+g;HXx%9^^%m zo;T@I9Wo_YR>tQcwg!%Vk>IQwf9=&`m2ia7#_94lWS5tRsmO4#5`6^0 zjwc8{SA890IIFZS`afm+8`iO*B+aGa!*?g^>7pM^O;;o#22=i;-g^w}|EPR4=C1ZU zpmITlbry`9MIC)Rf68B|roN>6odX}(&IzslA`nxE+pNnzONY0j+@gDEXU`Vmo^)Wa z7jIAOn9yJcTgN#3Z~N0B09WO$0t`<}OWzqUT&hWO$Z}3>mE#S!^jqkV zIVd!d8fX=XdG6qW76MU!8m;Ld}h)ph5tx{Kwh4@avbZZ%svp0l!7tr5epz|1vc)S5)I zobeAPy%RIiam`)kx+7Ol{Mk{^^v*4XcMF*6f!6oH51qzNYvB3sDN}w%5!8)|cb|=W zht_|Bcvmxr#;Vrg#{9JW+E3rXn?VwVgKARp@Ete8tSL#Yr-o{-)s5rsHUjYj{qR^K zYGVzb9?@**@FCk`=CkWpQ+1e5vGQ~7Z_?;l6#D-zXo64DK*Xs3#6EV_%kMxvHX{q^ z%4Ol~O|Z!2rVcM*r7y7QsHOBzp*cK@%ugGN0Fx9PzCnK{pf^Wj+R~WoKuw<}lq8QS z1}ic5qoNYkd%C+&8k%+NW5`XEA zKn~&Z0wJ z`^CP0j(FVk{vv9|^^EqK#~t_Bbywf28vHv@LB@r<0ajyK z;0P*Qf(7j;(pP-#60kH!sBix@$;7>5sV5hz9C0G<_)(u}Kgim18tq05afbEnIP=2k zo5RSNiZBiyZ5=+^LfdwCiU-DWr$6uUV=DLjnMT{!t`rdP^Sk=_H!jtncdjM=!Ht1e zKH3wm;f$@w2{f{Y^i?|+_u;^YpALHWYA^fdMfvrMXV~cLG1xSZ;%N{;kq!yVVVrn) zWy9+bv@RMStf*oX2-1XF>+F__gHpKX0CUfyVxTUN6#4YyP$^I(2CD-_Vh1T! z+z!X`w4@S;7f;WyE?eqJa9n|rIs&@M0!<`>MT}BL6jWLJw}HBAJGcMnn{udNUR25k zUQMzg#Ng%o35n;jc~zN8#?{MOSE8H5P&FY?9YCYa<+9k_$y3yWy%dM9dqahv$!m0Nm}SZEJt0(l#vay^L5`oAN_?+O}!k?IH}@XT=`JjKBe!v2K7 z;Y&#Y_A_UpyS7j&fY*B+!i0@UGmDJa_beUbyX8u=rs7Myo%o#?CIjsCN2hGds<8U6 zuDRC7CD&1%H!?X>o#rI;NpybeKO-!YF8kBMLE{SR7B`{QEvB5Uq)=ofnr4NJ6o`iB zZpoI6l~gqor=?ZuhIVK#EJW6U1lS>_EC<9}#FgiuL(EvNxdB2DolF(I2zGV=NE;|* z5i9Rm$soMWukimaa%AnSIRbEL+XS7EGXnxn2^))wwA$5?(@Z?iYRfv!Nn&r>g6?Cz zTLw~X>Iz286Bfw9RheeTykQF|GNh{l5w&)}+mALf!UvxNKAlyW>zS1%WR4{uR>7X} z>sv*qd;{y$+E=><-ye!hcxyP(N#bKtHx!#yoVr09l7A@H;6B*<-X}Js))ASpGDIu% zeSRTN#S?rDRDKnrXzvK~Gh~=Q%}7G|`~F5^d}>XcMA|C)S={G(5KV>p?pgyY_{H2Y z!diC3&&udE#U!=_Gzj%?~m}HgQH|HTMC)k4f%bU)uMEG z^OI~Zg53b(h!dd72fw2&K+7Lk>btD#z@R~^B^__Juqh+HF~;IpwcPGpu2zt|CPcl) zZY=BKT{4aQ#z|)DhqAr5i`X9^GB>AyuAD&rV6bLWMaH5zcnR!R`oQ9uQgLv~tAyK z(bnf=NRhCiwmR*6d(zGSlW!V1Fz@q5VPr@31%Nb*-G$vV#Hm*2CIgLOy>hDGykKGE z-Bpd3k9P<{=o^2b@%Ao*>?g`oHH;!Ago!G!3(8SPHZFlI`p2y|u)O{HCu z(mQ9`nXGj(9g@}kQ@aet%O8fcPtqW$+g6&RqcOBk38~bn4T7*B&fL)QJiu$qgo3rg zi$DeaAx7v80t;b8^JlAXmPe&Xa1h9Q+l1@k4aUOAKrQNwXsysPs32e@$BFc8jv4VC zyLli^Cu+Gx%7|#Ao64*_w$fw?GLEC8)TO+TFj&KseJ&iRJmJslO8%!WvyeNY{%&!j?d$^ z7M&W!N6LRg=x9S^v&)3H6v63XNcQe@j<4+w{Ga%@aPmDq5Ale|L z7eKPqr+cSQ-7vKF986mYR@!ljJu0&a2nC1c+!}s*eeORdYC<=)f)n=U`@lq* zN4j%@ZlGWKphBvM0aAU&j)$>rGbJAnlmdSrz^JU^Hu$=0^!xMjsKT=~>zftBR*7m@ zxY@~t+kVgU&N*T@b5>Wf@TjxZ~MV+L_q=C~@k#x)-t|=@k_56&TrIot;N9D>syd=;Zf05=oV<6(4w%a^wh(7Ty2r8jw@xvf{JXZn)AaO_ z#Rl*ucSEKHy+;dkfQ1)U-NRUsjH_4s%95AQq%;A(KpjkE`l_*aiqM ziIPUTNs1@njUUiQ1D7ZO)8-I6qicmgkWNT#fNxWwTL1w*rL^Q3XRbxEYCz~6LxkkO zit#z_TD-2LG9Lw9U>$})#4xUtxM(u#2}nnzg@$-c-!x?eGuDof|9KmLFyGkwA&y;k zNJXS*Ibs6k@-h-|JPp$vPa+uZg`)Raa4r;_<(c2`m`k+bN<;{;of8T3cLK~EB%o(<=GBe?=7~gs2?pg+2LouqD%+8jYqXQF0yEIr9rRKehXW`@Nirrqy^F`QxHqSW> zv^LoBauht})vYoSEw&93^G~}tOYL#~s2JzATNA@-Z&Fi5aw6y;wOMl*5HPnVk&fAr zvs0~Wuf{Z)8>IZ@hy~hcWNGrd{MkIqM2ijRtsx#SS1WIDZQe1?>fcYky!pISN=U>P zY#5_w)C<#Y*{g>-I0CHJeJWTvdcE9xebVvpCUloS6S^`I!cYg(7^X&$-%~>j>#t(Z zi^xk`aV6F3uqrFPVWB^LvHwd0&)yPWgc49Ug)pxNIm7` zJ5})M*FQtQ-a6F@{)F`*4=ZkMVS&Rr6ll_;(~o6xUASoZ^Ut(3$jj1LxRj{MCC>J_ zh%3QQSmkqSwX->k<(fua`%+K>1j;B5_KC|`<$6gC&BA(&75cZc0iab$zEI{{*YQ3F zM;a6o8qfzOC#D>DF`Y!Rtsd)>7{cQZ@@_r;qWz>17+bIo@Et7J4=*K@v`l^?h=esr zV}YGUAOIcB74NgdG%DS>$A&Q60FO)s!@alhp+Js2lO*l+f}|i~-r<|MBWX)<=6gDJ z$bWM{@PveA4j(TI3nI%vn;M>u=xDfBuw7zjkM2@cgA{OW>p(h*gbl)efM6rA@&rva zq2mROR}IW@PN=N-{s)Mp362>mf*%^u_Wt^^tm|&PcN8dqMw-z%U+^T@zxggkB`DOg zn_>+B+oR@`*_mYj%zMc0%${;e$ z5V^L|w59al+9s*O?|=d@Qo04f6lic|^_3yBFZ!_8-*;ze?l^RJUp(6AS#D?0KWr?# z(kV?j@0m5qridT{={?4LR*?fmdiNI)u$plqI2^hRtei0Xle@6^Tz2Xa-TR52eQ}N* zxYgd8w8ZgVPZrdYG#fgzu)Vf-4IT}%QVh&qAfWBLtCjZZ%{Wmm7CRHEV6FX@Zd}-t z8w?A5OEGGOn4`P45G>^iw~u$(+5wp>s=^)a=exp#w7nRqE4-qWoz;wx{ zXF72v{IY9&;_O2NFXcY9xdomD z`3oMn{u~IGF3C;j&e~8v^0302{@0UN+&_&n?lHFAe|&S|9dKppM|D^h*=F!eU>#3vvTwW?z&)fEsM~?5#+RvOlx$@0gmGOE5 zQF;5K`R>-7kZFP}tbxC!S zRYb9c(+iua;6-m}?ah!8m(myL>91i3nFc44*Q(u|nV#RodJk>W3qt9wk(7AqO*=B4 zXtQJ5G1B&UR5nIq0@Ula4G7t++wD?>ay%=g>Q9L6{fFzzs`bwB!GptHcI(U37<{+8 zSC-m)Zw9#hkA_ztYOnWrrvvYbymbeQ1vQ%9xnq~FoIdjZpaFut_1N)C7mp2Cpu11* zU$?WqzxVRfXOHp2=PxVMu=nB~O3_OxpTP+?+YuXI>{Zx60|O6d?Ig%{tZ9$UmMlSl z8EQfl-lsJJ8H1QtDGCdW7Jys^z&L)_Cb)_w)tnPU5cD0|!-0DiGZjX$ z0Gb34XNxAF;wlK$z@-lv1}J$s$F(unXiy-ikwkQ;92wRh(8g$pnXKzEMdIv?299Yx z0xK`&TO`%PH!|l<&iTa+b6ip^*>ZoN3T*%YI7|{J_*zwSyXe@6=g)pT9!Ap#H+1mi zo89wSwX?I>v6L(wpKNL@swvX5-ojifcaBIRlx8bHdrpe*H|pWc*Js^5S>L7EiRf#~lD&^c@*obIcd;|`rXTF@2 zJLX|+Hg%+Cmfoke(V1TLt~JYNJj+Q1oZ)r5mGuc?3RQ(&Ss*aGJPMu3A574d&YYrD6Xxvf zkQ-U_g9uorNKXzWuLOQk$gTyj_8|dPB@$LBNq$1Z#AQhgYm(q>POkDE7epSO{4V8- zq`2BjKEA807$jCmym&n*_6#XTS%NMV5KH)v;M6v+X_P;*S=<>c(&`&J(W;8ci9N}% z2BNPJ6w829hCVKpL7l+_XO-HAOoZ78XYx^v0P7_DzzP zfUF*FUQtAxHM+3;fmAVE%IZ$hW%*1`qe}+`czbwE?y7~KH(vk1d_HZI`>x6VIN0y# zh@u0YeV6KGg3H?Mb6Z9KknP`B;-*o?+*`YVH&;s7=5{7W z7y+aTsVo~})N<4s&3m0=OCxjBq*BfpHG)Q5>Y2vaOz<%E-r4HWU{uV{krrO;Pw4yF zRLyhzgkzYKMeiiNU@_Z!XqzYZw~+>W>s60w9v_PdF`k^&91nFyO2+OW+b7bd9MTJQ3WSQ1BMrx^8Lg8s zSWaXf0^hE)gqwx9RDZ44p53Y~>fwBX6+vsG-g|!gHZ@$;F==(ieETI)z8JT-LhKZf z4s|p3Z9qhyRdw#8<8_;ETRn4Oh)B$BN}*M1!dIs0#m?mj-u(H_9d@01+n1#tr4Rvx zO@~;@Sz1Cu;ja*iVoa!yPy~ZJM8kb_Gt$2bp^K-MskK*{*wKe597`SInSe4QsayD@%}6I=0jBN_If>WSKYn;`p1tqLsDAkefSG-)=*#|67^07ztLv-C$GCn ze_DSRly3_IM!$Zlj3Y?1+l|%)(jqPEKzxl$p4~|A(q_!HgT-Vn-3;hPpsZx&dmX6n zm<b?Y~~g3Hy}5&=QwuYABO4;f(VbICtJ! zzq-|2f-hT`10SjLRTz?=l~VTToJ$9nx~G#6q9CbD`t^(U>g%TvurvH`pq*&g_-=4h zD-5J7N~Z7Rp0i0~j1Vrj2>~=m)?8Z-KD^#JDWZQoxeo&(E3b!?cQplEo~+`jUi9)7 z?J4*ou`TgW@ zOTPqaleo6s86*DbYeYBwZg;mRoQs`yy|&ZM_zH-hq-T3U@PcN^jE~Iv4BM{`WP^FE zu?WwtuL3~&Hw&Ghsaft+_4|uMUqxm0=)nslyLs<9j91sCn{gjeBrm3O0yzP~I9uq8 zt?c#9KdBC!D@FR4$hQWxWF_vqCVqtc2aCIe{>5lS(sX=DQV4>sEIq54`1=Y8-An^_ zRYd;GmFs3gXvA?S5fQ;FFm6K&oOf*uKLtp*wMhh4qy!rntQ5y!B5=Fm-T%Cjz*Zc> z{EwsmZ(sL+ES~daA~DVsAFL4UqfG`Bm9Jxs!llPcg3J66J-#eRYSVg*%T!v?y8LP| z(8X!%K^9Lfy1+!coAKlk2@8xfneGxgz2YC->f_Ldo|D+XW_wwyUN>XMwr$~3am6Qi z+AR0ng=BmTYC(crP84Lsu$`);c_L1BG5Ya-fM2KfbC&ecdB|8tEr&OF=s$Bt!(6ta zJrw8;zO-&>dPx*lN_LdejtLdLIj5Z-bE#E##)z{$wdF8DWJn292nC0px*#Mr3m9M|F~iqOwcs9VcqOe7q$*gryMaAaXTy>U z8;PqL0@*hLRP0ccOivIv>~X?_(*28W#;$-V>Q*}pB|&8`QOeE9KW9KB%{i}36O+7i z?Y_BJu(D`Jxu^|4TVM?uxPp)6`sI_$(^|LR0&UnBjcCeFa!Vn{#>E^Z4Ao$dnA=8= zfSBx`S~SZSC(ML83#X5%4!Ydnf>?LFbs!04_aN;ghB2w+7WK|KJMwZ(f8 z1wlfXUv^=jgosR)8IT26Ns=_?7JZ-S0bBJa{bZ~Xgd&VQkja|lBW;t zFcBU2qAAP*86x*6bKY!B&CHH45+OZTB@(&kTI*#lBf{mtDsf?&BrE~mYLI>#L{ zO>A31RI)H#zTGMaV{|$PA{jAEpPag{0*Lcn*f$F+j@l`4h$nAU?7Q8s#+LjwkQQ|Aj?5NJ6MrQfo}^UZn0X)&F6 zVq<`C%H|2x5{^SmlBBf?dn0xFQ(`6N-RcXz3W6q=B9GYD^6IXJXV~;))oWHjsO#8ZPui3p+D+!km~?4tj|< zBsF-Fxs{9Ou0o{-FAl~pvkPX@n52aqz<6hZd|Xe< z0IYDOX=~GQ=xEjz`xIlxGYY+8(+o4ha)BIB`Q%f|F% zE?^Q?)rar`(Ev~+f;@*`QrjR}Cr{Zq&O);9V1P1rMGI$djGtJ#qha;`EK8LQdB-yJ&?% z@910p6;&I^^G80n6zpjo?q{x>w)M2_w)th)<_*2OYMc3~ayj&4jx`6lLLaVByDZx_ z|Lm6GhHUI?e=s(w#E3&SoVa{{h_Y@kHjuWTRaL{~FioBJ0)C~PoOWbb2_2leHq4Pq zs`V{mTj^U?<>FfqBgs2;3oj;@)6o);$ML;F{OfXMCRt>XdsWQdz;`mOS9h>3i}O)g zj59!pW%+WVQ?_{p3N8_icImYTs(mBLI#H9m{chj;XO}`H7Dv328Jz0oM2&XJm~6S1 z|NSQvmqwFmj=34}*tKg>w$aB$+gv_KC*z#w>sawH9<+@DGmDQpp!H!qDz#+SB@?>h zbC>!h{~tMIeI)Xew8J{0b8mSBgrAq>CCS#fA-7Oqj` z``?Ceoa;+bGMG3UgU0het=|i8J|;kq#my5oRErqQrAG*=45})ErAxpf^B{N_souc2 zhCHVMnG6ll<0$8FcsIIzIWn=na?}r2-UvVn)%+nD2fcy3SX zVGI!ph)8!*x>HIh*EB4Vy}~PWONl28nShEBhQIpQulm)gi@4jf?3%Wp`1u0__mc|% zeu`&vBwJLX_On0g{32fE^`}?C-a@h#TozoKhZrs`0qJ>s>uof*fNr^&Z@`p=z-IlE zZ#N|S1XyxN(vKIu0n*S6$O#2|hXpyW`8%`cy*T@01wXa)W1{&x^V7t_FB1=iS1LX} z^{pYQ?L6Em+_r2io$?G>GO*6o7 zn3JziN!)(PSNvZHUWg~(%oh(ih|iO6NjO1~JBQIMtFDnlc(%G>h?*eg9xP9TAjSyPJm1=ShCcdSt@gmB zK-YXTFqm6i?%hLJwRM-wm#?pn-%SW=bmCh7$Fk|ZQ&V@_5WM=nRzBL(J+pfF#p@}a zZ7dc_-PP)1tdmOfZ^P;vPn)7&ONgw_xMB4{Cf>%j(I#BIQdVfUm$L4IBkcvvmG%xR zObtzp5$H}yt4d@Ymp#m8mVFMmrA|p}|BB932h7b+bFfCSEbcTPoebdIW_9ZIVKSy}}?4gaQwGiGM&3ecI(Sp+D4JD4SDk z6AMz&M2UhRro=uxK+pvAt8s0(pTG-SHs)J7BKh1- zzzdu{Mew`H+V$<5N4w|8`+?qK`E*dO3bGD;=_T8Z^diU>xI7DUgzYvgJ9ZcmiAR!I zBS5&M`js-G8JScV=h}VtuH*@TdT;px!SmMfTs)06o8Kcp)+0rkHcGE>LmXYh&6XxJ z{mqzXx0}XfHl9L0i9cL(m*+=f`N8RtG2iShFX=8$2tr%O=T9f}9$r`t;UaIO>~WRB zxa`Y@H5YsnX|3;`k9I^`vT>>d>=Ybeik>yzEkGRfq{ZvQV!jjijz>G~X>MWchPRQv ze3{**AKQ&5ha;H``*CtYtPQqKQmUnKBF0tzz3YO4jy4mA%&36qA6%J!Y%}=jN1q)) z|LU#nRaqWx9eQ>y?m4}2g%{iKxd-R-&E8JenXQC-V$ExAuOa=k*3_`IY;M+-qX%W@ zyji+sQ9v8vlTm$!m|whmyL+^Cp?@lKH+;Q!dt_J=s+jV zEtzq>CsnhY0V7zV80TbOtyt>TzBsL08|+@ab4z5R2ya9z{b6bsY_5`$>PvsC(#!J#6G=}AolPI~8f@Eo_U6GrNwt_3))hL9jjGk+btB={ zSZkszwMXWi>Pc_PQnmEP2eIyzINbcf9)0qCa^WYewS%3@%7n{$F8;-cH-AMOZpysn zJtetVTuGzgsIsN9&VsMwO9f%aw%{!tAxG=5FfFN88X*%TAsUO_NG}D&>r?Ob9S7U!Rs5`uC{XzP_#%2ix=5BO|E%U> z@W$fniBroJ=-P|wSlF>P6B01GcWB^-$TlT7>LEt+jY-fF$bDEeY1~eK%IXl^y3n@X zcHA|VBac;2%ut&nwcab0qYF$nwccRtWRU~ax(DMyBn|C7R}z6%YP#QDjdZ^m0>!r0 zjGk`Fyee;jP7b!6fK?2YPVopYYiI5~?OOYldz}^WMEvZHT)cgJa`L#>e{to={f+dYTWk8!F)Bn)g+|Hy$3K@vf~8FwLMwBO zT7rog`ibMigmqGx%{A;sh{#Vr`)mSQMoR>9?oY$bhkt=n3c)6vl|vB`24Ww&>=!iy zg^Li-YV{zg$ZX=|i(5%Tf-N5>Pa^*^6xOyyfLO~|umK9(8&W{To&w0B=s$_i))6y6 z6RbR+Ap(Do=S(#$+;ktgOlZ}w0!14z!Gf}fXp`X&Md}Ku$BV0szs@;H$r2hh2^U2r z`r{|Ch0C5YnnkdY51}?1()&RV%Zfn$Ls$Mahc(O2z==5Qe!vuHnhIg=DU6WOi?ifX zYgPnze^~q;%PJIXjEQnV%>$Po59Ho{%?(t7M8A&4mU~b3z9hAWS-15t>7bAnp_u7C zUwTzQ@3*Ykm3YdcqSRALILAFnIDgc?KSIq+*UA@l%MY(vZ5{PPbr^_o%UT(hRr1}n z-Y*f16pMH0ovfqkX11*fX-mn*xZ3J-8{_Tot5?m{*rYVC`O(1`6k<%)oN{P!!mT~p zsGgoQEH$j?-jz|+Xn=21k}B zySAOzb{0cE^X)RRL$%!8-PN~&onX}Xx-u7A37D=om4oFKMubu3tzGHOY<4tP@Vq3E z9D-CHE*p;o*%3F&#K;dAfdwo=Px_vg9w@$2L_Xy#IDbQkVT{@@Yaj5}a2+W(V!f*5 z9z*TDOvqi8*ma;6(NFCb&_N4m1L7P9sD`&HsF>vIFYhuhOpt+o5AoXT+{m(JO5cufuuSJ z=%^5{wZw411HuB3VNeacAClDBE;u7bw%ZU4ZY+ zLvEO_dJ<+uUgywBVPg4BO8~6@Qtnz3_r-oAUYSoPWtSYltuxrzRT(TP(MRoq)2aP3 zJ30Ieac(Qe=u&VkG}|Ta*AcJksSV=^7X|xjn@Wm{TZ^i{&x^*ui9A@E3>D~wY%rs3 zryrBTAsQQ$HML~}8_NnV@eR!Oi)hH9!YL{lsvU3+&yWa+qOf!m!wOkjNBo}k6c|N8 zsBnV+{sj>hn@t;GW%i_F3Mx}csla{nQDche)z78psSS*X+J-lxSj4*x;N!;!R}F_x z=#B=>nc`ON$H>GF;9^)u*Gw{+W`F80z?Nh_Yjo(A8^lOY+wK&doiXB zG)H4*jvhU6gA8CraqQYX0>Oxl&E~8Afi&RO7ms)FiaR257w2}TeO>%Dt=qQdp0xe~ zf7GRgl!KH}$|mxZ6^v0vp7=+Jm%xj$_U#IDmS#mu3lH1rUr^uBwuz3BwQs)4rmmxJ z$()oqVF`Ucja_TnLSIK^Uv1w)!^qk;U1ihe)0ceS3DBA9TQk{Z#{)5p81H=@!0C9H zUe2Xk2f2&%&K&n5y(k?Y= ze^4B{?aw$0D7c7*qZeDo7d0*d`rp3|U%47f2j3*bKFD5oeX!qB0FIrDnjAH0%jC$( z=PfC$NF!WO;z^X|p^R`Oev|^Z_s^4~5(rQ7Fh#PP<+I}$1>^LVd|znZbpQUz+db9S z|5#1{`KH}@_~PkP3XP?KH;;qzuM2s2%MS8 zm~I6>n9SetQSnWI_qhoy8uW#R`QSbcK=(SAc^f5Kx1K0J6pJw^OAeAx%E_Suwy6on zXDuLWl#hV)7bhT=Ga3c~H6~w16mRGv1=w66AgotNv*c{34* zL402hE>Y`=js$H`sB3__W$o#3E9v%~_L&gkQA+GCQG`E1K9Q5m@))i4b$@L>Uc~Wv zva_TYL*gq`KDn^&3|{~*O4C>3tE-7jPF|xY(H;#D0|4MIZolVS-}FrVkM;5a+z?OG zOh(Pb9@y6UHwXnP#`DvrrpGIS__& zOXs%?dBbv6jQmGjC~6V4Qjj{c2h}B<9=9+K9C-^ls&-m)a(dKVvf_Kkti=1Cabard zOqWqnb{Yf(<*P=oD3PWrS=Kw>h-4RNLgx-XU7g$u;HMyhb6x=$v}^6#UO^b_I$nL0 zM+34$Fx3h>;3G{4q~SqDgdmvn(uJe|kp1gvtT_*$g7r27A+SqygpS=gt`W;NG+V#T z_Me*q(^0zaghce>$Q^~G?CazUnC% zMA>iwoGt*nE@L#`n<-Fh`17&Dv{{yiCX|3e;tNwhyeEvB<-2Ol$kvHfR7KzOKmWew z?<17p7ns%oZpgd094FR+iN-B!#jA2PF*eqF%eJDp(ClF!S>=!v8+aRKu(-EY^q41&*?=MuWRS zySC3UzY$WZep_Oou4j^hAeS{V4}r}`;RJyZp=%1UCK9Fsn-r4iD=0J?m10PfQmOUz z$rngr0O+XTwkw>C4k(LEY48b8i}YGfO5H4rT-uKnKWxm-;KGXA-}?*RMCd2L(qe#Kf$I5XEf)ecz+QHwFc#_rEdSvGC$MUK}oy2yQcl zU8eJjArC(5311m3&Ac54vx)@G&hqG+v4EHpuv~Xh5KB`y(A-#n{ z)9Yzc1lpx?nM4u^-Yau7QK&IRu&#OJrO)FJ*H4EC#@lnx&}dn=|E)%wM)? zzSyP?NwJ$^Qc^+%`!WhpFc))t!${mO>pbUsh%N3cTDq3EvI6VVvFgt$43t2lgrM`f zr3Oy|p;x$G9L;9(f;Cv&Z5|l)IB9^_D37|GAk`XpoSz#GxVmjj+=y^{D`+tHzL=a{ zS(a$8sac*B?J*|p121vScZtpxuGJ;SR9mW1ae(rJ0{)<4tb6ty)-R8iEm`8PmritM z4^kNu;;52x*>JXdh8wi%rC55RY>ot+>Ql;S1Y9kU8)g3Rq4JK6bAA-m3Iyb=hI4KE z+x+}Y%UZbX2QqTU25)s*C&}+}#9sS}a_m z!(zo2Y=G0?;y(0?@RBhkj>-mO3EKE}VumF_^6k9#9J%nWGY`@&XI_)-+mMYFwri2w z2m8T4Q0bxePtH4MYjC0+X|B-EKSN-$xLasMjvcelIKq&ZBMuGOw6J2>jIdLh!i^@c zYK#&8*Rvh7?O^3wV4FD+XQNUS*75E!@-&o9Fqz3+_Fu+Yc_hkyKQTq?p)ZoBs3IzH zb}D80V`hplDd9=9Z;_ZV(jYCrgqzt|6z$tUM7p3;1$;hsDUs4amw! ziIb(Q+i;!E6p=-B8c-AlkM(hl`uqPnl1L=X3`V{Yi z*P8CShFNV_$PE;cRB&>8*FI0b>aS+M%fC4(u3-EL?#}(2=k4FF-TCFlAFh&2a_bA& zGC+UGcu0TCU=ua!EhhSRhj$_s&T*8VIccHEv~c<5s51jzc;eHz7G#PwV2gnVRu~Tf zuNA{Fl)6V4=`2(?=t+U}KI_KrWw1RG+65G&myCX z7~W`t_Del+LkGPR;kWqh${;z?m#O=b?4ka2p&k;6&TRV)eVM(=OEI-b6E@}_&8stW zrl4GI6=a+zc`~m}_=Qw(Itc*hDPWN=QG<+d69wKqwi1{hiOCdkt)E^)SJ*4|6azG4MH3ZBP& zm7;10yZ7E`Ao>f_eG`wTMZffn)e{Rpv*Nrm!TOu4Vin^r};fd`6n+gyDKJC;Z#fJJ(My^vHOOlPZGndxyma=TcB9qI^+9YdM05 zE=P>zS&dXWRUXvYkw**SfVD*TV)}~T%mb;aU2f6~hhVvLV?r!3F%c2Fb}EV4!7mO* z3dAgZqKR&h|6}pgmtnHT>AroRCmSBD@kVkAtV2vJ4NTt z9k~5{WdRsUO-nZilOa)2MITyPP{gX7!k&JO>|=MQDXNC%Jm=}3}+QF(@iCzo<$PsXJ&ZJi@I9SPG!~E zBmI%vg}O0bGh$!WwNq*(EEIERtlrOg8U`gv65b}95n$X2py_@tcfM(t`UM8$|7#rm zE+?Gc?3%jMPfVY#&USztarma78{PgsRrW+|$ONmOTp1fMFUcZq-#)WLV7c1tZbgR~ zz{k4mnTa{d^zt8hezW^fW+{g-|7{0BBh^e~m1R9D1FsKMboEr0c-1J)w;IjHpJ}*s zoo}qpl%8pnl{|yOdQ$%K0gq-eAK|!<<^>qczWfLg-WP9(qf+7~;$IQ(mPdHWl)FYI zEt%@yN9F@^Ub8TP8NR-JQd}e*Lw`BiHK{?bw^~3fusHSl3ueGb!zU;QM~^uUc*Pbg zHIZty7_1K?A6ip1`2PihALIHd@OFi4KrHY7i+KHH-qIH+Tu$0M$xch!g5F)3l6{tZIVsyAig?ER`km5=%G?&>Fy|e zeBIclr|3Y0OhTu_k$27Zv9aywF518b4tcEp-|lUW?rc$ZM0fX>Zns21qC+L`dqK5L z@VSs>jx-wd2CiY70lX&`v510lXCYpcG=XUHRT2f+|IX_4iUpTRsLQ@v#ViAZLBoW; z@20=8Il#Qd1!c~DnpQxt9I_dI!36RZF$m@}O57vnZvA`$O)5;kOhwm=`kqxT^uI;)c#Wi7HOG&s z_nEN)1J>==pM?Zv=Q*ha0-!^`Jo^ZNk+EG(nH;NYVohm$d_$E(!L_9C{rjDB&QtpJ z_qD4Cqnvt*#8XaQYqua%45kF6$x-j^Bkj3IWY?%53_!Vul*1-O6^)D%y%Jp(78Z_5ptq;5jo0_L=OiaRlx6iOglvwK z%f90Le&Nu2L9)xnk@WP3m5Eo_Tq&2dgdDPPme1(_B#gqs^BEbfE&1SA)o4q#=a(6z z$b~Itzy8+fp~r%S8$}D#Qa6Fu*NoIieT3d;bK$zWH2v8)XM(r8$_M*Rg16p3x!}Nu zep$cYH6(pX2l)u9!_=YtV=P-(IZrJP3>z<|ETnCu=zdCFxmbg-2n~KZ zVlma%n=HwlMa=jdWkfDdxR97Vw6?|7wK%TW6-vmh4es(qm-KWN9Eh-;uU?+Nc;V)M zey;wV4d~ir_SBb6dW*q=0uF}jeitxb!9d)>O*ikeSgv2cj&nuT-nscbJ7bFK(&S$3 z-zfZ2!su9|MIo0)N##(i%OPm=UJ(|iKh#j+W0z=F(fj0miV+&&$k5Y#24&qxby0#f zCH^yAj*+NV8m*YgP1HI?Cd@uYv@6}CNcZ0t9&?&OD}I_n`L{t9gMG z?k?F#nF6}oQdQ>L(&ktZxp+cScWPt}-jGoC<3c{~Qf_xN}`Ao!iU zAcT}lZJyd$Jljw5NGy3Mxz~>Ui>`0w`Nc=tUU7oZ4DP~KhGrOKMP1A@io(mWz1$Qn zgqPE+#57)l?KFUHQ!D{(7Y%E;o$;CTv(~KJD36v+#-^naY7(ZeKL6INj??OVjozvs zi_+)XKXNBcV0j5htR^AGAN($wOV})2^Ub1t`$owav9L5JG*)-JepCGdSKM!g=%Q(3 z-pEmIoF1N`a4a|{0za?OTr8csu)Vk*)p(_Wj^IZxF%;l0}Wlxv{-~gQ+&cd z0N!{JJrBV&HQ zb??6Yk9zPIwN;X|H}cr_l$14G1>}4>WQus>UcPdmakn0TR=%;%-~wxz34X;^&z=jb z_6#a3fIy_GV-3Z0a3mV~<=8Z;bbKo+z>z~|1QvDrmz={b=jPAS|i6UV^sR$&8lP-yvaWTuw4t^4`fLgM3 zXGMLF#g?CMi=R+rr#!E`_PE?(2}no?P+aGrl4O2MDE_6GT>tP`4{(%kKX`bXkDNQN ztNtZtqWtwZnXLMI`bXccd0Zf`7(b)6SPYMtwyaEShmCc$CORA~uyHzj*|HkY&bH;I z8yU`ijGS@k)p5RYwz^zLL~Y!`_BsQ>OC=x(-cwx|^2WbZJ-`dx=q-yvEc*9Z<7wf! ziA}w`;pPJ8Ju$k!0Ezu`2a)s{n($97s2QX}f5_2iBxk@1gb06(V(aer0PN8Zi8D4orLLy@@ziA#NF&&-+Lpu#iA!+BoGn>p0hOlS*p9mep~28JUgI>j%&J z&{B<-usEQ;T&TI_{kf7$fwOmLPN>_GOF^1n&m*vTsg6zODe$T6OBSKsHQkf_UzAC{ zP>~9MeiBwVvG5rKDJ3R(zi^usl2JimbA>~8MXrV*_a1j&#+hBZTaJ=|sp}9?alrw; zNQg#}Eo4GHdJp5347i$S^r3!wJl`d)3StI(;gf!y7KpbgYsNz~qIe5U#zctnaG2Oi z<`ctJGcX*~310vDlsEee&gJ%ofz3ukl1uCkF{j|EK!`T{he?cy;Ww4JR0qY%{EG%eqWvx{k5YjVst0drjNcgaztCdFl8P0p<*w#L^daA>nOxCA zF*$wcEOh}qDhWK(?6e^1Vp+Mcpg&=4sQ3Rm_r4!&cCABF;@DrBK zYJOqXB>ft0u-gOF$|^83(^VZX`&(pBWE7<};h#vvXl~ZEMy}WB%n;JHeUejyl4< zpaLd(Q2$WpEt>wI^`Ndd3H?T6knwP#W_Zxlhe)Vm)1HmS*qZ?>r2XME-PASR3MQa3 zZs`x|k$wApmj7t+s)*$AqWVGmobsEm@`Ld-$I9b}x?vbjZdt#McRKe|#0w10;r zqFh9@`{sz(?8VpaNaTGgxd#)jtlQjm3aRFH%?ww^s=`%vb$HxLbnD4(yXP6x129w8 zI)B>}5DA_r?>{O3uE??f_ckvqxaxt+CspPH=Z{hvZN2e30hVezQPgrxFgBusug(d@ zyRPg~U9TS*@cvWTC$R%^|Ajv~wflx8yqQO!B_4k51UaP0;BKOm+vTdYuJWVBr$Znb zVXLZQvVLgb7!{(p-`rMcEjG2*B%P_jR3sJJpwGVJN1UOXQOn#{7px7_&ARZc)>$1J z&WOTK93q8PP}FovOXs%CSMDG;a{p4kd2?iQbD}rdYgf0FRptwoy_Z)Ws*AsO?le_q z{$Sj)dd^JFS3IM$o!K=_0i0cpHp9UFavcMqg7LINyvJ%0ncWz>rp=zZrrzmTH9cCl z#$!kCS5zv$fUbV2_eu^%R&aY+l&R=8R?zLS#4_4R_pVXDCGc`jeWJc&v7xd>Dn)pGwsbZz& zg*{!0)9RZ7x6BXs)EQEo`@=1Kw9Jo8F*N>FCl;&lBKIvK>_}~>FFd<-_UyHw0pTbC zgs%J_MY8Y{Xnw(w+*R6^h4N8Wamr$~mi;&?aeboK@e|2~f%oD!)LE?-yz?9OeN#n@ zuNZ2B7ua21?dl7NdA4cC^tr^ozGK_7%>Q2~NYo1+8D`uOVh$w)7Z}^x9kjW&LD>&F zVJobjBgUDyl)gHSpnJzhtGP)EKoJ(k}yUKFz z*a=3|Ljrv-bBM9XRmj|on4iutk?WU|`DOU-8Ro%YN?)+67Rvj3*~qJ=xxT6A#Q9xA z*ZKdT?RW~M1#La?SGsuRt3vDXr%^_g6|r=bl+9qTw#K;dMXvQ^Cr@n@Nb8A_6)=6w z08cbop1e3Xe=S{@ESoL#6;}5#w~JklGRUVj;4@FUf9xY3xL&z+&+= z2y!{8YQk;RY|ZxfcQ!UU<)C-P70IhFDFYc_qf7kL%IZ_Xb20-0Jex4GPidH=VO>Ie z)-WgYFZZ6A{v3b~2ey zNWzO&A6UdlNT2_I8d=XYVluD}AV{KUaaA^XOk-erS)c-SS{OHcGTlXEw55G18!15I z`2_b7EBUn-V-NE*`D`s@Y?^iwJXWcfrQp6i7mXUza@^V@npu;<&H#!_JBY%8m>d{t zxRL1)B4WxBbmU|!$vMf2rn)GEBR8)QLNVh=CORCQ2?4fQW1b1b{1h zdVJF1p!!%JZBQlT&Xrz*#*8b>0OC&A#G)K!eu?B82s0^ZRzrFw1qf%TQegl#=2pTW z#G#|5t873FlJbj7Hz^X7FO&(2m#*PTcRy&*Zz6W-*O(rWQM62C0Oak3ysVCnEKXOZ zY{txzyjtB!;|$wAOz zC;cg?{r-HQznSj>4VXg~_P&poi^_aLdwWBD%DkmeQ1P`0fVTk+Q4a!U z@g4>|>}5nfj2br0YxCdDc@Xv2zPC|t>q6cJ{I$OXXW&GF{Vu2H+D+mHWVn-iclL;I zDc<0^&6FTPjW=MN_$)RFrm@CO4I!D?v@RpB*zIO^9aWGpG1kunC=KutE@JKTC#h`s7s~k zCRdQv+Z)TnawN5$qVlN-yHUrfE1-X$lVod=(M4`G3ki%u=4A>2cMe2VWJbwpmVl#5 zMt!^cCXZQFr(bTBK!%Z6PoYy=${7@E5*{#T(CFM~dL`=4a&jf@EQ2w?CpaN4m|Y1m zizwwmjeSBPm^998&dBPVniYU+@)6Zv3(lH)|3=HooEKYN6$_#kCNHR}jP<$TOS9Oh zg&XEiABId7uI=qZQxWe^<#83o7zVR}3^39C4^f$SvF92Lm%@GO>p|N#?;4H9`Z!Tj zns(XkOErm)ts0GYjnRH2Csv#HHs7ngooGl#W+x0;hEkD-9moY#;_t{Y$YSQ?xPW0i7Muz!y?SOpawGZd zVxEePBw|$cz9pL1MVa z*ShcD?~6OEuWHVE*4CJt0GwNSto)K0Wrm$1IDW#@LUho+XQc)Nvi{EYX(b7 z21-f?>0bjq+pqlF8s1Vv_`XF(nsl6=yX$*PX|MOW%Mw~^RpOEKDXxsM`gZO>&EigbIN>G+1Ai> zxu#^GztkLBS8uT$bBwP~OKxgPPH7zPa5lGqop(!=U%Yd@3k#%eSEG-O*}2nw<-U>< zFmiKQ;MB{g=-9Yc>xNiiHye9olP5o(IJuBeH4?V~f-QhT_;w^1mgEcys367d_78R@ z1%=&vR_^dGE>83>yZzJNXYYlm4{Gn=*rz`J0g9(bV9tizK_Wf)^IuLR6$%E|iJE&kplu1Elr9b~P^4??IVAVR>Zn-^Xb_Z?-YuQ` zOCb*J5b?ieSC@Z1Uv-*LoEkW7%1TetQqj*tGCPH)j#HjdSw2*T7eqSD4JmRD51gP1 zn@u0jjekH81KH-P@bD_`T5<0vz}7o=eO@p#`n`UAy7Z#9=Gn>Fx2%vVbpe*@+yTe zO<n&hL|V)KQji|7!D1o2Bla--ZT2(wFqqf>nz+CpY0;HT=0f8VLoa&Id=?IS zyv;X%ickKw7vZo^M@QWS&qN9fE+tj|?7fBUJ)Ui8j*AZeNx5QvDHC(;BL9+jo6Qj>Xy zu#+Oivrrca_8-R|ORF>X{poSgsF#SUE}>_IYr%ap(Yduk8GX(-b8oLe_W_htM{!oI zv|W6hgXj!YEl_FW16}H8)C>J5^MrG26}Gf^KA+`HFHOh4)zvA*etyaC(xAeJ*D+@} z?ia>~8C(D*SJ09qfp#CY+&V3S;1C@OcSEYLn|GhTBh{zRhe4O~gBcoNgFB_V>Nvmq7{=4G)?}+xpJWJ48Ar zSUz{*Saq2;8MYZ5QNXMPbs5cJuDr;^jzjy&gDm+tZGNNac6z%3KT17M^pin7#A29_ zy%bkw!JM!(#txbgwl6Gse?Y6wO!LV+s6&+pVNJdY7aq~agDFt3PZr3K`v{H$tX@RB*V_^e+&qhUVXoT+)tJ#1=;q=ZT-p`_CJlM-N^|BK5g%@oWR z8?!OeDhgh^{Z?slNrkPI)|8VCdeeBG1MjgNFKwn!N@I}{@H8OHP5gD+HnD$gHwG1a zO4q<1qu5>S#-&G1Fu&^uT4&ep-Ct_2;8I)TgvQaR=sC|q)LNZR&X5%cX#XZ0 z`R=iB52KoC*C7!6Wqg2GW|71iB3bLPcI$`7X=gm)YLFx68;3%ntTo zyGL@1C(Zsl;NdMdPC)|eAw$pPj;u$f*)$EBDCwi( z<6d>*#b3`ROZ#$Mh^|dDePzf6_B0=m_?sx1oRk($zTtIJF+b&7q*UJeLl+$`2fLqJ zc)l#x7FVga$?WAmZZ0f;gs&+#m3U7O@TvpP2fq{q2Q`q>vl)h{D1+k7liSG)nr-W> zLg9j-1wum0!iX}w@YtjWRSzcYc1)K<=C4b`i+;@+6d7E;$Jhtlj!n`>WhX>Y4#nd~ zL_|caZ8QV7a5ov}464F_G~|UN0_2O1b1Tw*1|?PjN6Opa2zS)mhjY0`CQ5UIovg)q zuRCf7a>hoGOn1XKPE6C|MmOKweaFSi%QbMnyt<=d^+2qxmI6!?0_)$?q!_^8KOGrGdo;YEeZI6-?OWzZG=(ZB>#gMPB(& z72o%*UtM%4Tk-Q^@cKLSRN=SPs&x5pWs$)9ll}abj+42RzeXy^uO_<4#x3>pD@J7N zqRypDOY*{>6GtJkCwZs?)pzEwFBehga2=J@s`9mgYr&Dm3R*7>A>&Su^-=b05}Jt^mC$UHk<1xLB0aRfBZ7 zdA4xW&hfBcQ=DGIo^0bCZlwh_Q9gfKPSBr}@ZLz5TnOAeT^#LGa(DOn-YMWeHE!hM z7KDiZkjC|PYe0!EN0glYj}mqb<2IWSWcxhF8qH|{sP9R`tlV|OcioO8{mX<90RfnN z`>Q9ME^cXZ0_2xz=2n{q&EK3%k-By=-O);n0S|x&@;5N=FNYFM(rPv^jY5GzCFv2O z;l6gH`KqqCa!;}epE9s~?ZHKMtU|v%{r@ZkV(ls6W>0yl!{{sjJX0=U7IT3fll@iw zje)CZsy{P|iedsg(1QL!msk~Tav2Sx2&;|;dmqr~ndlY?U+k63niN+U&a2 zbv${RDLc&+BssU5S;h;Da|TKeDv_aPBP$7$9>Br-$M;oPG|S^1K`!|&ozVEONTpyy zv}$@5YS5;Q*vW9wpZ|Zs4bQI-Z?dLilTV$xR>M%htjH0ZEMEcfD>Y}v{zpqZ#@&3K zcC$t-NBHqKg;h$1qICi;ar&pipgo+6#6Rkn-f6x-C(fvt-HC|(`)&iz{~fJ3s;WCW z`N2^o3uY|ArCGM$*WuUFAY$@(B6f4wLuaD-C>#9gb0oS^BhT3h94~E z@Y|}RcC_d?fN=tnG(xm2bf?k2(vyby1<@o_6QC0O^sUC$MGjouPx#G z({ZaY8;C;G(Cend7yym-ha0`9TjwYs09X4n=5<^L=e;@Q4L5O=B_OK)fMv=s0kG)# zN!P*pC|50#JGOfD3!-=7F=pD!`? zS4io?j~i*yIYY#yDLuVDKifGjij=$NaIjsPHO)J!v^2_cbll?2Nh#yUZ&nkh`2Jz? z<<@1MD$F*iqIx|M5We-Wldv2+O04b|ju9?-T^vaHYJoE%5o5={=d8RS*e*PF0avLs z!kxXWZ1-5XI(QvR}mvFuC(lD_bonXpQT;#OQ|KHCdaV=}( zT3>!29-cX)_|Zo_;s*^7Jm?wDHHt&Ei(mGtZ!KZ$V|#(JE8ubtbuncohKg%OGNx`Z zEgl9lhRla_?CcvDzGs$r*5nvFi-Ns56}!q;I`7GgAAx?)Qm)jvFsCx~Y-&zw3P=Vf zFehB$imQblYBD75{)R@*8+b=GPV~bXOG9;@_DV9__AO5AyM$ZofwDy(a}nbnKDB|!-gT355>8jpD)MHywgY--TO4-|=`Isy| z5a-e49_~7mM>%92rHC(zU39=#tB;H-GUF~NAg)r;O;?t1{95=ZMw(D+mSBaBT9P+wV$b$l4t5g!6i%n8nPUu(UE2ICqi zIRIX;c>za$6w>~NxQK_Osk|vNgca-y#-zP&76ipDYjBM&G$psx#3wY5OUaE2DCA+T zO^jMjD8xvYA|y7zILe5WT!}P7 zr50h-mvSO$h=fzKvq3gQTk19qKywb>e)VtRyrCkbxy@6dgtAAx6x##) zmdeaK;e>D#rbq&UEy1i41jtrb=~U@DXZXm<&U_f@a_uGFhUgw_Et3mN6T%cN!l@3?H&4woS!TF;rW1^p9whCHeEzhj1Mp77 zWVB1#2ix5%)1>b0!eo4o5}%i^LULh0V5OW)$;I9mVyM|xAjfliIAM3NsNDtKEmSpT zY9UOLPBMp##3ahmN=Ov)3nr2jczqKBCIEavlsfJ2le7}+LEV1b)b+g%s8k0*9f`YYz!*11SAqZ^DLARL05)oUm{nbV)xUeiGS0<3(d=EEGi zs)8ET)xbk~Cc?NE(HYQ>@CTSrv0BnEjm@=O?lS3(ci>q~veXFaKeDZQkflI4&_ZJT zD;BX$%F6?=85qLhV&)9<_!fm|@RSmzCuxv=2$w5JM2kv>PCrD)mCwpTwNSuMwwmby z>y8jM%l4R;4!=C&Wn67}k`$3kz00n7W=LabhzY33qeoQDJKa9!KXt18|Bj=9fTtq;qE}Gij5wh)!Ke|c1tYD4gTS$b%Lt6haZj_s*rT!k(1r6%a^D@^AUUd~Y0Y))ycd2`WAw>~@lO&9(R4%>s2SNhmY3LA zMs z3AaDb4zBuxJR*14H|+Ii-`TT$Ki>}X)fwybnA6fxjD|TQJ&1|=M;*1UaP1sj>g`+e z7EbWffS@bXlm2W94PlKyV1HTi428#_KRG>s1_iWS$E$e;T~mXrVCY7nRLC?I<|q-c z_$vx?{XvE5P#=f<^-w4&z+TCmNEFSGF(;9PGvnixh?>Zi7M$BV<&AsBkcTy4MKcp+ z=MGB5En<8+!c2SvMo`K4BYwhSnR4`CtPY0QCZQmgA&Ns?=}?D)dX0l5jR*;2DJ~GR z&HzB(k+>tWy2LZQ?=+&TLJ!=PG%Ft!v|)3x=q!S{e-NMbH)<-K_sr{8WL!W`9i@U& z=i(&hg`{gAc;*uG)0HU_%x`a(MaPdXUJ85=pzV!s*l9yet;uaZ;p-U|KMNJQHAd?r zGqEDw@n&6cu=s(}(=1TLz3v=z~shVwsQ=>#vW+c*j}x`!6Fk zr`fmYY*P_Pl0Ifw-%2bcwOt<8!dTm(rN6FNBFM!ptFH#TzTh&)zzEAtDjcB$MO8`w zy>1u&jvdUo6j@&)v(JIF%IVfgOgQ1`qVwS>w}Mr#X44JyCx;;+JgMwgYgfYw00>0Y z{XE%B@l4)w>T;fVwtO~XbO;#<7`dCjoVJ`V?lp(M;wMr+b6$TFVCMx4C^Ng1B~)#q zWYF=&k@q^CiY)WR*sFYK2#zNC$5sN-``L7?{F%nbctYD{lls4-;i^qDRTc;pZV&z4 zlA1W++z5f$pgw$P)?-#A#!5wo_$OP-n6X{D0{Z7B-asRPQQcys8dIQA);C5ObUmJG zYzd2C(;soX$clGK3Pn8Ii}MJ4SFZb66ZUxGiOp*^)?M4QcJmHLWEFtrtR@(Egul!~ z0D&~Zb*cfpucFvBCfI>pqXR29uQ|l=-uzeNscuAm#~^X}!~A2=cTm2PId8oO%BAp0 zs;lisuXIfXH=%*D6j&j9{c$g}swGbc3uAnv$q#(>eqT$d=S_M%oXHlN?S<13nS7B}s~N z?PJVp$BrYdK7#oHFw9IV{-sLVaUw5E1CFWC2Z-x5=2W+*x+GCy`v-%zUR-2gbqG({ zuhp$tlfQG`+O%?a*1EMU^9H#w%8vRWP1LtCc{@9ivRv0dy6q)NF;aA>cMl@j1hy~dm9Vh-{6&Pysqc65Xs^dl5 zCBtFb-if>Ho}T7?B+2zGFFADT?iy83a-GFI;2aSMPZT&oEC9Xj^0c69&t`s$ecng7 zMzBH5-K2Iac9_uS=M@gG&-9y&NoG|HYSoFrG!&#zqO)}Y7_!t>1N9=IpXIC*k^RTFgx-ZSG_+c^Cly#p<` z-%9_;-113)4lRlrv8}VL1-6sfC+nS$CRv1kELWj6P%WD7HaXq1TydP2z!15F(L7hf z!m@ywmd(jUL`zhWrYsL3c<@{uel3fr%U9zC>_LquS>chR#(Nm1PK%mY^7hsdIbr2W zf&f`CnlAKsQ)bysQ>Ca0pBuwUd3(1Wj>^#q^` zAg(`TSaa@=J{@A5aDV19WM%b-aSb?5$MXh+G>~(j{P+I6u0Ixi2&;Vd!KrG^2r^IYcu}NL#%Mt;Iie(pbwJ6seeh})<{G!HiSSe>m{i& zP$E4@j--6Y0>}hm%pyINQa!~50;_QICb6`6hZ45|Lrkj%w4W0x^$tjpZ-JyR9MRh? znAeB)1@un^MX|ZBK0H~|UAb$g`wF9xzfdFnaSw)JdMMHdwtotPRl(6oO%ti;No(x2 zU~;VCgMoSFfn3#^0N3rc3obuPkDx^iSwl{ zG4ZYoC@Hmo>JH}#o<327q2jBDkb(x)d(IQq6OQYS^Mhv|%b4$28LW5AG>nZz`$?k* zJLXp)9ukDn^dTu}e<`%%E6YQgEZXk?BVNwf)Wls_etn#efnwGISt6?U^SdXonBRlD zEx*J`C2MNuzNuYV&z>NP7PP15`b0-psK)q6{$xcv=rh19(d?PtoARa{yZ#&ajRwp4 zgqG{btt$fAkIX^lfe>@Zocmb21Rb_t?i z2i%->H`*dy^_k9C-Vc2E7)vC<$J#j#qdhGv!XZtGs0@|(e*3e)8`-NpT!2?YjVIUN z{}w!1+&6b(YfZECy)cB}ot~O$V)_2Tdq%%Ndq96cQyy|~Jw0u*&)%GY;ElN0&qX^t&+?0}&7iKKXbyWHpf&UzA!%-+} zwShYI#uQNx2gSJz^LX7$S5w z^H9Uf0xg0$&Cp_oB?%;he1@$`uS_?EX3Ed(k9g1&AE?7cY??<<_C_|yqX*6LL9H-o zdz&i(Fk`&6`p}GJyoC<9+8T|#48@vuMMF^carU#gr7(UU}@TE3YmJmpQ&!Inm1)MMDS9J`uX$t;|D1x7$#=M?%M8kxIhMrHz>A9|taP ziH|Z06Dk5n5yTRaw_%p2F#&;KLzXf4e|5+hT_91UDI^S0m<-WRpb0WVMil|ThW*2^ zfeWBYtjr=ZPzKV5FkYCDTSNhf$HyVSbEv|@v<=81;U`Fj0oa&^pe_Yc5SH^ni2$-d z8bgqmVvOaTe?CbNP*OO*LLZN?Q-aio{-YfEVhSA;svyGKbso@$fSI92nPGg3-jF0M zDwa@|s2h3QF1M{f2byw3&!k8;g;iTpo}&n{gY&M!stSK2a2(#^r14;VTbqA6($lwb6$X zy?Q8sV5#UF&L_;;zN;+OY0(t;Tdj3-)PVL<}c!&(>^?g2)D-eOL8B(UlUJC^mjTdZ)aPGYYQG{S0Cyrk;V zBOr19D&ESKJU5oFeU`6yapJ5+q!R_KPwqcpFL!JKzln{4mVPjZT>2)9f zrX2+}E0J1N24fO+D}~2+O^78634Y$7QWZXrRZcJ%R+W^vIn**- zk6vOvb^0lu{~O{#1k5CqVtdHyhV3v+U`A?sGYB1Sr3wf~c8}A-V0taU$v|C@yS|@H4bL2opAguiUKQhe}iWr+%j};xY;YM^e z6QsbzmK*aGob_C^#{RO_mr3p!Lv&G%v{f{w_b;Yz?MpKU?NJVf=Wa#`IsxDzFL-{K zst&~fa9)jc+i_ykx@@P9{jCl2f6h-#;(taTXZCyriOq5&gU3Yq2?m zOUP$+bY~bZb8n6Mfccu)wF9oJg>RjCt_uQ`y*|(a^aCVPR@$-=Fy_>)o!#1;J?gNQ zb8vY&Gw@|xFRpkp^ymtxE%k-*p5HLU1R(Kvv^(A#<1CwJOPcpTfMRy-rI-Dudv`_* zlV!5}(Ag5}H@dlvT7TJ^vS_3u$4=do4sY@C&igI6HH-=i~lp)NvmKw>dG0NFxXtUBIFB@??WghS3%aB10QUmBu{NXj4F-?`gNwCdW_ocV!?A)_M3Cf8AhXf*UyXr!j@vxXjS zR0djldQ`gUptOXFE|U&;_!mtI=n>Mrp3#M^0bqU2tfHb>g+;UV59~kF;eA{?tW&@v z^au#%iD~v5EgP16f;~UxfvlrT^U3BqjNAiCblqrfL3Zx3IKA}lqwb#&uXT|jO|MHW z57<$Iy|#84xj2|S)N=KyEPpAL^IjB=r4ldyxdteoehC6S*YdHlhy(lLU~4j2ZEUtCz*F|8%!QF5t=IQ zc)Wa4F_6+BOslca|El(df;E|zHRs|=&`&E!gAaUNp_xA=MMJYwk!M6edZ46?)3Hz6 zrD3ALcA%L)MJg?Bq(L?V%rGhYu|8;s1&<_&KorI$*3ifwcVIrt&c5|^{9-tbLy|6~ z6mkzE#!9QI|2@l|@o9iM!Pc76Tx{BI!+mELe+fWaQZeity1<%8{a8#!d!)v@NTa{i z2E&63Ar|Le3?~bc?1`>%5*4&^{!@wczS+L^$}R}Of3|%QdaN)OK^1A(A6a!rb;Xp$ zfx7{#n7Ha2==@nQ=ThxAE(97`AcIyzf`I)({ij+8L+Z~_g?Xg{GD#l{q^zhcOzbAO z{)X$GngEpsqQa>tA*J@a5rxe1wZVw$TfmZ7ENgC}WhCbg!n+WFRTUr7V|H)P@AGk0 zP5sSFYu7ErmORv?N|)tgMr44ENl=884kICI(j9*@5$3Ymv8731fwVEkJor_{Y(%LH zrQq_GN2F{m4DODBatwedq30gx*E!VV6mfJU0$CJrmSka$){m;C>VPRijtnwJ01~VH zZSLz{?BqHI`Opu^LX~5c>7}`4768%>q;dZl!T6P_K3=CQx1RReT6sJ`d{SI%L&Cyq zN+)K+l7PgFR`&hg6NvJZM}vH(myIp;+1M@K3Gaz&%#Zfmr1FYZTS=J?pB$U$Scf-f zFV$@x?uUFh_eu2Nd zy{`N*zLJMe%pF5R$K!>e$_mjObeNu`+b~?uaa6 zuGi zn1$f{M&fkw^yz{Pha5YOfWf$k_i6OD4W1WaxEfuNQU6pSYre{;>5Em57t6;f_-wdR zE$#!~V*qqL5m9U?M_Mk7d#gez=_A0!aav^B8wMa~TN(pMRpNV|@4b|0c|X&$9C{N0 zR3arYR3uBWZ&DWK+db`G30{-w_s+tgi+4~&(wJfGn4iQApbcTjs*w^rV&^`5XqRp4*HK8j)gc2W3pH9 z{bSV=p^!)3dIHDa2nxRf_7(b?kghbW&)S|Rl>U^C+V@h?-XV*8bK-h(<9xMoQR|L* z>EMVea}V90@sS0ljlSx>;=se3`uRjk9;wVd&P}r_&GA`#w6IregsVqpkOsy57Ujxm$N++5V$x|=L6a5`}?8tL0mgFM^j+R;Gj?i#u`|! zh*P1t6)Vj%FZ5Ex6p?OA6Cn_%&cZ3a+CRQEjy)FNnTUrIxevv`@*aiOH zJpvAY-YU07<}LXx<~Byp$6eC*{5^Yl^^aofEK%YC6fK+RKydkKT$40%HU53op;0}(nE?=Q`AGxOFa6-f7R@pEcN~h zbt@Xky2%dQCYgG{<%36o6-lW{Y;2eL36Vt8)lTY4t{+2iSe23sH((8cBbEv@JY2zo zo2fvwOl%a3!p6kncJcDDWuo?WW1iTZENg3DZWJ3Iw~e_85CYW$JYj9%^N`gPvKbgK zE##{tDP$NK#MW9YTFC620z7Wtd=BLAT&$46W@3|+?I^#P&nsR$9*>->E2i+Dj_aGe zBA=Ft@n4x=yS+Xo57HJNrqQqDfJ!(|P0z&n&oeFWAB<>&G{r}#ZkM4+pzcnsm1ngX zAn&5zq`$=g!kk@Ak&s8xQt{RpfSJ8uoyComYDgy)>QxR(x+0yDp?J;C;Pr4rvw3bp zkbeS3@vtgTvn!hlDW)#OM?XYCMalHXti~6Rd{p}8Gs=FL)xe&21U_WYO<@wRTIPdh zaB_k_Jo7h`_l5AkB$!=ICQVMxh;ucu_i%neMv|pA&cOcJ`ZlFD1dqwp(p>v^_2ZhJ zc+w8=-EVDGS9BZK^1gWP@QvIrHM4C(|5uaVRFK=obaZWcgq9@9xA?d|F zCPhos@ih!|r8g1RCPywLImtX^7)-5hCJB0jJ4Hg!70v=f=<3 zwF*IakNB1|qezBwdC@U@tjN46lfZJX0!FlmD#0>RLqFC>b(fyJV!N2ASrUsR9+XQU z7rgzKuB?nj%!0})L;b2>xBiv!7pQAHoa%H`mqk`gBxw>u|4yt*N}Dh_#hLh)baS}f zt5{{PYKXB{H`rCTrlIy9Q(QbuMo)R?Fv6Nf+o)Jb6K;w$@iKtZ&1ICa}Z$DWhSvz%C zn#bszF$a1&7&6gsS01zVxN|3fil3T#`M{}Fb#`Fd!W!wqn=!bW^TZ;Z@F)UOBu0DI ze_UArMMf?_HzXp$E9D699=oDk@$cfkw2@dcR7`1iELb067GzQZ^jEP;=9J;Xe`7Yz z6+>Xq>i~$9-UhdIC#PP|Yg`Nf+HqaW>-zq=w)<@_kVqm5?o9i` z{JRN8T47}>4~|{Yn-6E+(j~!cYe#kSr~pi95hv=b`edrE%V-DJ`v7!Ct~doi?Wd;B zMr*1x0!jpdF|u`YJH?U1XFMqH!wuW3NZg+hbeaeYM8q6gNPVOkj6g~#~zQ21rqnx#zG&x9_ zkQ1M)EMfg(P3E=oH7ZpHBt2s-G1P(-6w|$%_SA){Rj>}F-Mp0+%o!q14#I`jtXE!B zwL0H1OIYt&b+eeBB|ddNiaEm&0Xc;rZ(ChP0wvL|$Go+1j0=o~xL4dp^Nicb808;w zM=gNP& z)m}zE>j2J%lm7htQJ)F(jB67Cby z0YHy0iT+jGymf3bA&(B_P!0%t)Ci*u=_6J+bNqm*&(zYrfv ztJ4Kv@kzlQN3Z#r>Uvg;1&zyWiyR#EZJy+|&_~4{uJq84g#M zlzMDhb4cMhW=KiE@jJ}|lPQf0UWQn%cBc6pZXnOZpMRGkb^XKFcYbU}aBzHj`?`lW zz-ZIKmUKldjO z`@QtoSY(Cp)`FUl`rPa}#8IU)4NhyQ)k6Tez!C6hVCZJBHNRkHbM>_j_xtytOGWfE z*>{`j7M|@Z-7s@^`yN5i635nw~fes_iLUAJ)PItKm3>@VIwcy zcsq;4c|AaB!JJJ8iknWZ(zR15SB|GN9c@aUKU7?t71dPibR_>-Y%wMmFDgpjuvVX3 z+;qGtdHK?mrp$=qSg-W5O1^DyDDCc z*NacN-+0ce%u`k$4KE_uY~G@{8(%&~8ThEO4X$5b=DKPk9aIJX)19zUF+;CoiY|!6 z!15iLF|^KKX-ZP&@oSqsJpFhA3D#b0dE%(w# zmj$!uBg>b-w-GYciNbW(C8>N3QS8E*)x=!nnr=Fr_!GG+`j5T?^?#8AHa9-}JgA*- zf#*ZwL8yZlOk`kX2RaE21!K#c=nU(wvKSyn2{;y~Y5~4Tg<3DUNP_d=VwV!pl7ZU!OV7L z7Ox>QpAl6QoaWgkbv*#%4}H2c{2b(MMhjfRXfyNV~C z9s+Hr#73VQ7mLh55LWg?`M66T8xxR2^vfCo%`9uNf-#1x0JEZkvZnW4+;)sSK4;B; zN&j7=2W6cWKl%0h(*D=sZ$=;79*%t68~P(YiYIaJ2KqUbe>$YlTRR`TcgH9G)qmgm z{W2s%-#yoigby0eH=AkjWpG+g@pl){A0Rp}no(NRuFg$4QB!)SagL|&j~c4cl+6d5 zSr)0L$m$LejWiB8pJfTDyIc|@8o|>O&TlHoa}@nKTr5J!V`h%LpnxsQUb-$us8uyJ z_@um4OPsB&@63|JK+{eG72{IDXc+jU?QYwxRF9^v=$`2LMFA-WMyes%E6o@DEo%Pt zwd2bXxEhh7YPs#PYIJeROQ4}GgZ}Occ;pUtLCZ< zgleI%cZ_>EKDg|FC(qAcl}eE~y%bh`dqLnFE64lYZi)z_nGp(r#}JXlgX zSSs$SWHA2Sl(h6VLVuPMTj3VF+z*b8M#P3?&Rz_fY+SsIiI%Dq)c&~IzvaZ z!`boautf$M6aZQ1LVgRvAOJE(t{a@d_Zea%!tggN+&>mcsz4%uW+89@QYc_xGp#&G z86JvwmpYqViK?wUie5w8g(rkUDX$R&75G?(9nz6bF4wULuWRWRiP=#v<3kp#}m9CHy-QhvA%G)4wj&}w1c+;4j=B6yu$)pKq zfxNvCI5UgjISW_hfASxjNBRvo9IuQ*IgVEsH*mrJdPwEBBYn6eR|geje(l2nED$ao~G-gEb&jj+;l+rY9V0l z>?uZzDBn*I{?Ul-`Cy_Qp)w&>eugBn#=k)yc*Ibr*?Qt_;fGD!wD`vn$_6mFj6OmyX~o41dsEENk9u%{ z?f!O{Qrct5^V}`|EFkm|O$gNsyiCa*d1WQ!sj=a{H2@MsHl@dwNLmDtMQ4%eT{7B% z1^j4w6I{=xDCmAQkbL_5Z@3B6r0?S_Rxl~uFux5Wki!BK^MabI+uHd9476TGQvko{ zSPFU*ki3OY4P!mi}jN~H484w!<2qk$AvJ!_#$JXT;3;3 z3@BKE0Nn~24J72yn07cxIX|K?5Wr8CTH3Q<{;9+VG&`?Icv}>;ZIU@V%VhlUuq$hu z!QIMqIGIv#!Q~X+yy{Hpj2P?6Dpu7_dC-K?TLXIceXPA|!^(ZF69VPC%30;Btm?|r z(?fdo{$>+->t7T$#T)p`vxI-Es`4%H$$bQ`sXjS%5cuiPz*KD4z(Y?;`rb_Ajzpm#-*U_O0Uyd z+&qJdLjqRdgeDHu%?(c>kLg=ais~1~T_S`R+O1fqb69KbMD}n6jJF|@Eo}<>$0**#JTX?wsyBaTQNSIMR+$Jz&pR6 z4ilxC+-`A=)Nhlz68<$MSGE6Kr81iz#!QZ!|9v_9{(^I5T^veXfmqn;Hy9n3E z$rw(BlhL-3xt6YUI`A5AuAWc)Y$JvDhM6y5I|BHH^^$xjV4af7k=LiB>Z~lso$mVV z-BXg|m>8eZc=+~uFcW4~m(40$v?`SD*X61=X#0oH-rkx0`?fEfPB?Y@#*m)+D435x z>BK4+Ns&8HU;W}`j$a5~5auf@7uyv3+=l(pOR7T)UN7X#N8-Ui>;=P_X}Oj@+2yI< z{WCVcUAe;pv3Lo~O0ncX^s+E<1)2(V!dZGXLxNCA*~`N8?*z~H4}ZRBYfg)&6oZy` z59;z4_a3$`T({^3*wt$Q+C1t`?JCZ*HzZuOKXk&akt+lH3kA#o}y z9R#G8RiPp}8#sM+?*yFcVtm*fHioNh$N3BqN|*!-a>2+WVztEpkrTXk9m+t9&u56t zKLA(%kdQNYrcq^R-KIa_=~3{RWXa$wg#Uph({On^&z`YleqrIglu#}H%-sl!5L=1L z2p0lg3G~%?%$QATngR(aM%Fo=tCoy^2Eh1~-)CFAB;G{mbr^q@P#8ietxu z{3^-=fE_n*b*e<2r8pmc=UUZ0AsAAvervg{uTAbD-!siKrzm4Z`j2&BJ zSS;?6jt(}a`+QK~R~Nm$B#F?M5RJEQM&Y_Sj-=$WAeb7H&6TH5eV+X;bISarq`Got zPjPqV6(JFu1U7mS4~RK z$@_5a%9U%KaeE62xd;^+I-vxdHOR>;K6=zYSm3^lB>TIrDt~;T#X8=d%4Tz%d8bh7 z??fMuUZIc&KO6Ma)*zLXA*8&;Og40M{z;$GQf$MC4u#a^_dk5U6h4brZUlTVeA}wW zaU6SV#N%80l2lV+)SvZ~0!^mQAQIIYV#Ik_%Dqs~l z9Hhks0!pJ`$+!gFM7J$c($iNA>D+iDok?PE^I)3`e(v`rM6bRW0fkDyC{kab?I_v_ zgx#x1Au;nv+yoH=Sw8Mc-whbiM2^G5>sYmCiUnBxbBx(Z{3&6J6hHUB7K&sI-%bBb zA$qSWAj@(NOQNY`fkmvApgl_xWmN3nD_q!88y9ic9w6d#L8$ddiW{B-*=0r;vVRkQ z-6Go-(>_%OC)8 zKp>bd^r~<3Pg{%PoC|l8JxXs6H|ij;#Pd7u9wtS9N03HIJmsLOX;u7Ngu@V!z znY&>@VDi)W2-up>#Y$I+*k(8$fypcUxS+76Ti!uySMzvS zccc=eE(;AbAz>O6!4d$~pxxaj0AjP0$!>HHm`P2fKwvO}38&}8Yp`)jHi?FD!;p+G zdE&sV{-=ik6#{%CW!um0;YR*oxj6#HIhujGmYb# zKt-RM!HpWy*@_mZU9*CYI;ux5(y6qzc5?frhDKVW8=*qDz)vurI$kiIHV>)2)^EE7 zyT4g`V^*^Y9(E2fJ3AlNv+6ESCv!+vilrYE zI@>T!ET&FKkU9h*BfB$=v#%ZeW_XKrnr`V9?`BdbF)KSMni!}XhB<1ub$aDWE~a-hU-^N_*5 zUQ7lRItygOnhsnAU@^qV)dophi2L>zI^B?w?0zxNoTNRzhf?*8 zEGztT?RcgSA0}H>AaYYu0noMAFEnYeG=ji-Xs}T7VQDx)CY!!0G7JXJq+zaADOeGF zq0S@#W@t38BZ(s=Eu{iB)tkx|)`+2J|T(0!6AxPDVi%F^H0>^ga^nZRVivHH~zK`}DXOMZPC_ zbQ>k-{t7KwAdq|OaLK-+glThyfzjm6Px1*21XKCh>CB(mQt5&Y1OW(+#GCtL`XUSKfTl`)OY>nD(fV`d;-A(W=;T|6A2N} zBnd=Fco57#4Wc;8ccq@tgnP zn$(&dG3U*H_*@eJ?FjSXS6~gfRKG?N%{xC6|5yx^xQ&?@A;LtCabx_0KyLE-Lj&!W zDqy$TpkaTsXSwB(Kjl&UU+Cq!-app&sn#<_y?5?;n;hd<>fa4NAZn#!E9>Sp0))+p z!LA0bKyW!@lvtHqIj7@nKRY(63o}Ooh>6_sG<*rfjaGM5wc9+;YDKu)OO0^zUqLEK zP?^pT&b1;_x4k0y7j6uWFO5$X`9O>~2qTn2V^~c)b9c5otKM5h6om_dJ!li}I zteqtqa>#YAm9~?mFL4j}(rB&T^a}awM_D1U*9@N+^8~k59wS5Obj2P22 zDm+>xg!+2~~S(v|;3p zrc2Wp&#tqLCzdg_v1jJP(xih2_)CzgAAXTmAr0-0-|6zXigvv-H@fM>npqrmb0I}Z zSXV6jm%^Tx49F%Z4gBTzcmCa0BK{pb&_4*<-WX*@ByDG)*;jB=|{ z-y-Cm#Fu|-tG9FnLXTA3(iapdOviUfMA@r!S zR@*9G?8?q<;S2{peglG~oyI!jc9aB*l8}tNZyU6w1hy23*F}gQKW@@m=N+#T+j;QC zt8XY~B6#+G`(VA4rbm$iCZdMb{8M;^=ac*ZFV-LlhT;fWiQ;D{f~BJP9a2GlVp|iQ z*-|JWx+VI#MMoVpJDZL{0B=OXl|is_>Fo2WScyJ_HbcuaE_*9AXJvI3rWrt~J&7Z3 z{Kfb9ZX=0+e84=)__}HYGor5Tg9td|{Fp8S7ym{-#F#0cTwgy~K7dtYyuCsF;(7_I zlSfpeCgY|FH70to6%cfg0t&eYP)>_y6l3NOg*C*t;yJMRg0;(mOy{nZaDFC7b)zP} z`#r`{1(t<7!U{~;d$XI@e2j&wYGz8Ioj?8lJJ3%I(v${=7ikyKQFg;5RP{3O5;Y8Vuo;f0M!RMf4K<-+IEc-_%E-8{6w~zs7^h&c}nBl zIZm-}Z-R6AjrqNv1>0AW6i^;*$c>oVn-8~fIf6ra@D@oGe=8}fvN+WbzI<24c;j{e zq;zIAdkF~qzeLa)*D5SQZJZD6H>d!FkIys z@US8*D@R>y(6|a+DZ4+a4u7Bd<@gl;bbiW)O}q}}&W-!`eiTc|Py6y?lHHNCr4bNl zi_P5O&ktO3MBy23Xyd!Eu`E>kAgo?nWzLos^I<4M))SN_$W@BTRUuh+Sw&fTpmcQG zc$P$A@IMsp!n?RYMSL-r*R#WWEad231t*}K&Up&u3B8htBbmzz>$pEzOyq%O!08OM><33 zQ#fh8F)p}l=KsW}lW@UUXc&J~z9+aLie#5?K8zqWNccA$iSuXkUH!4FPKn>Ev->Gs zZp*Ri}ruaY37HBZwldA)DVi zpgixYrHO?%PQH*dIbmLZUP+-Nv*4+-pa$4yeq{FbTwL1H-#s)Y!B?kT^0d zOg^u8jUS;NSYIZl`kU)&U86CM5rv_}_^!zjjtzCK3Eld*^lN5UtFi6MX&7xJ(?3~E zyPSs4B=#P2Sgf;2Bh3xwyv(U_PqHxWBHg^Xff!1iXjw6pEVMG9O(iHehCd6^8d*n+ zKAIqg7xApuT-f1u3@SrzXdozJ3P}=1sgaTgV|)my41?NvJ2h~L3K`}iPxRaD!<~US zTx}J?rN9R#^JLN3eC%zSS|g{;hxz@5mm+~q{JPu&w>;5KQOGD3@VQ8=TqQkv(^0Bj z{QWnL_^f;#TK((Wf2S0~BPd!vU=_v?GcbWhw0a@+ztcJhtihXr>dSqbvf|`{;gdZ` z9K{JrZ?l=$fI>5({R4x{w{-i!9QUd+06v@mWWRU9ZJU=a_q+a{PkInfZJZ$G z_w)!3hwgnpFrjYM>9u|0M8&g|X}6+er@kaq$)c*e`EiJ>OT44-EN$G}YFSja{Yyxa zTWPU;2f|A$NQ7r-(>;-sUlXbs*W<;)-Sr5!XKXjnF5&CRDCx=aI9?)Ls1>>iP~sWn zu6DLwpE>h7{iK^)p+p@R}$o6)BEabwe_smjjPwH&3!+-l|CilH90 zsKtrb&TLHHIMXvxl;}0nZhPihqB!yTX+OZ{2{86Q+ou<_aI1HRP^r7Cxh?2vLo`*; z;m2(eP#;x6n{2X>X@vWUuxk+#4!Y6Q|X4zYgOxktxO zuNs1C`C4dIO*)@3K#RIg9Nd_L{6+T(Id0<<;-ggB0GJgeS+H&)!s{3;_?(T|k67+x zjImhDu^#)Hn~MF5Vz|o|`1tNaF!t8o%h)k@bN~6LkNG%y@glHkX84AJ&ISM+^0qf` zeBYu&Nem&T=pjG&zFV{Hu^!6F3OvvbWzI5OUcMOBr{8yPioJmB$kJ`@zU8xDJ_l}8 zMS<60EC>+`=~!6Bgd&#=A}*RuN$uCWS}kcDp{e_Ai~{NfGkpBe!b4;fU(!U_eajXn zWjh$OZ|{hUL>&N!ap6|#(u_-H8x}s>P+6g~uoGcmInHy>Qf)I>r|S)lRi*_4fPLn7 z-{b8Vw-FoT2n0#lw%qRG(MlnCqUnUPBBjyF=}duQMj0dImqW6$>d<%&6tf_GcPrgc zaCrSj&9p!QAhz4AI8b2I2#*gc#ShWFr72JOH21u;@=Bhc%M{E&A>&ycQ7R-7_lG#* znqB=!)UYhiMo^H*EK^{C5)^fvM#p7BrbtcGS_cZKm*17QIGVRHE!(0qAvCR_Xy`;e z@22`g)8hE>uvL@@%)uIBSv>H+>k~GirsKalin~`tMRfJ(=s2X-4}J%T;}t9vcT!3e zi;QAd1S>T+QqMY4yn=I*bcsO8%Fx>1N(n=k!7w!I^q7S`5q`$2nOmHF%eVM@<|bBeOD-@Ri&4a}_{NQfe7 zpesGdkP%k0E8ni$vF5Lx^>g{-JM6Wu5Tn81s7zxVsgKiG`uI<%&lUK8{(E1MTQpNt z5=Z3VXxfqyV;I|kVEz$UgYUQ(_FP{zaW$BPN~m<8uLplPIbaQv-`pIrc^HSE|8PiE zAQIHIs_D3M$pF9Q_a{60j0B;idDzw{))H4Bfh6%TLxId> zI#P1h7d!LLPK}QXJuolUv1;4zf*>A3|7 zP>_+vbfS>y;uLdp8E42rBtBY>C>iINh{vOst+X3{;HTIh#Q8T9SeZO8oy#MnIQ4pm zlRahGtOnX|yECu(*}jvPH2tb8Q%tmM>F(|W2L2bQ|5~&bNdEy&JolspOm=ma7?R!j zuKuyf!)q;-?_Z6+793EC1pNNaofWVTK{qrS^>}A~pe>m~H^XTx0JNu0D~qLw2`rPy zG4FoPm`Qr28T;({2A1{oW17VDxo+*MIi}YYg+>e8GohvF4T&5rq@7u&#Ab8&6pcA9cjX;;ZkY2oRbc5Xc!Av85a1 z;LLH7RfmXx42G-V)!UD&yE}&J`f-Q)AYg{DCdSn%HBkmu4!s&RKzUJ13e*ThX=xE9 z1SRc}{+Y1l7g~@u`k{IEg&p}8-vT?K6iP;&Ad^;mRnRCEZw1&?@CGwFYuCP>1G;6e zP~bY1Tmx^Y7*9e~T-=(!3EwE;3{5=JNc@pG(d z6pLiKY;<^CeFxeD^fucLX4sDLj%6J4n{Bq{O}31vsKIa69C*p_uw-};MMJut3$)UR zh|+foH%gYtBlU0@=-+#Uo|)%3*4L-L7rPG+%96a3PH0Xx$1O@c7MbbvAK+}Z_xnvc z#Xsd-k(KuJY1%G!Q863pzE(wg_=qs`*rLVL`%Y96?`t4VZgD($61fVMlf&Be=h{PE zU7$acI7u|9Kb5$ouIZ%VL{iTA@EQlhxFqpRsB!1UAH38@S{y!dB|RxD>4foQ!@il~ zw0>I|cou!auW9A{7l>5doGx0$BB4pzHzct%&j z61b-Wou!@lY&a%$9~%mZ^`@>$wV!OzU-lw zR0hF|*TTyRv=a%gfFYQ4Bx4duHVr&Eh7}ba)elET(fIH!zLP&vQYZunRiHUK96|zi1;^)7IKzHe z6y8;jL8xtN_4PA%Fk?b?&#rE{_AOlN4%Mn_K!h10B$X28$%bsSW+4&qDWXXnO7!nf zPK6}>UPKR!dULxpWQs1r10sPOssYh=d^p-#v0jM`_NO3QJ22MEVhTLF2}ijtMGWdk zWStQ*V@$s#09n&z8YWjxt4;35sGknYSL&m1IDjA@n1;r~7`q-pM?nRWLgfeu6LLSQ zZ*8UDd?{T^MQs+!J1={ju!0+*k2xJG1R+ZQ?mm8HGoP~OJ~+4$oY?Ws#f8?~sfT#< zXSeKIpnm`pip|)b?LoZC{PfkZsj{2g8M1Ywoz;`vDvFG5m`q(3coA`~A* za3-x9#=J_5#iUrpf*9kS;(FN*R)+;TZqGp5cB4+D@B zN4%hl>Go)`b1W}GVC2{Vy#FOu6wV<8!M*RkuK)kzn~#IVDsE(CFaW2@7B9Y#IFfjw zx%r*jqmhw!stay!7cVYlK4N@sdB-SOvgA-Vos+Kl)wdu7+h~Dzjr$B}NY}E! zWs`(nW~~xZ>;zGhb?XhWWQDR33TPaVif@44Abi*YuD3}d~hkj6}Zr@}2h$3xoBp-FsE`C*7id#zBR&{P0cAd(;+I-ZASdTbN zLxo-^rW86P+G1#DR^kM`%ZA12Jo!mi(Kt8rXw$AhL%(+;8ob*J=>uw7O5&KFSK&yz2s5Hg!!RM+*rw?Whq^& z?7_ScA(sn&NeM@gDYS|Vi<`G@?MZ>97;eNqDP)vOSuwMOgpoQ6Ex4p9MxrQV8RwLl zZ>um&B&9#=7!e)aHdG=RsGl(nIOfwg(!Ef*+)OC*ycQA?8yp*YEwr`8YdrxgnjBgl z;$KW)YglgO!mQ-bf@hPfCv2-r3C+KBXye5Q!{4{`$-ePHNA+(K0*mA89!45OfA}15 z9<+x%3ZAh$qL>w70Q=l0+|!PXXXmjuMr|b64yR|s6DVr9Jn7HY?KBpeq6h?|t;y7s zWb>U5s8M!bLX=7`gbm#>n7Jw60R{byb~RekkO>qS89=)Xg+5E8nv8ax7J#;WV(Rq8 z6J>PIK8pF%s~9vlBbBr|fh@Xye4G&wW$%Z$k4GBMSdXD- zNuCeg`xD(jPas^D6w-xCqeZ@vVHWWEqK#!2i!aTp_*M2`{l-|3F*pM%R#vX5hak8p zqwMb7h3bFJF*X3qU%w|3m1}&16e!xisxjgu?CkA$>4oNf`TJ6uopK4z!n&^vzU)S_ zBmp6m!c$LGTe0n|%Qp@xtLh%t7u%>FiM2T5upzkpEWjvjG z6M|S$s}}*K$GYoW@{1vwtgWl>*2DUfJxSglcE-=2D~3}S@#`fpyF6(lLI%xw`_*rS zHWDEnJhc5e!>Ia1MXH7b!M+GUC%xAIv1KkYL~doC{?~nlX2g1)Hjze;;Zqst1mXqS z3J}kXIDdR&vr@;NGCmnryGcCYvRe1J@>|V0IQ8ED%_qNT6V*g0OQZ;n9jI^=yei)M zhK}B?(O*&RfXrpP(%T=*9K#Jg_ zlH+B!MU>G4^<{Uo(w^iv=V};;!$BSded;)YSYfrp%s>a}z?-#y%t#h3jP%+wZ!gTe z@{SAj6T;QkSyXHZm-s+6C}dF_EVBGDta*Rtwj(N7vi^^MkTw0~!xZSOdr}9M!0@tH zG1N3aGHK)JqsIwm_4f@PY2Fl#lZ;-|1C#)9(T21gTP&HQSX$0X_h%`#_T=T!-vzB{ zZ2Zwp*llWkX)-!kIW2*Ezm*linF9R$F}3=V-?1}})7O=(bs)`&V8uijDKKYV*VsgJ zU7_a5(bBijg`iw-{DU=n(@aflUln8j3}Fca5AP7eki(YfogjsAsno_`<4>t@bxfrD zZ&$2Yl(G|58w5_S9g`~^}`R3Jepxki(78x={@V?N9HNE=1iO5QzXJ4RWkqNmm0EmmB#ip|GG&B zub+TFgE!v*M-gW(Sq}6bp-~D2@7nf|8X+_#+s?S6i_+Ax5ps)y#b6E?`i1nSH@QCn z0VI>qF?<@r0I8gmokU&?`(Py^#CC@kO-PF12aw0~s12mR%OJU9GeyUI2Z;nHkw9XUCgRt5E)M}3s`a}+ zO^=WE=UhaK1xkgJUy1j81Zs)A0{J>)lYIm@LewDDB2gX#jFpfP+V60gp|GwcMB*wO zU>>5vRrBwK2j~$?&OySVH>w)zQK=_H5dWG~%V@|6KSun2;0gp&5WNK}vqN*1zk}J> z50wi>j_U#zZYYmv;+3-mV^7rlRL9NsCUZ~VtRB(%tlDKmf=bJIGcs+&nVz57)7sQC ztz+3{eb6so55Av8PaX*;qT;DYGM%+}ok%7?Fqz24^jJ0_z1&aY14fp|V(+=>tIiMl zqLC@i-nwaHBR?Ql3UTR_$jCmq#bq`tm_VNPe718rOn3?1-&{5bV}IVyv>9(nYs9L1 z&VIliL8@Ix?bdZ=>64d~UputnqAQH&j9c{gwue?X)p{3swGWS*CjF|h>M`$#8xPwt z@N4TwifVoq!vcMBZ^}E%$Ow%(`sr*_cV8=nfO2=I5&bGP`uaqR1?YQPYRdH`&DP$M zz9b4bqo+!fOQbUCd2lZ&sdu9-IPQ$wlwYlt`pNWQ4c|X*!ov$*R=YDgF@LZrt~kXd zU*nIO8oLuWRf&6dUb72A@EpOa|` zL3=D*nTO2Fgt$~#kW_$syh(tMg#h&J!Bl;VLn^j5VtLK_dYoIIh$A4SX>1Ol2>yo7 zD7cUP+>#>wOAfOIyAlPWNKJrkV)%Z@GpnvF8*1$`Ya@PoZrLPCEt&IVlG=_vpkQQwQ6-F#EB2Iw|KwYC=zdYHlu1%Xt^ z;75ostcV(skai%kdW29h<_I=U4CgIE!f{nfF&YKfDTXp8GAoFX&L|Wd`#d5*HR>39 zCV_ElolD=#O8f7T8RBF9loa6lH8=#WljU$=^uCcb+!DcTwu*kxFrp1t~I@^KuP z;pE>qp7S;#MBAg49f>qL*eXAI%Y~yallf7AHCVg;?Fo@4xi_ORtD-D<5^QOkir# zv72fLc_X5O&M_y|SPQ@s>sWSAl3O*a6?7BMYWKf59W}lEN(5Iw8_P;#6^!|dt?WsD zI>LuY8z=~j_Fx%*Og6>v6lP%bi`HR*((&q1Xyax@v+v5+HXtdW0LV{?%qREpvjbz@QiV2^#KHiRXsKP!4o9p|(v`#P z6X%Lo;cNu2OmK+|>&RdvVeI}UFc$5ywO}w`m5*4s$aRg~9k*RO(Nygcsr9JfQ(%w_ z3`vL$t9LaA3!#=r&=m3Bku^FvBltTMZNx#O1NW5|^Umjf_;cRH zeBT`Lf%3V~cdI4mvYO6$g;WsdYWy8z(XvbjKsM9BiShDZg|S2J?~RBMDNdNvp%NyiLIrS%ROS53BiXBt zpeS%66^sT`f#^3jl39e$1}YJ69DXZEA`+uXkZ_l2zh%aoF57nUL|r zwS&md6fQ>XICjQ_f5pLl-you zmrJ!x$=@4zgt92Zgs4|b2RNcnT#`E)VgHWT@FS@k04G;!4_z2MbD6UcKupJ@nsWT~ z*ngP_9*E}7<%pkg|3gRW#eZQU639fC)#OkOqvoG?FOdL72o!<{hy*!{!Drbl zYR=`^`{prQ7JXQa;7FrP^=r#OKLu6>96<NgAX4x2nz85QLcu@jTDm=g)w zN|NASD|6@r5)xVKgRJ7j`Uy-+ya1jvAq%xLoniiaurBI-kfdlYn>Y39@Y+muf+8X! zb8R!P1*bk~~V>EwB8Clrw8P1Nk|IElB^Mx6F&-h=fiY)1P?+SxFf5pa35BDUGO21r~5dS_s zokCJ5%JBRZ6YEv}-m_}ZiyS(oe5kp^qkZGX_VI4N>J%puPfm30 z9I#O02>>iPQ*OKs-VSC5Wvi$uK8c&D)@)hPG(9>BY%$nSBN{_@2Ki*7?rLr5+O#I- zkMgUY*eDnkeZdzsI`N-u5R|>jmVrv~jzVQD_DMwjl@VCf-x!$9o7|n9L%mo6{>_5& zn*p?ZCr1176tegfe3XZ`whn2!vIwCPzJOabgHc^0DOwU3~vCkrb8fi1Oy6Z zfvCPLV_Dh_0vu3rsH_y4`!@C1FRKivw!~@oSGxuC{5ZS4Su>n>n5;`s`Z}#Yr6n~r z^t0MqXYaI1E;edy8FJ%b z?J{Z$bsVtfv^whM%~br`3f^&U@dM>^))qp$kbFF$c;E_acaL>QOpm`fL?bb}xpAFh zRu)dJeEg=(lUvf+X?D5=!KQ~sdeyMOHy4vB$&pb2z~}ZKx_JZZAU1aO>f{X@E>Db6 zOaN+UeB|AK==%FaI6tihx#J%64+8M=0ApTWTLR>TdJiMQAbh>ZuyfR7WADxh`enGd|#Y@U?|iJ3*Z^Oyk|p8al>$kCgIS+1?_9hF0V zXL@%Zvji_f`{}K}`>-BU?mXu_=l_n`9kkGYd_}~p?WuI19W5_(2xQHIN{MoQ#RgRI z*4bHT0J?WV9k>+Mo9)^gEh}vFh_P7_732LEx~;=}sinSy>J6}y%67mmhtU$4 zI~QT7+&%=sTyS)rG`wShK{lL9Me9GJ$STDwoZvw%=Q3Uxy@X)5P+;!f{3Bj7ERy5x zuRP!MvA{yN!^Kj>id?`Q&j!mC>!FD8(2x4OmbIW=?62o4vzhiQ6J_;A(+C=>5-I4LL1U+s(Wya>IWAWXT8B!(cNm()(6HpZGkG@Zon7D zl_TdBb<9M~?;KooV8Z(+$fBFGMuJWD)H@lEkzMmsn=+8K&}b616Bn+OQTqACXVi&c z;}=VO`SlW13sovqRXut{ElJJI>oXIQvb8%~dUo=}tM#kFtu&A!%=N&d$eT*q=NI!q zm1p~GZJ0!=4iVxmzlIiR{A#rH12aFgP&k!BuGgISWLlb!)iykkJmZ;1UH=a(nPF@`;k!jkjfeyi!RS z>4S$kucBP9!pDR>q-MAHT}E(6;ubATA5y<~?AMY_ExA*i3C|W61RL9UuVYBZR=5ziVV+d~tj8u1=ZKAC3tH&3lD-}Jns}mjpHX;GOlE|sZ>Xg5UYEC8!2T}~ z3GQ5^Lja-z8)znmQdsuMRW0BIq9@eIbrG?eRfdr=bSYR{kqCSv{a~`s&o=WKDrP~j^HE$3E*zke zdd+eg!C3U$T(^YD%>4`R`n1sG^^2Pp7F?b2yweF_on(E}B>x?9YW+|_<7*QbooLIJ zQf^HO7-4wNtt;Yh4}q6<1%i*G;~EcnKfIx+bK$m@joJmmsHD{$naDqc)Qw0^T@`Du^uV(PZ?8w|aO{9v9y zVRcOcV-I8R?_;KPO+b8`s*GrWXGQ2YUHYOAt^N`03Ln=tr8~nBl-lQeEwYZ8{qgE+ z?DPX4CCLYgQFGOn1mBRMesFfi%*t|T)MB*P_q_dOe<#A;**^5=nU(z_$+ML!(A{Ur zQF~YxWdRlA6`|kQFfRNIgs(QWk8KMy!hXS-`W(|umnh=sVIs(T+A^Kk?LY?AqBO=j z=WlydeKQZ=JGZXjrGB;H+uzXZWyI*;&)1@EZm)*LBqJu*nxsr4O)%%)G%hF((K`3C zfU$?X!_PcvH9mddK*d} z#^!G)*Ui-=fKBETc@m6%wks@rr9qoJ%@_dM2l=uPHNU*zM1F`nzrdqKTRdWn4g$`E zjDms_8Lo<}78hJ-qxI6%=pb|5=c?O{?nYdjFus*c8CF;GVFCmK_^y1WFo^7XWW+^3^rec$+N!{izQAQm6v=q_te8Lp$ z8r)1+q3qyIfR&&2BCxDJ;;BN@`OJt^g*SqT&7T&O$HV@lIi=zqmHCjtxaf9~L3}!e zB%bn=i0RLG$fUkwFmd#%Sp+?VM&Z8>!m^R8U?`~wm%eWc^4u%z3{)AqDzu&8_?pRn zwrq!KJv&Sh9C@rCd*6>6N3aul_+3FWE3%5YM12T*y=lj?XKdznPG2I6mDtA#_u4;s zj0=^jfybC)(LwOzERU#JbcM+v2|_TzO(%X^YiBQ_-JO{!#|!#W}|dAxEHE| z*_Is;9ft4|mda>WokEZ~K$ijj<@GlVpK5&oV8v29nu!X)>WlKcl4d1FB+g^gSPfAN zp3JZR#eq9>>!vhIn<+gE6~kS+`BShj@>W7$Uqs91dJ|?p(@LexM>Y?7J?WD?k}PLg z4Xh86)<~WOMmSUop_Q%HX`TP<`3BaIdLhUhr(5zg)l@Q>F2y9X!sx$ zQAj%fI_~3HKW^7++#v=|CYe3p>(_Tf>K-omi_d%jM=A|RgLtWgf#qjgUm9mVpin>i zOT1>9BGZ(b_=&j<@RYH4ir>-`;}YZ^#_HIEJhzY|+n9n~6waRhNYsZq+Q??fl39|O z83cXL63OBr6?^}6wm7i8U8QmFcDLQG70W@t>%0VUQ)5n~8U}Q5?iDLwK5oWy?{QcM z`QV(0rp5%ZvszPVV5;E_VWzWCEj#O#dAiSrcdPE*Q1TZ1-xkD(h?_T}L zmljbSn^Mu(SYgxT=lGZ*i(iS{<>QabG8u&UdfVK`P2|yOWJ{+)>Sef`f+zJAFdF zTII=U1ekVwZ${PXJz&$aH>)}hhR_W-_B0iohhLS*6lNI{TZfT7(Q8_)RI#t?g_xVJ zs9z~(rq}IZILizdvY3w2y&NXXq5;bKZ%&J-xV9L3=evT|iP^02Gn8Ta&8E zlW-vnp6(Ir$xlFJ4v`)~T>5*eFV-_)$ANyF`J&e#tnBv#!$igO6+7PYHETSSycu(` zY}iEujFvySh{Ys-m`MOq7F^K)$2B}HgCI;>j*|g@c+h?czM2i!crVP|wY7|F?d>Zr zS4dw{3sR8G8HO~J?qBsvdr{5H4wE~sfFm+Id6FR|88!E|oVr1#shikN9$(*buPW|& z$at|(B5fYliie!b;bf?hiGR@9H9fvo1bmv%G%!eu8)7oWx)`s-#L=C7r=H9-&sr2$ z@cvo?SQRO(Hu3FJqXg3P&g;}K|Lw&sjlS4FP~ygkesD2{qbj`>U+ir~OK6ozs6|0c zz~9UW0D+kymowe!yPVy;84V&w+vFUscVo)w9vBFS^lu0ZC@)OGLeq>byzN>ZqV(D_ zz}^yY1tzXKQ6*W5UKiItjEX2ZuKXzH&~8=jIj24D?&{ukFRQGLwjrHg9|lPOC-3p6 z-xoH{586Ib3p7?&uOiEp=E9LDlsvU-!z#>?eVaCZ@~EP{nRY8r^WD(uT?0WL@Mum8 zaiC}d=Rv_azgk~HxPxlT<=I%1uPpT-2yAO2kl;{C3v8gWPbU{}nnn9_xnP>hNPX_l zEf}d1a<&iZ%8%J}L}^3v^DujHx2+YM66NU!cpL0OfVdqcZIekV(9d$2FK;cXtT~<5 z_<$i^F}J=(sO(BEMPX_X)NI<8C6xub1rJ8_Aj-nV7f@MUl|_t9nDeZ0|5h-6ZkbR@ zhp|CWn_&*55tW=MR%TI=&yf3FaC6XH-CV?*Edw?ZTbx8K-j~w^8+NWkB{EIp%ds>J zZG|>qG<4Er(pk71QHb%qwS%L|RG6$CJqumXwM`IPAr>xzsj-}J917<$U}Js5Ap{oZue%n+oivjh#ASQlNg`#}24)$a3eLyLgf-{F;x3;0u|Y)Exk8Y2#|1o2IaG z(@J7xqA$s#i2LEdEZCoOP00Rtzj;v)dA4ABnG=5GKRLH zoGa-7K2eozGL)&hxJ(!6 zjq@#dpSlybMa9MEr~ixg0Gw>ju*Rn`@_6X=wT)oVhoxY) zXM$yH;aGh|MVWMf1VSi?{TUv1NTM5o}Pkj;pR4%jSBhzYOK zT4o@o6T3MbhMdzO&_q33r-}omDNu62M-p`DK8WYnmszO%PcX}COF`3dR*R*S(?PqE zYW+t9-&yKzrA4*6#(}gvmD6YYT8#Ixy-SJ86?4+a z_|X8&c8ZmYVjbl@spVi6V}9y7I{mEkNO*8#HI)`kVIy>TKEBM_^m^oAw#5A@Ap)BD z2AiID7lhG2c3{ANpTgBNysN`~01CWyo`5tMCM(Be!GG5O5WU!YegFdv8=i_tp&=1( z{J|zLv8kL-gh7SEbnH%_59AD=@$Q;IPd&dB|Mvi$1^ECr2MU`;f3RUh#056Oh1)vV zwQCH{+waWC&{(wyeh|RY&PfGr)U7pa3>=@`$Hwwg47Bt^Zjle;yAs@B?1!E_2o{gw|a zDDA{RDZ5R4NLw;|#|@ZX2U50p=g}#t9K;~dJKj?;7(g_$5SCxJ(>54kl#2( zL?5T^vRS}Z0+T%$um}QUx(7c*xT}$?V||dFYNs6*1{3o`vUY8lIaln` z#f|jh*a}=M?nty#3~ z+b(S!W-wpp#WKM{U0bxrhKQs2v4R3`=jm!UX`<4cEgJ}boaTjl>`RxJ8NWT>=1qN5kcJt)W@#SZ2d8!;%mNIYj zDn7B+M}hGSeOKvWM7MjY5ytLW(Rqf!kBR}s^QkL0;$;9aSSsnMiQd8Z&2~#tU;DJ< z)%1wRK#Ain$66KH_;g%K@Uy33FpggqT7!_DGzRN9pdmo5lqvX9GZX~$;%2D>?r$R@ zz+)7(E9XCAs~0pkAgs9?3^{&5z{yS!v35NqTzn5178?c?t}G2|Os^gEh~8}IqqW!q z1FEkuckJSa*kcp4mc3z6%XWY}C@2HrE}dX#@e=}`;sc1d>p)0&Nv9ygoe@-c08T2P zSm`cQ(~v+ji5Ya~nAmh=sQ2IG=55K^4YB?_L(w8g)iUrz#*XviO9-2P^9BODJ^S}Y z>4>z>@T4)~@)dyw!QPP!J8;4#`EAJ*^!qhx2xi`@92GiN^uTo5%jh3eNJpB)^|u za>mCF9Wec)4d*|Gta=Rnn-V_QP@kAOs^Qh7%-3Gc3pB3xp!EL@JXjlq$7GtJ52dCbMO6+h%t- zU2c!p2Y?Wapcqb&6wR<4FNl(?sG4q=mhHHnAB0hyq*-2+Ro%2*KaA77tlNH^*Zq2b zz5ocp2#VnZNzn|;@q#GHimK^`Y1xkJ`9T=PNt)$FS=CM3^+p-S$#gbfELZEzcDMgi z{vH!VNmf)%H%!ZR!jWh!o=B$BnQSg!D3;0`E7e-P(QIws3!QGSKNyb2GSxHdyzb}y zwk@LnUuKdORnraAvK`m+0YsQk#)VYcSm*gc7{y7Nc zFK-`T0EA!!#c+b8Xolr@L6l@g)pWzOY{&KdAdKQ9&GMqG>Za}bVVq27^Tl$t-fVaK z!w~{RNRXjGg$8}7B}pkR@`|YPVW@3x2xU+umAT0JjS=Q(R8gb<{{Y2y4f1nhP&s#T z5`NEY4y(fc_Pwuqp>`fpX*mNEKT)U9R*V%_NarY)wO}+jn^ERr>f!R}*RWc^wvoCV zc`2aSNm0p|o1`c9d9au){<4-i6v_8~xzxiV8>vOk&ZzV0IINL2P@Z-E?trIl2aYOC zE=s&M$N9L=humE{{VgKlEb@@A+E?)dGx1I2+cBRibq2%zxng*0WH8{=Lume9=g%Mh z*3t2D*zv2}Mr9gjGG-n>-zq2`6t9%IO?xl@{#Gyh=hted?)va!#^yu3PWu9?8|9Qb z%j@nN(j)dK>QdxmxH3;I#7^m<7ic`7d_K|xJ zk-YaO4ab_RqFLw@dE};xO(c-DAPnYAemfKbRV2&@xf+` zw?@ubk^8b1%DG@WIAaOnuA~_9JPf(KW}6by12s1Mu-hajWRKHne0lwam#G)==x~{B zlRx&5<7h5R4eVHjGQW}zl!D&T6*n2&M3{m(Y68uZWHMQb6Qq0qc6<$jF{;;bSE?8) z%$NOkD7f2_{o2HQxQZdAkokyp+Uu=_Y&aw0)n*3DmFQzhWlGY*xa?Drvq`&;z4dq;kyfqzFz=1VW}0U*va4VP2u>s6&2| z!GG|L}#>)Z5I}u*B zh@u8EJ4pNAY_5F;xZzW{O+G$9yX4XKfHzJ^oP27knXF5=r%%MtH=x23>5o;l-6%&6U& zi|B44j3+6y(kWwCtq>(_K}NZ)3-{SGeLzhc`2FS7D4UqSwe!=sC{6!qrzka#T{CKX z4d%lP+>xx{bY}(k?&Fl9iX~(FDp9z{M2sYP-x>DWPZnGi_8!5xLmDac*@SIplkYrt zS$Zsb_Rdlgm``36waN#oxjuBAel#WeQQt>R7oqqYTnWu+E*NtX?qzm-jAelKL^UXP z_*tkBIJ#kX&{t_|0q&lYZZK9oqw-1v%o^QA@mAY0i?vc`)DhOX@90X84l3L0w}USM z(Q*3td$%} z>)Eg%({txouH$|1Fn`aUDg(B-1pyixNvxSfacpY{A z(fI9ejG`IxiaOF5&h*HYr`{n(dS@F{nRH!D#M$y7@`u6$IfyB)h=W+NB4nF>#-m*6 z^X*ybIavRy;p`=;E~MB>9_)=&soyGs0(iJ1Ns19-!ctK~vVR5bQq5MyL*56YO`q2t zn>cob{2;crct!tG)=<*mg*r_xk0HuYV+Q>@4?oianM z){9;>YHO9%k>ejAlf^HpS5SQ(OhL`4(lu0b)UG*WEOu#gzqIwgzhk+QlQ6wn!;1g< zVNn*$oxv4_2cwcDsW@4{tdzh-zp+h_J}gFs9X~`L)3KIuW*P=-Idfppq&$h&aR}*p+Q7TtG2M;q*H-8?IYHBgyb@oX`lN(7CfK>mm0lxq z*+fiWTjvwu0d@2ZC$1|11^e7*DHx;9H1sG4uH(ogPhwCCUbPmy3!-AAH(+emiP|nb z$fq?(am{Z_XSaq!t+`*z4rbWG24v!Pixew`6PG=nZ-$eJDk0pCG8B0u;Pr>Dbj8qZzQleu%^5F!Q9B69uTU;kaiJG#<1lM?;aBTm z*b4rb0low-ZMbLDZ=|Fd3#|I2qocOTQYiRVc*5tWP{n>>^me{g{`p4@q9PzvvncX( z`mi@tJofNdp9c=1}=2tOrr`MZu_+|bRx7R|v{<#;c z(?`i3!_N! zm88f1jX;6ql;Xg8%!Sh1)=G{Hj$>h_SWh}BI71O7;A`)heE3~ppzhC>Rk(5a_C6Id z#)uh}+U@U-l%?lSkBHz7#ee7fWaXJk85C5~Mtkj*D^yVrP5WH*GWhI0q<(zT@f2E!?4bS{kW`Y&01RIg>nGt%=6g4n=Tj|`hXTUSEvDNSx`rW z9!y}~hcBu&T_f+b#Vn(vpe^VLuXI~Sjf^@W)4MOiXLIn0;bPxWJ3-=-4}-gw9u<7M ik==zO9*S^GSZ8dpg06VcHn%+!<<=isyj%CIkOTmuVJW8o literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.eot b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.eot new file mode 100644 index 0000000000000000000000000000000000000000..21808cc74b4894d5a43e3062729225097d9582ed GIT binary patch literal 34350 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℘?hW)Ts# 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 + + + +Created by FontForge 20200314 at Wed Jan 13 11:57:54 2021 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.ttf b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2775fa1e16f5acde9c37852ed01f009bf1ca2792 GIT binary patch literal 34052 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 S`M)Di_+IM|C>n~+>HiDY3xA9N literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.woff b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-regular-400.woff new file mode 100644 index 0000000000000000000000000000000000000000..e4acf9193fc37803cd524cb2e6a57bcea8caca11 GIT binary patch literal 16776 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 aueZU3d1dPmCNApWs_bP53vP>X4%m{}NRD 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 + + + +Created by FontForge 20200314 at Wed Jan 13 11:57:55 2021 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.ttf b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000000000000000000000000000000000000..bc640928c36e0d678aa1d199dd128602f4c7f97c GIT binary patch literal 204528 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 N@t^#^6n6Z>e*u;g-iH7H literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.woff b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.woff new file mode 100644 index 0000000000000000000000000000000000000000..7a14a11eb7d8746f60f949ee2b159c2460d1c0f2 GIT binary patch literal 104280 zcmZTuV~i+G(_P!XYwNCU+qP}nwr$(GYumPM+xzYF{{1F7(|t}?O{Ox*RClFZWko~) z0096108`ZfV1Gwo+*?4&;QZg&|GPv)l%#(R>3$cmeu16HG=?E6BrNi)N&Rx%|A7+t zURIHo;a9Wz<^Sn=jG-!ehSvIazgjB*09XeA0L=8A#W$0wzT>Y3;q+?*@gIJE0Dw)c z+)aL`UI2jlcK|@`MrKWL31-InMgV{ozqSC(zhJ>)iqkXu6@Rs|UylC^Vh}+vYBOsm zw_k1aH;5wu0QkB=d0=QOTf<*Fn>qjhD865<2^0bC)LP%o4gk>Y_SX;Z7x*ADfO50tnEo{niGb zb5+V2=Qk$-&@lin{tfTU;WRi&Hmo;-rm!JwBg>~ zUAW>N1~G;vIyyS~ItE5PP(bq<3K&>;HQ!HDuG=4gK-_~rAqaVNL}D>>5%v^u3VM1V z0RE0}#%@_x%bsd0OE|rEv=9w!xic?bOScMO{5BKSNhaax<;2pB;w&bO*hS4&Q}s+! z$4L}Aw*k+Glal3O(VZ~P#p0BLhy=%=LS`I@akBu(k691gJC5B*soh`i)nvKWPqv=8 zJ2Q?nxhJ0=?*|wmb7QX#Pb@&4TM*QbB>+3vDD7KxKrLXH!!J?Q|N8#b|7)~ZP{W5d zA-x#xSEF6d3~tP)iWzEzqzeDanKFJ*$J88FX;8L;)tq5iMQhHy(l5Sbs?`5?N!Za( zY-;I*9e#6sbKk|4 zig!@_soR;ba_g}@h-!-tNGOCbrx+CJImCCD=O#56DRjqqSMgdXhW>XbcL?(?WfVc( zpkovfT&QLg8MHttDU$Lo+zcT%!h|3QX+^jL$0`uVX2%-7fowJWS;(`YtJi0Q#|p1L z^3u>H+~oeLAV}h^vi{CjRW6`7K0?jPa1BO%*pO)X1MIsklKPCl&or_yo-~xpB;W zW9_)}r1R#|^*)R6BuMc*iPJP&qIA4%*XvTt0W<6Gv~sC5D21f6VwX}-gwhII~Q&s<=f%MnOr1(NjW3xk>q&MNLL2TDh@B^?F`&nYBgedNGe&+j-o$ zYVdgyM>XXl?~=N+%u-oog${Ft35imq#Zm~E^*P;^VCV(;mg>t2{KcL}5N`R%Dacn+ zPG0U3?RmLJh|FBMN4!pj>M84^Mwh(ldCQYZcD3sTwzu5LnU{86q3HevZ>j z8x9Um$e!c7)0Kfq9X?t=)r>iO?t&QFgh+jT&O*3V#)(t@&Y8u`nMlgmcmKBWTUAu{ zUDk3v*l^keY|Q39H+QM)Jr7p~{4V{cKF_8jM@Hd+5!{ zTj$_OQ^d->EO%)QolqPED)*o@p#ls-;GiA72-g{VHjT+gR`<1IySPz=wL$LA8KOMZ z_~2V@mc!m_7T9{rYu51U!Iz98cWG$%(iyVsWSuIy-B3Efo`~p{L?Knz0CAzze z>iEi$M$f_*gY2=Vj3ig7sZn%QBDG9f&F= zSk?W=TuNBA#CM>vo0$Q%f!?8t09Qw)#5P3c?{Z*<;X6KhwrOKHozO%pV1Nwyh2 zEZxQw+C%%;)PzZ)x~&caFAHtj(lPr(l)64z8u+A@V{p0+4P$CX53^|coQdxPZe#5m z@B>X_>Dtz%1=3|Ni850q&3&SCD&JB;M{vEBedsjvedu zpw*_o<{i#tKXqDoCOz=VfrD05IUD>>5XCE$%t$KTpVECc?C97%a_sO}1MHYyQ988H z13K)8KzoGYT|O@W@Llg!_?te6%V1KV5IuY_Kj4)-NX&d(8h)HbK4v9;k}Q8H@=yjg z&|*96m_FV-jEFo0D17keKF>Pj27OMWe$rI{+ddCBSe1S#vCyMBn0Y;dqJA$ie|9=# zlU^q`z>;3#G>DmA+PxD5cp`kXkUoSk|6D$%O=#W_^01(dd@LtGXmS9j5Is6EPIIE_ zqF^mDmc2vFHi-;zeg>(nK*NapE3)**LrePO;S4651bN){ZsT&T0RAU2MQ%-!ND@psyCbgUk-| zub(^_)$X@1M~2lpqu)#j0Qj5hf!wk>yCBoBMcwH(msFp)xfi$>9Ir01IY+h|IXO8i zEtz$;5~yqWn@KhhFQ6ee0N((j`b=QK1`*?|fk^k%0t8`t2ne-8?5d)Xvp~WKu&2QZ zpdiBsM897@{00%YK6;dwxL0b7I1k^7v(MYxuRUr#F05ltcJXHNjca})JqTp%VZ2n4S~z(p=18a5;is2Ez)O}9HfPmL=v zLV^8be($k<8%SVQ(Qj{Q`f6-ui=@FdJta`->ImK@X|^H$7pe_1DV3h712-qV`bf;G zo(I?)6JPt5dm-m05;P~{XHsTF>(4u0W==N6k#Q<7Kjz$fE0?dCP7bM0&VWT_`KrXJ zh#kxknB4#^u<0M4>K>i6EUmQ7cw%nNk}ez@rV!<*hQqDW=^lRhl;}l7VfFyZ38>D_ z2LfUDuusyl%oFxQX_){YpFi(!bT0(gKYKjkaQT1pLLKxec_F0 zL^I&F1(Ii1w6Aju1|0rOUMlIPq^s{&E34}o zT-8WPgTsn6N zFRn<5=#F}iTuCye=;|<+YbL$OZg|SMzQcNvVcHN*lbs*_j9XC-!WT{vhU6+J`in_R zDY2?h97kH7VsoB$;!H$iv5F+bA6JirEDY>Ybt+8%2Z?GtraD0cTCHA58leu3`y}3` zpRO)d7z5rcb+@geNKaeA8St(GAJe^^h(>O#Y!d1-M45cO9TR1$mS0f~)TxT4g75N- z(6U+3$*q3(*Rz_w(=gcE$W;&!Mff+G~_(=0ImH zV%e;pG@IsMl7~3M>D1Wj7BHhU3zitLuR0(@O$HPP8>wYMOi-qbDq*D*izC6r>SZ(> z8E|I{av=$eA`psAt`o@5R@p&>H~eX4l4qI)AX zEKC*M$w^+Y%v&lRXj3N^2%&+py!^?o!VYc+t2zk@@bO9wvE*n3<@km)&Jm4PV4**hynIw?O~|Cy!)bV-7V*I=V<>LOOsm z{w!@`qGUlydiB{NvA}FSg|x{Sq7LT-M64}3&=TcC-3;Xo!VAkFFO?S1 zXF@V;DU?{{&cL<4JGKfheWE|@MDI%v<4LmZ#ol++JL(|h9)xjtlfh<^C^r8|fgqO5 zjU`FG78$;-8mv&X-^(@arNkV>HXl%F3i!`)n-y#V#TuJjPW4RE_*1%j6AtKW>vD1n z+8x&L+ad<7g5F)NixL2YVP0GX1+RmG3q;Dj3Xf31c*LYE6oK%v5mU)1`HZ198mcfO zpJQA(q=E8lN(xTQR#|!q%NGf%0ktxUt)N)^jI>LRcUel- zGO9l~z~V!g+H-GOl9V#E1l+Eg5Y)%mXo*k`~#=iOec5?6sGl1S~@usM>B{ z$V@8Y5Vq4soOCRA`xCe~IiR2xCA#HkX?xg#;@hd3f_!|i&A;|NXQJ?& z=7mt$y39>^xpVeJQ`RiSV5AzI4@6~*gT#sU4C|OsD+TM=q_vWrM(g2p-0YBAEi#Ge z4v3mK1(vnkDhuIFi0xR~TcfmcL1YcN~WlxC{MEV2UWjNSnsJh-z{+v;`?9uo` z7|;p~-elUyG0KNyB&4?7j6U(Fo-z0gWVP>){N?Ir|71KMcd|#&v~2R_${d7K{4p{kp`!+*kt@-)D&kn)9%JxF5@z zhqbKdhXKK0)gs0s3`de1W7ksyT1a{zUwR6l^ZEQJiNFcQ9ANBP0b}KxfO&w4q6l>W zZKjrC_fQsrck&yf{Xy=44wr-bKBtY!zQ||Ah>e03MS$Q)6@1+i5Euw~&w?(KY_9hQ zO|RaIT~SnPCJl?9gC&w^vQluOH<3KG4a+1g?vbQXN93vp(}AeC4}R8h^n8DFFE_#J zGC{^FsHbII#|%dG;{9(+#tO&;!EPIdZ2?16!o(Y>*7(AJ?9GA2sfYY__M)Qfsf%B} zy-GkDL80|)=Bp;lUpD}pi`d-f-qF@pb{ar-fA$liit)_XjTwv1$dZxVFUTlsCa07k zK;YM9^^{=EmeBb=3PG0-frw7@_S-WjpJ^{;d-{xIEEVvl&g9yylHv0Nx)6k)%@_QS zClrK|x~q$u29y>XgprO|O9`7e`LuuXiOC47Z$yw9l$4~7a-;2>osHM%Z(Kp*yFW`S zJnEzxXr>UF)xyyzNFtX|)#nMrg@h6hQPb#0wAh^^9`t8T&32spcx{ibkGBWBQCoYE z%(;nbgVn6t`Hv&-O`_d{3AYsdYxea7frvy}yOFf_nLc0l8cLA|3?`LL1AK(TU5INBv8e2r zw-=n6w8-G1ICjMKT@=)ulHy{p2-t8GVc2k7VMaVf{tTy_Npy!^k9%9$#)N~DwU~(i z%Z3sFmKnvs?Im5LIp-6(5g5Q&px)p>5fEoKVj&gCSKa9q9gHi3MADTgO>!Di@aI#g zW~gSsHdYoHm~o8NUHI1qE|?z<=J!S{(P1O^>6ajp>Lxy$cMstUTm@O)rAu#TYPhL$ z%{BrGLY4l=B8paJ9FVT1MhG}Q{B2-sYK0&Mb~(#cq0g~G+|Wx5>J%-P5^E>4ZSAze zQf*G@#*E|VWWoisIid5&l942xf}cSwqq(d@Y{0O+ufsnup@#hI(pe_{a<3|3lDu!f zN-jB;aD3Y9bjc;W;F6jU*CbW%wM3Q9NkD<*nOGLi2}%VEE3US>hI3k=oQO@=0EcJ- zphnO|Y?p`Nb`cF*{;wgHg#1VXjBKJ%8#LM#zo>5PQc z7!8dfa~30>>vLrS74_jWFw^+Hb&vMr?!K$`z`cqRKDl&)=O#AnlX=*hfNm0y)HLpv z3naM#ZQ#%i#pvIjia%g2b&yD~%1oiP(F*e_3{X5Q`35-BKl7VX5vr;}Gd5%$Y1G0` zx&5vPCHcdmDkb7zcVTsqA59Vp()9V$7-Nn|&IGveiu^Qt5ro|%1qFm@Vh21)@jg!l ziD6WA0@?%J-bi|JOyi{V0X;^-+ld2-O_upuj4KsST$AIW3_*O6KYEz>u`oAT#b4nB zJQ@-;q>}RL^irDayz*&?O!^{?hCdDbi4XQ>b`45W{GQ2i6q( z#mGo}Ym1QHw{BoksVoshZsfTnaWYM*v{SZ;*??Sa?ZK-#Inb6sNj3!r%RA&X{VF{a z{DUO)H>kk88p)O2K8UMVR}B8TL@rqz)F*U)+7jCes2y1%EO7HNd0dO0xdozovMD7- z{?r}oXjfQ*?elXQ^9L+W3D%}%B}x88XVzE%m0HJ2N*XW(?dnv)kFc^Y64 zTlN>)CFxvA^&+u{MW-1d~Ot9uQd>+4-lSM%O z)|pl_&3+dOZeuN+LaN&d%_rNw=X648tHV`pAPF8Y;EI=uN*zq0T{?lX0zQBL$zR=j zB1+zosTOoI=S1PqX_FFZ%W^Y_pM9%+_z=8xPTG)oP5^$*XrfIen_nC5RNATgJBv*C z{UD(vA-Sx}7t4aUPAO8i@{TT#7_SEfHB&pX+BgOzQQEkGxXMu2hP|Z{1|956&xRHF z0-{6x2XbL4=GoQ2$ZL1~&HHG*c?g*d%@wCbM>~re&D8TyjGktI+78_=b>Om2Fge8Z zuC=jx-DowW(h7GD2lN9H!wQlwZ$w3nel-TUj7!r~a8(+0h_ypqRV`0Q4XJt-$L9;{ z{llY&ifPeaJ|S6afd0hf+3g zZQ5)xE?Cc=ZxDYyjQ)Y4ER>O`k~Aceu^Z&PBEfH3FB=YkB0wxHHR zWM1y2+*>e^e$kLjoae8_cK)9puz+o8XdWFBr~TkMhf&BAQ_q!{kIcr}f4iq$pS;S1 zSkD5yey!y1x&T5S)&9-C@A0KKmw=LIaRGve+*Z*wyNYV`2p+39yxY~?zGC|m_gj5(py z8Zg+u@5YcW6*qfn0a~rXl#oUsY#z;V#G1c?9op)~4ppT@Yk|cE90=2=NRb)9RP&4Cn7TX%45OF@dp@!)+aRum#L=_-uS+i0`^u-kP4k2Ztfa>%fWa@x=E`} zM#;M=cx?mb)yE|ss-J1}N>9lJ&_Ot!Hx<|ahUhmC0uQ+l?27dXx5w;w#pG&vN!YOQ zyltk}9O!Ak?)ATb6GO-zjw@I*jI-My@jRj9;Y-Lnvz)2Q-UD^wMfV2)JuX7q_4Jbl zv%vN?RKWFCleB=39ZwusN!4m`;%;xe&zKuwx~iXBQG&8qbDp4#5;ePe_(a*=V*3+& z#-EdPG~@?A#E=J%v312~SC0DB>8Ul)PD5ZcQ0wc>_LsP(5#|N=@lNcp21BA7{WmF}upW%DsO+HUW&pYrPR37thG zY|y&MKHoagVX2vBm$)T(1GsZEQg5d-!IS$1Zd@_`4@o~<1!?L-Zg&n2qPv_3(Ft#$ z*LVGAh|d|7d*{h5jfX-bl{7u2h$SjE2}C|=xCU714gA`$p~%P0AlRQ2>S||=My&z6 zv6=Z<1G2?;%qb_q)Q{5yeX2jX1=kzP#S9ouV8f2V(Ds3JB^&xEo^2;<0=9LePL1w# z4GOdus(i`H^YZ(ba9kRjz5#)hS87cL=6?ql4w`aoLie-PI9{%rP5fhZc69(y=A<_- zT0Q;1!(1{(W$w}us31hKyr*dBKoe!aHdkafUj*uFb6aV(E+>9EQe3FbIoWdi+CL5U z!O1qlrz6zj172-kztVYbev%C3loE+j`!yf*Y1--4N$>$c07u;~4@%Fiw zWpAUl&EMhLmV%!^c3B<@tU7BI+75nf(i&cO*E^ACYxNtfX!;`)F@(Yz*9* zw+ATng}rv;S*mm<-Wqv2@vL7XdE_n3sWcvl!Z$T?EruJr1q#motT^x`AahH*upCCR z((&!Y{vZwuV=K#W6$|wRYWhYRo`>4Qz*7**`~kAP@TDlq`o~NYR3pUd07^aqEe8S@ zbbKN4v&LM3xsY(qyiz7kU6Nob>-I!-$G=*diJ>E5?@TBw3=*us)DDaIX99-3Euf7E zQv+@r!Z^Mp$;$&(Ihvgan)l}p{X%Y)`PF|2IWm$AVI_Gg&C@yRk77kgF9{@-&A}WNkuKWjLvpS{dUoU z)8V;Sl09%T%D&nfc2f@B-#{`mtV}oW4C+tIp1Q#(*t-1YAH5<8fhuHbh;u!)AV#h9doAuiK}T6 zNC_o$dR9<9r*Q>WL^hw6v0R2;L`gmzjB>7vMvyhE-@Hu;Y`#e7u`(R<34bZocG82s zfK)a|hbm}y%5U%;T^SepG`T*lq25s^#Q=eq--(u@*Hjx zCME$`Ng2k7Gl(9N>teb<9@{NERLQHK7d!;PZ4O?D0FWx=wuj)e2UH#nIp8%anU!{6 zJ}YSKZQlFEFxi5$e=tl<;qFT@P8uUANYw2cksp)Tmb>QS<3$`p($=^rrQsRlGCb5T z2J1A-TI{i@*%3`1ax+8*`mtJR%IYJ#&y3z{mU$rTnui1`yS; zf8CcKw8JlDLeUD25e`_fBv^x7B1jiDv`pYl;f^70ng?9k&1&>WdIlJIw-Q0GAL4Gq zj`*{zWu)QdAW7vt$Y(FB4ZN0cY*7tn zo&3U`9-Z(^`X3@P6~ou2A~9uk`9n&#b|>)yC13++Iecc_5$3#+@?%R;tbp^KghK35 z!k63c`ZF?s1#A}PC!V#G8%5@ay5JJPbmg&-9#={xq>OgeMjgY|5dBI{VW`TNc0YIJ3_n(X-}jY_kSYQlQR^2L8ej7DDgm^j)tEUABFgI9155Tgc4p3_CJj+HF8 zL1vg@O4GqweWL^XlsvQt{?14t`Y+9l1$aiWooaYm(KOzy)_X%Q6p)9z^KW)F9UKRH z>S%2?t_6wNzwdh%94$h}1#y~+T}}oF7EwkVwP&14 z#{thhL((P}dh|b9X~M1%ZVIkBmYzy-gXppc&YtAqgzV&@kI-V|`o@FC@%8Vq>aw^h z??rB;s3EK|Q9U1vKyh?+|2RbI3eg zT{!Ua)!*jRv}CFhbMGzZ-qI6jPvLnjb zNyZIGS72kjd4KL8MDyKdBQZEgY{S~|HMB_p9iBO;hR|?daaL9xI@q9w#pvVm-HT?` z89g!A`(RVqI(PQ3I#>x4bhX#_lWKILXks>N$-6mAkMaqkM?6(-*Kd*82=N)5mjN7- zJU&o8m3g<(FKp2-8~v(*bci$rE6aP!x$nl2CN7Aml(1leiixzjqTZnosT>F)4#gQu zqa!Ax`e>-L1&De_E^C~eN@U!5dP3uTN_ZGVs^$kxwDnNH*AbPHn-S z5wD@bn&_lJsst}%- z`|TWwM8g!yubS=`hFA$N5Tus)MjyY`)V86i4Ok$A8#hU9m?}15f%Y{OlWJ^(;uS0U zKDwN@aAD7!a&Xbinb-D(dM2HDmr{3V(NFcr#Tjg5-svbP|7h znbr6KAmqte&-F-R3cZL&PE4jBo8tcq5Yna->Iw(Yjk2YNdz6I99uYcMK?y+_hX#)b z3ebd39;*Dd;qYnDozWeb!#?A1WFtglxv79G|;O+?~@+<*YSn<1GZDbe%C;VnMf0-fc+ZVWr^%{ zx5>-3r39m=smXHzB|D!naH1kLiPh2k4#`-@j%0%A={rf?ZeZOF>AG88Aj>$Y)i~KT zJukLit9;%FOB1;GVW5g9|GbpR<;N zjZhO8#S}#2vxC`^{J*JsXD!o*qz+^l*BpTvvmrpqz=9zGd8>& zpw?#9F3w9gF8GB!12=vi!(-+O@J|{LwUzW*r$}x~a`4%@c~II5QqF(JUk|C|6-vD5 z?Y*oCQ6JQ`<guebKYN@FYUGM2PZ4`zC4_IhE06r}RNM%M{;78Ql#Ea!9NPt$ zT77oCN?@)z*eUD!dU^@Xo(?F!+vCZmU|GM=bOFu($i1|eb2%`{CrzOwMrO0r8u`f@ zW__o+x`E%w4sl`r6#P1v`ZVQ;zTA$U$d1>!z~-DuaFhlrUkx%_Vm_2Qy=c+^`1iqw7$frbhVUE3(LUzK$1YeT7~DvTNvy8?LSIzkIfpzlES;I z)ulz~0ZFjiy*!GpRtn zZ1#Tjjdj!R8;17^Poy>Nn>VJOyHPRMYf4LKN@`f-B`!nA-tZg6+ z1?qs3ByZG4DE0$mv|^j6%H+WM8gXN|F^UQLF4IS+;Y$dKs;;svtLx7WBaT}CZ~VBZ z?YT!!hG$Y(U#9<(sT{G2(j#SosbaV=-+=y++)eAzPe1Fs>5skUgw5dRA|95NjxVU? zS+o$8(oNEwqMTfYJUuQ9Djx9>H-zt@8#WGW)W6^8I;oey3)%-mhbY0FB|x-Esvtlrr&MW;dp@Hg3g7#HZZiaw(vZJNC7 zKigU@6CEU`X2n;5t{)?z_H9+HtrM|6+pK)P7qO5QF0cr&k5go~3Q9f^#vT(fXrePr zU~6kcGu65BPLdbh*A&G^&81DQQ_jhFDAL4f6I+pRU5(DGy3S=?=c9k7eEZYBKyere z@oo}U6RVXjXP-fv#%)M}8X;{i2K5L%)-mg4M3Dm*slfjIRo*zPUVpA=37;0VxEd)7 z^U2M^X*BR6!OHbaqu>hA#vXw9`MwE64(ufwXT|GV1eYg<6-@bVhmd4YKVINy%=vOkRk zJkhhUSg9iEKJykRZ#hAYS$eA8NpT@6iU=r4iO7Y5z2WH$Wo+V+lJg1*k=>ncU9gXP zt45h$MaV9G0MDK|SL_fOtyjhm>TqXIj|Cbs;qjo=K3ac}fZ4|BdK-ydE?Dyr4tX4R z97`B2_Dk>wQt9~#X>ZEn|z5FN+Uj zD&o%~UjwfXo;C-2pj^2#E0?AviSK2Bq(}Kbmc$Tn0Y>Zv9RIH#s1INK)gS+62tYDx zZA{uggq!#-Sys+x0F=!LuyT({-pz>kUO#~6z5XdB_&pOS1M{saqO0-Ih3n#SGMX-Z{-Y@1Rr*!kkL{stu3P|X&(bOXnar3jk9jHohBz+v zFenA6;1)Kkb)E;;Kr6&i16FG)ga^B2zNjxlbS5AQc^0!fc$HPt_ zf#8_$3%qi3E9TV4>BczSrQaSwH;&Z{^$4Uec@?`r5SC7*;0vWtvyfopOWG+8GkYqk z$xWh%bF-xkO$Bt3vCABds93Tb6bJ-?$51Z)iAvl03U~h&CeNyj5A?PO3l%RLqfWh~ ztcM$}o{u*j7mZ;rnSwDURVWXioQ+z3FO`I93&Wl3>VfyvS%ok~p7&x#rKRsFsNk9`TACTwdNEebZB)ZyGVCG$szm=D<{bGzWZk zR(}RfI_7@gCmn*=&8AFQ(!XZJ!P`)cF%P7ZJBrZHM;6PN6M8Bth44?k(Qm5(yPdqfroQ73b8Dp}lk>!BiGN>ps6!?(WIKbZNIpW>$rIC~DQy)NP8q0& zr(ex=2r$+6@JGasRmps{6^Aj8@szsG&$Gh*k_C1(0NHzbH*CnVMz@uI(0v#PfC1hr z3Xp8u;RX|c-hd(=hae2<<|C50wwzLqI*XiA(iEWpk7VIU2||KVd>Rv;ZN~wPm+%H?WEzDcU2^6A zg@SqyptQ4i${RU}>Gu$CUZeVmNOH?{gq=x(Ij4sMJzC1qrr1zs+AOwz?ZKTnr>TlH zJYfc4at>bb$iNqMyP7bEZaz%Jw@Y;%qKyb|wXIYS`-M@5H29;4$i<5)zF3eOYG@hS zXR=aizE-`9q)rOEYWCmJe%pCV>#Fm?9nmbyPGdVr<+sAmQc8M@6eBala@9k;3-}H8 z{)w*_2UCB3`IsGo;`vxzaCpc_iCpYc!L{5rd6OyB`olxc?ZkyLbgDqLWh%!TE_Av} zUE6&m5SDoRxNIIZT-SsVAtD%w#IhUvt{YfP?|eh8*}T~xnn7qv%6PzdOQtU%>7ePC zvMKz2A*YdmZyJ(FvG?w~+_+-40cORvqKQ`M3CUv0mW5RA+tpo#gM|jlRZ;hB`R(F_ zewmB&waM4Dn=8pMu#(iA;^kq0b#9F9wa=!Jd8}(so#aCe7KAsHOj{NKtN86WRlz4W zQeEm1(8_vqXBnpQPZCLlH_)2f(3}^Wq}-;8)32lP?WG>=^o!MimE%Od&zOo&JGfc) zR0BIOXs)l5nxpz=Vsw#OXZo1bVb39_`hzuYxViAZy%%>2<=@wT=Mzj=Gvz>Si+x}90@rr^h=QaXyWJS zE>ZN3jp^JEI8I&%DItpT(XSwAz0xBO;Z)ou1{1z6eCdyh1p?B-3gLB^ zzzvf*3U)DbYW8!LGx0#)V6|l1c;m$+<I(`~{DcsY_NK_y5c(Mz-VW)jIRr1`1{ z=7QG-;+v5QIvV(~>e6zD5zR7(k*ElLDyn};gWAoKX=sqa@vYV>HQwYxS3!ya%yOW| zZH6EHF4z~sl9h7SI-lU@hr&zVBQlCh_(nIJq(wVNCb`2vQ^~dDHPAury-AofxsB%Qsaa{t+{B z`lp0cPsPWQl98&5gJu|P5!KEI^mQyvu&fShrMJW&;4wHSAR?9=&U_k&AEYGDVvJhA zL{<>$S09YR|1ZdWg1q(i!%fXGAvq2$=G+~W6q-nK>|(ACjj|M*ItwT0QHi~1O`f_o zBaUV)B5g%mvqjQ;luj*H8JeC#Y772_d9X>zYV;~34u#PSqUez+XmkNGx(>i|oj@Z> z3q2a(L9*JGjjrQLEtemE#oAA$)yUG?DF6XpfJv$SsxLRRAb?ytYPp#uc7$kosV9)- zN*LPpw=(CKhp_c&XT4{3QPcU?B7E=?!}lP#9kb1>V)*rZcKt*?Wu1FZuGPCVIahdX zntAy_scC(^L-A>|BUYV+z(cjjaahdCF$ys!>!rm;^C=eh9#B^2Gz*!|9tcxBiA$0* ze7|#eWKMjlA|(ouGOHn+^B$RqGiSEyfJ+y3h;jz6r76EUUR4cK`5Co}0E; ze37Z6b{g1jE>&6T)(Gz(D0&rv!eroYA7$iIK$O1Z9RSU7Y4qZffg&Ax- zxg_Vb#`1gI!CBEfX|1P>zZO$=Cf3YB`s%h+0)%s7dRM1P#KGt5W){3JrEA9cZR?f$ z^J|>}=|+3RcUPEr4gV7hRJT*Hq~Lfm7WWHb8g;{(HP%)%U$S#5Q8(gdG+X)uTG!^- zb_e3rb|s>O9isrjsP0(@R{itEKiXak&!oR`iYhS{9Ya)YLP??SyXKM)4lp8d{WKP} zG;!Td`aao<@> zpB5{KhDlC>tfj2mxc)8mD-ZGe5_42mmu4NrC=4wxFQR6aKHY|gp`7-;nT8-=$im{7 zWYFvCH6w!oqNGat;GYk*!=sYfe3jYb?laQ|9vbZR<^_T3v+_mjD6MOJpH_nbBy0gW z+1&EwlNUyn-JNpjiio-mgtpDE*#bFT%c3spLbQG{P!8Zs!9)Q#iW2p?+dniAZJdEM zF%lJ~8(O!K$UegS!INOF0p>J}rtv{?eG6AtYo2-~?VxP5$YR>HU0b#6#hc*43aRg?r8I5rr>=pZ~a1#6~wu@aTT@1WNXv6}X~%9)X+~@+epOfm6;) z(sdV8VfLE%x-seN;Sdf;?YueO(iAJ%pQtMt57nVqQ1berCU!foRg+tFT=-a3YkCq? zs6!W7$qh_#bidRLw7?SsE+7g(b6dd zubI{B)ga5sOtG20*Ghm64(2B^=3yuW^Hm@eN}|W&1BL*Gpc^LR>BVTd(e82AKV(i1 z`Fi13N&M;Y6T8!ii>jnRKjSK2J1jhnE2xs$qR z>CT>+di5dYuSj!d1j}4*MRB`=YDWMXX?i`Xk&O94S9xNhws3J%OwM$+)>`Pek@S#} z)Hjt7&t*KVd_)YyeHkcsFUzikcS|Sm>7--%C^KnmYfFbvPvIat zv%^Xui*&UKvYcPwGAk*!Ddqc7;Cuc1@bq*bZr6Y^PXIN-a zNdIkI#r{(zo4?@DMC`_~TK;SZ9>v?rBq<$fGU!I}3;vt4(#k&LYw|vQ9tkiE#7T67 znG8*@+5c^=;UJj|5c$U`Du>JK=W{0Ep2w3XQF=3YFLspl_|zSAUD6oDGrjcyHtrsb z@>)&R)UILUcD+Q|zO*Lq`X#GT;%D-OedW(-MKYH4_}E2t>|$+J<1EpM)!chMtc-hS z4D6-DO>08?*FsLC@;Tmn);|>oymR_Tltqd;#|Mzx*+M@&tVJ7s{TzWj5m=K}IjST- zQ}S^PgYY^$bQ9C@)h8%AROYqHc-jH?Mp!pAOL|+N{GkO8XU8YQ{u9u>2eZ8px%}_` zW!aD_ECX7hmCAGJfZHfLWOo&_ZrAywWpFc|q%HT;*}_MjrE%1SXa9-P+AplW0FTxtqd$e6fA$`URuRK{ljj|f|OPA00PwLc=+Nh4aKdBPEQ75#o4W%4q{{meC%w{c zT_g=#+l`pSe4m2EPyU~nd${Z1Lrzqsh%r}az>N@&55mA&rYg<}FSP2zmS9kQU9rVM z@pz4%=ZpZ-5Kwzt-Az;>3wpnA|M7rz79f_#o)t7@`&w!UWs60PC~I_H6fjy8NRkS| zBEChkvZO&bIH(D;s~*4WRDk8Rqv8J~V*aw~`3)hn`tNjd~Ie^WL#ID4Rm;hU=iPHV{-Sf$rGPB{ZD zZopX_a8{gw=JJUuL<~5m$mziMAbQamsFH|kHp_HCzD#9HTiR0J;7&*P<&9o;tJZZw z;NJ;BOBce9yAZlpyLQ015aSDtfop5FX>1%FYkLiy<}l3O96iy2&6s5vA510uC2ljf z7vNU#Rf}GGP@@Rg*xA|$I=hu9KsR01FquJd^m`rS;R}MBb)DorS1c@Cu~4Y)VEV&5 zs%ma`?t7Vv4E2V_*VRFZtGYfCf+`L;$SQB)#ERI^W?J6WYg z_&O4F-qL~GgEE3MvyB=5h@BbKDsz7)4b5ii2M%qW z+#iyJg`;Cb_FN@GVd2k#w)h&gK~rp>Zf-{#7!Jm@GP{k0(WhgTk=8dxDzTSS+gXoO z16rSXuqrp@vBJK6g)hFFVj1eZ`y~ezZDmDM*xp2c27M?~83du(=}y71j*YiQxyzUg zF;xtCg3E=0JQ>A4tg7+d@mms@8i2!cE+>W=<+?)tU zXdaZyA^Kh<43P;%-OWCd^lv`5)3Ikr?ped&2fQZ}$cNon%^`rK=N6(zVF+{pH7%`0 zEyC>0c@I!I4huf;D!e3Xm`Z5S3C(If;pNcbz^oRD*@uZ05C%(t2Yr~E23n74k$S_YiZt#T8Ky#UC5SlLi7lsrB? zT-SXh_6;V&iR|gns0FD+*G0DNZ~)fj5Hk zL=~VnwvxIN(o9Q7Wks139U}tpT-8)rP>AGF!LkhR=)}s+`!*cT?#r-eAZt_Md1&Ne z@UG}$IAIu~A}TV*ih~_X3+tq4Tj|`FWp*tt*g!g03ciF98$@m8o8a?4gM2OK1s`sn zY^&sWzQKEc`OucV*x}LMnVrRLHekI`0cb{Ra3PWmTbIU;ifE&xuG@vF0a>o?D`yc& zj3FhRj98wSS~84v@m?TrqA-}=F?7~pBc@=m9!oI;!2Jt{wu0I?%1$m!c7=}KbrhZG z+Q?nEvsQAGlew-LT3I-HbYZ2n!F@FUoHVe|uwGINWFWBD|Gi&Yif0M9L#)-FLyG_P$h(JZOdr~T)DYDtn?y%?U5TYcn`+NE9Jb;Y1f8{FHGGv2`HR4YN$;sV=n#TOuR5ZpLaer9vGxK%xCf zq&jRDm^?SeQj#dBnx@k_ohq&rQ%@0sWAQj- zKhsPVseLByQnU%sna)nt16}Sx#G9IWr)l6ztfC{do^Xd5Sq*Zb^SWR5&)DFdkFa;xr5#3n1g~uGZeusk#rDAZ(F_;D zIr#Oidsy}TYaVgLNW>c5|K{4$sD@7Z_rki&cNGH#Tv*w||1U5&uLK6?mAZjKz#RqQ zl?*%}HuDlO=e0^imL86;ny z=(_z!U=Xkv8L>7!FE(azeu6Lfr-MF$fn}Vxc=R6vW&?zU+^cxcibXXwVn+;Hc*VCA z&q|@&W>j`TQ=PgUr7VwpdRqJ%8NsiK0-rd{M^samu%Q~l#nOKwi82TmsMjY4Z(g>eNwG5F=c2GCd)CkO5eETsdxoQ-yoIQ35-F@sudo(q#sM8C? zD%j}$#8nc;XR!2`VH_-vqPxF-cTcn9~28?DMHPwO4ZycET`lQG68@u|zS?6|f7q7pM-tfPcv;iAd3#1i= zdjBo;Twj=dYl}F0t6u0YEA+!$#Hsvc$g8ea_qNl~V%xhEJWXe@x;f-EJK?4m+FY$x z7dtT>hhzE$OmA$Q>b}t%7c#NFQ=P!nnp>Vll<22v*qLDlNrc>B5^JJBPd|P#Tj!g| zP?GgVLNs87D~fJ~BI;np6$~-am`N!HioW9tVA!sBN9#MGux(G~5+jOaBs@vfvHC|q zlBLbUCvg%wfw&o04MSIPmrb82H^6NA zIMMcHP*{6x`15jLv&gHpt(Ex)=49?DdRwOEdM}FXk6ff#C%xPVl@hKT_YH=gv~D8& z-~vXaUtF|-mYj-6&#oXKrxxm41Wq-7-) zl-=_ZV(@RYicocQ`W|vcdV<}S=DPW0LX%wF^%dFR#&!mEL%>GV{{S!jelyJTG_;LG zGDDTH$%*Mo0yX{XgY=}J?AsxKnhwif&hAe-t>1H!&1%@oP2^$`Lr-r8LIS0StU(2y zic_sR)RQ%b(#%}>Gj!xXz#puSJISOoK6OC3NE&d6-hne9y?_@q4WS8XY+%gdfkd|z zUPxsViA-AL6&oYWnl~*DgYtd6@6cW&(sDc z7IFv;x$M(li{XJtF>>Rst6#KJKeFlfRg*X1O&dy(UtO8oT)s`_As}laGI>+|{Y{6B z)I@UI=#7z5vbY$0#GzwvT!oe85lwfmt$rv(Yjuxa|033RI%eCK=@I_w@+woFZY|L} z&(*BYho3;p+3eyP=cdt8y7dLXTj2HO@2luxST_>EKrtw;<~CwX$U?sq#O%n;wqXQM zKBnNsel=5CezzL2fCdjKD&j+7ckdj)fa2zy8xHY=7Q0b1Ob1d84GE$6j3vTN=cXPZRJB2VfiyKYz}lagLkOvFFKEtSWO#6@LEXz0aM;_(9ie%G^^Oj-$gL zn)G%~kywKA!kwEAwX^On>0FAhu4^y_&~omzI{R z@t0Sk(VOk+j=Zi^o6V}C=XX@?o1@Xn%j4BE(OA^B-)R{4FY3E&K^aj5dzZd=zhS)7 z?z+cFP8}yGZOv9m2t|A3ju6Sdsu^v}%Iu(-eZjHIk51$!lhKO;sVvd4YeFv@>Srl9 zy_5mfrODi#@v=6=Gz3pkt-5dCiPeV^;w}}_v#)NaM^~%XYoU&`3)ATPbfS|Zy;H@Di|t0Vy*+K&fVVxDErA{hYO~LxKo7I_>t4eGJQwE% z(MQmgKsSv978NMLo-!cajA6f z5%tZ`22+8u>&o`+06=zTyTFWdGRQftnaR6G)wa zP)o@cmn^CH-(7Q?6+w@*I3}HF0@b5pn|#^S#;P6-hX8V&rZ%ivKVTA`ZW(WABdJmQ zw66;$eTaSBaW#-4k-A!0|J;t1*X%2={pEyqd33DkU7@SbRa}=`Jx#2rue1Bv4inIR zu0$sHT6WV%7udIklBM-At2CT;pISIdb*W0p=K7faHlcOZc7)=!^=;}(ByH+czUZst z_Qep8f6n&Mm^NM8C7&J)&Uo8*(ESsw;4V-$2n9Ax{3qu>QI!%=6-tBsl)9}|8Wm*{ z-~|@x?p} zbDGc)Zf(|Y2dnkdOrO}cS8dzht=*MF8ZYt5t9w?8;%xG`kGqL)*+A z-Rr=T|E1j3z^}cUdlPpr_ks0x^}4@Z)_9(N={Lw4jf#&^5&9x?bv%`&wsHq?EWxQoh>dhY^65zj2+ z;NSZ_Mru5Q(JO%@cs!6MZeVrnOa3R1$Ty70H?+UVzY%@Kx39@bWn$|9s=|U?mV;|8 zL~%ZbB^ECGaTs~q4DqC35LdiiQBP^wDODL&)yppj)+OEcj?$!NL@>~I4FMjl5#ttB zd6TNXNl_UWn&Q*2KY;!Chg_1}hjHj4pcXZVNO`tY_I2%Wpl*ld=#)#p z>r*~?+DO+9&gZHHJu0R*9ZDOgm0PI^px<_!-zIi{h|!-HiqYZSlVcYr6wA2m1=^vI zsojTT1HMTh`>35vfJzB_#qKB(*)?Vx6FiLyER+R$K#{;u+Hxk2qULxuJ#A}}m!4dhw32pW z5T1jH_@;O~gLM>6h9KPf9_7S6>i#F=%B#r{Wh7}kGA}8Tq7Em>5q)GZCOw8nQpBGc z!KZYY7j)H(OR;PO;wGtxv-M{BKn-8uDNx-(@@;F+w_+S?D-SX?DyCB9`Q|*kOnb7A z)jBdUU_$qyN6*`b|iZaye!KsDuEW z|K-996CKM&PogEojyh zJGS4Wg+hdBGGSi_XSjs-df^82bv^jPIqOF`NXK5MOOw9U7WPJ?-03-C25U^EhN_#` zz#Q?ms8z8_)lqT>4^mUJI}~YgQBrnn5Z7&Dd`ZQkkR`e-OZ3jzi4*K5+08fO{&4r% z#WL$#?pgXK{Qus!je15ja-OAY3{NtB`Xs@VOyeupR)8UhvIxCsp#S^!Q-;xcuWKz? z7UHamwPLlt@|wk)c7FWr#46bm#6UE}R;F%W+!5S2ro8w80;he|HoB8ygD7wD6yW)L zi=0xx)XBr7>X7~M)JBIc81mI4>$wiRADGlD42#Qh`el@;c7H7U?d}vK~HsE zB#I)sK+~tyX)l?98mf_SL=X*K6n9-e*yg#H==U7AQoV07eRO*LGibcQmkHRxR$$r1 zV;@kjJwa4j=9*Z&^t?H$A4ihX1-E64)e8ewVJ1i)XA$a z*+~^6M`{N}`GUDBQK;hAe!2EJ{!M@vi^O`AL?Ch5Cp!FZlM%wto9${)X#FlF4W@)( z!-Ed-w;8Id8P9x@K0Y~DNsc9@q)uDmp5NW{8F_Frg{|p`t!ZY$P|;WE<1OQrIe2Hq zvfX%+NySG>%e`H}!^yD$z$j&z&v(lcr6ua(;`?mPn-}#J10k9dq^`li{ zFfZ*^{bQIaL~%yz*OZc^%bI-Zkzyw?+9;6 z%mCVKqeO2O)@B;*4>bM>`KI0jS|yZnbox!D;XyGY$K?n%RY`CnikR7|=Q8QMvRS*6 zq2~`HMY;t*RGPO_VkACjQ_bf8%+-|?FUXqd7^;FD_54t3YCL805g!*bxP<84(z(Do zTa-xmK@ZmNbJM-uu1Zol#evI#qS*?B_e*^8ZdR)UxV*T3BPiaOih)lMAQIXN`n7!JFz? zhdf_XQ%X$Iuq57!bv(Nhb5CmFSXd)l!d|*s<{PnY6j4Z0*M>d(V>P+is)E zqY?awYsGfrE$sUC+u8lMV0(S~U2I*?n#*Ut=CUj9+>pGx+kOG*d$wwkPO?5zHTg=Z zTz91pZ>S$1KCfFXKC?8}9Bq>ic<_T8Yp&D3xp_jjf&9IhclRC=gPHZb<^pBvz-;ZC z&!T`++kJzw+shshz9CEEE?M3sN^-%xrV2x9V5U-O4y305da8PjS?E5KwchcOcUUL@ zERLlhiw>42q|cIpDyozHl^KMl%l(t82(CUpD@~NWr}mvZxesM~ZL3||`pFk;UGMp- zqnW>=rTsE<2zV8P`zNXtP>~+4#`D<($;Zd@`REhp&OLGNji9D+JF@^{y|DegbM)39 zgA&H8z_s3fg*wNXELv;kbxHLq{{cmmGf_dTp%w~0qUqLx>Xf%ubOXna3=VBC#gqk0*U04hXJn;D z0@>DI=M_3E24k+@2)<`7$OHo05$jqWA75;Yp&$tEXx%lx#rVj3SxxPQ293F4z5~4Uw zyImVOs$Ayj>6SVgyFdbEI7%UVTDqVJC^=pz!_z*6nhK|7`VTEfG9uQah>MX^F81<; zL`o1jr1M%dRM~F*vV@Vusqf;rH?zN78gumgh{nq&_Fyrs+c7L=^wy$?1k8_U zoKPt!QlA=e6e+DlvN1#Ae175@E`~fKcVUO=LQR8-iJNm%aIJV;i`W_>i*Nf|gt|@Z zdiuz0b6mlFSjnW6kf~wen64jt4HlQEMHr)t=bL*ASRIh1h#;$mDN`M!hiW4BuzAoB zp)GfSWfFx7>L6$2K{2o4*}71^NV(+KznTO?aH(S~v zq3D_Xm>}$!;5OdUmA^8MjpoX(m-dWkiewk0hK!h$QK#|~d)LP+7VoRWDQaI&@z$V% z0Pf9I_Vk2$o>5iFr4L94r&ILQK1JNB>vi$q%&$q3e67g;7FlYJ^_Rsbb^V?8;BnFm zP(?>e!4Rph={?-rq#*wuUaX5an<6nOERF&np5kC%LU)tAY;kR}-ONzZs;>ii-T@7- zdrksetXi%{bs}r%W{mm8ExLZnKBw#F$l5?p_9sDgv!%D*gAUjeTN1rmBI>DX(O~Bxmh6}9~JSR>PJ?Ne*5vkLcS94Y^hr? zP7epJ30xmI9XLx{%X55ySwj`Pvs){@wS#I+|Jkcuv00!VEw_^nT5#yY<${ErW`PX& z30j{8hnt$iWaT?P#Hlk1H{4|BK{7n{$lG(aCg2b#{08|`I1E$K^C6IyLwpd{(nR#zky--6M! zYPO#Nj`c;=d{9~;ajw3gn`R$r^E%+pY)CoclYaSehkeoY=B8h7=}+nF{+2e&Q2SBJ zg47Sf@fbbmULJ+ZKXccGD9PUu(krNLf7c^rN2j*vvMzd=EnVQcrfZYub)ODr&cU_v z1;3w0W~51e+AOePRyv_4k%ALCFYXltEkT~yDriHRFqO5Iz{S}T*=$uA-e*g}VN>1X zGT=JF;~Y;CGYn0^Jh!T8w^cz#u(6C0KdeDV=|cQP%4lsY#nypc@gEjw6UDaFT9*6u)bw~emQBM{Vw`ADQ7=mKaonFs$;L8Hxi`()%{) zAITz{Y}bc_uarS$u_Hqt-fZbrS9mjAy@Bf z*G6lqj**28L^6dWauL?B$pLO1n~?xd3oOSuFx^?ChYZ8^Ih94XB?=KF3x=fXlCBQr z`uOTXAw>4#cHJ^H)7GMi;3e0%ha8x}3VI+hhsmlP35|v9K{FXPO)hI;@tYzaJroR% zY!QP48_KXJ5D4{RchwuNz7Nf9nSzT#$tHnj0F4Ji+mgQ;n^Hjz!MP3)k4f}z4fm5(L{;xa9bWC${f6cV?gY%md}@ThJ&Wjk%EmZ`Q> z(^Ac}O+Ms)<*u|%%KZql%~Bt+)1i=0PK=p8TZhBKbeJVqSJVZuo$^2inc^p%B3vac zCM-cGRQ0ADA5>3Qg_t;gTD64SO*BdfYNy9VFX~pxNjreDU^E;Tuks{|veeU`10LG} zwtq|!I_Wu5H*vC%0neNP^I@>RBH1F{9;J4_diUdZ#vPf*v)9lBXX_>aL9U&`Bv#}?W~S`4qmACsS$~M z52z^e7~2LJ5f|5oj)ghc0kig`=ApEvrGiVym8rRJJ zSl54?ZPLfK^<}NFVMex&!5xSj+ZsWU`LVH$JckV&D6np0D*xv<;aX&`#EA&3!+s0; z^Z{K>K$p|E0HSV}%l8OKxjXzQj`Zb`z`Tc;Nf!gKyre1}6ugnH5M6<vy->w2w^g)bbWd6X90cmqrjR4cjww)^ zUEn&@-ESOWRhy zIW#<9`8rwuGP~h1kkUG1ZD!;uiU}QpJ^(7>Si7b-7ZJTXHXd zv$toW9e#2<*|In3202Ih*fCMUrjQ@w%T&cGM*4B1?q>kM0fpqC8k9qX8erPz z6%>!{LzZF%$$t{RFUAaQdih>|Z&JC6S^qd%1O}Sl_ zO?A3O{|)HvC4B(3ESXxZ$(G2SLg*CN{v)zv$TBIx^K0~y@7#vWaYC19Q?r^yM503Mt2xpl|q{!2IgX<~ zW-hNTn~&vCS;|YtWqF(Fs3A+e2kSb%N43IAG8$xe{@2JWD2(naMxeeZO_U{laEXM1 zgdRE^xQ$w$6y{K@=(Toe6DuGIlW8ExNlwg>nBz-2*eUasG<<`s)kQjqg=kM{N*M$Q zzct1@V<=Df39Y2bBKihsmOY08dW#TpEnR=55>;fZP*6!#qZs+Jq=iG4O#`Z7WHn9y z*#*)?;_c^Db1UK`!BKc+8~Kr(a5KD;RrtRsm2%M)*1u5eev1KxTY5C6YKkNXm?Weq zl4@#LGYy>_Na|{#aE|QP*GT&kl1J(9S5)c4vh3Gak9PJwHwEtAFdl$26N~a2EVp{E zou6~xr9%qQ@;ajgbP3$g0bIzB3}sC5?b$Zn)pQSJy=?D+N!%`QG*ZpV(iPj!OiF^X+N$ZiqVv$5r;gD&-x2)ECc=9U1Hj z(34cx-xV1GT41O{OLp`#yJW`wAVU13h;nnpu#AWW$D1idaN_n8D!Lwoii_m(ruM(k z+Ff3TI@WHYq{GRRfFX4GKggOPqTdRHNnKY!&pgoZ=^9CF(L4998@D(vGGi1hdgxzc@P8 zr;a8=2`wizca-#I&Ps(a!zKWIZHf;|{ggIblXs>&$&BN1)M?iFW*z^}Q0Sr=N?nY` zE+#|f_sFzLQIMXMq{C7?_`QsAR@2TJnePSTlC{7cKFqbhzxd{P&(`GI`@#Ex(PQd9aO5*OAIw{LjQ?fj%#_moi1LqP-Nfb*;;vCvHu=`ig;2r_p^-X_z`S+o2(t&9}{9s#$nCDe9-*p)sbDAKQbX8B?jRe!%q)Hk9 zQO$InU06|=fT<+o(_C1o)YNc<^0NmTO1L(t@Y>yEJ$8r-W4VZLc)@_92)xL-lmz1GkDy){WL*dCuBNX}=;&?Jxa$%BCI&3+LAn_dP z!C9a_L_mk7$W+>{Py-EWo!Sct;B;)?-KyvSWTLOf(pi6rv*}n252rN1ebG|Gxc%!O zr>&z{2&uw1bsiZI@pYl#R0kr1-J%VKi&du}98cw$Pt<(siy-5@ai=JopYW7ds2=?1 z(3?oV2D@;&Q|nMZbr&rM4h(J;Am}Ks7al?ns(SFP89`B&6h+9qHK?nL{Xtzh(ifB@ z^=@90B>rwyl7f9l6g}9#M@z*glx@JfLJzxh)q&*J=j*ziEMriv<8&f)}fg4Rzh}3#$3Mxt@Bo#x$aVY#Wlm3HG z&T^^gVTneha^q7R$4QbI)oaEPpz7}>gGMRfV&p;T!0L(mf*?h%B2 zBR9hFBKI}Ak(=QpEtKfVryNLpCkYEK`wKwauDmdOKW=|fe&%upsHbcpQJj?kT&TU*>@$DXCp+)#6L z>xjvLbN4rO0JUJhXdzm2e^^2fKs`Pg3M!FQM7hsbpJ%hJm26_NUkGz*EZhAT5z$FD zvYy5U)+|fI#-IAD7M^OaloBUZ-)q^I#(U+UIWq6gQhxEq{!7=!ptrYkVvQykhfYxs zZG?tsvJg+(RS2!m||?le-nlyT?jTC0QcC4t5i5-BSJ~+;J6)x#Hb?yZ5PsT{0xgi z{>L^QB|nUkB@+z{kO#OZLbIH}&7uk68;D|NvC|odL%k1@Rj$i>G|0X=1=M$k2U#qY z>5AvclO*gknwZkEWfCBlE^qQfc5*HqdK}o{*`(bHrC$ayKY*~yvrNFn`+@)cP2X+y zD8s_M{8f^dPr@4S>iPnUvP^v(0!`^d8!OdOHmo1LWB!#p&pd|iII2a$TMnLk;@rV4 zVe}r|Sgw zL_lIxV)|-jmS$o(XT~ndX%xSzRyL44nA_WEJ3l7Fl)p!fgQdLyO&KE<*5PH^?fF z*|PY8t1l|rvuOp|n_-B!PJ&%Pe~Rr7J|>xkKaNo=9<&6A{M_xyJT()_CvWEfnV$wo z)RZ2N zZ=;FChm|mSgZx5}RyaXkr{}d~iM%^aEx4FYzt1PpP{8MvsN5ub9eR>*lbp!1N0z!+ zvph#AY9YM)6+Ll>;_W*BKi}bANv~vcLZJ)csTI(z#{DHJ(4I zNlQzTc9Q2cahSgvq{AtJy-**`P5cVvV{ ztgb5NePn?kPhAeIuJ+Qcn0aSpd7g~6}Bwe=?!7 zFUUXniL8UnpZzWMUbqZ-9&CCaMjs1=N!dm`?>^;H7FfGfRVU_|A{52s03_My%*Z|a0zvsv7SXowz=csmW!1H)Ej_PYh9FVkbe+eLIm4AB)l zPfQdYX4%=?&N%=EYocD0-N%ZvWK2viP?T4sp!Vzk@}DUJtf|L-J6T!@WqOQtmnRGc z`Kq1R0*J3j)e-;5ZvrZ8(473cVk(pg_1N73-t9Vl#jVKI%SL>T2Q7mV0$PfBinw3F z!B+;!^zySPT8W}`pT(-Go}^FmHa?b(D)eHnDCkwwv)#8YX)`>W~W2$KI#tz zLE!TO+0u!MELF3);kdvF1)diL#LHNbgllF8=Sy*`SGQyf#N zU5Ys_qy(d<800Z#q+Wz+*8_!u0(ZV+|G}W;n7lD$k4zn%844qPR5!UeFY3wcormdW zr7o}*Qia-!UL5R?#0ImGXvd!T^8tInIRCs80oa$di7o!`katULQ$~PG_^| zsp<3~gV1w?BKiP38HdvM(EHi!^k@n#O)t_1Y;ub{04MT5z{52LnlD0Utfo_C6FWs*^O6fI z?^lfgUwD%gi4A@vq6Vt5jXLe5wM~O)O)rm^;^FRi+0e@I zHd#!wYApQ9o>PnQvla=>4gb>i#U&PnS`ouc$BL!s`g6e3xd^zJTpjBoGVN0GC{(2V zFjog3zlf|(?KluIbwT54dFNd6w_6z{l}LCUi{42$3!H)64vs|KfU}}E=T%} zOj@u2dl+hdH;$UXWCfqkqC>km23K69*GD-Et4N>Kv?sr-;7cmLZl(SA?-P-qwD(WwO`V|JJ*T#gncfzpHK7 zl?{SlM79yEQsp|j|05gJjFw$elj^=PFp=CvgZr|YZnfOmiR}^F7b%{|t1X>8ttk7) zz>sn`3GL5bLK~e7No{x-bP;+S1{9o?#pUJ2HF{V9g~WfMVA&HB z6KG|5b(#FV4YU+52gsrM&ZgI%Uiv+$ckmj!X|lJywAu{ZJs^^CcbU)%D`aNf7C1mC z{WHv8gNeY*lDd%?M!q?W`68xbHIS(FfS5EyTq|KPs-ns}Fu%>A0;cmDo7HefZ%%SD zh(q-Q2pyKX-v}bd zDhkkL`Z7Hti$MjpKwJ4kS}@xcL=xJ46{4&8v9Wx${X7#xx~?q9VY%zKuQNB4sSd>k z-8PB&bfy|jW0dC_Yk-~RmE!&WYCh6G+sa5nh~pF2?3lYYDe$)N>CE<4zbJ$ejcZ+# z;`xX`LGjxFE=nQsE~T7eJ{lLK49_R{sj=~fm==VTBwiuj$I}3OPY~Yt^o4ps>uL!oScGD+{v{WZ|w=yBsV>CiuSjr7pXoL z7;6yX9emf(ynPn@d(;9asRtql{1(ML-yO{Y4N}+H6djE3j;aiqjhTz1a^dQL=Aab& zZ|!eO$k0qq%I4y+EJEQw4;A9kek2*no;|b|oe@<`=)kw?CODk|b=Si2Z`g8Aly_k2OmzR)Z0p8tG#T@^dm%KSwa z?}1@Gt`B#BCthf|R<`N-HV<&Z)BUCU)NRy4qL}eaJPP?T5VxchlD9vdr22}DIn?VR zx8^aMi&0=%)zJ^l*%6xGQ%$X!S+NT#+&o3EN46V#bU8E>FuTNzI}zsD$u=A%Z0LD)r%M@_L{eC$+-<4UJGGQ~CY1+qdm2z`3O z)0^me7Xf?9Ql05rQUW06If5lrm(8rBo8!o7lG9YPPD>uG)?!hrK}Aa3pc?YzgjV_r z%*9AClMqySOSrYiOyQWCHqEpe!zpu5E4)=!`RB6n$zL9tjPI95rY6TIfi0M}EpaA? z`(l#(Xn3~3yp0TO4{wvr{+to9jfuP>iYCUUC@T30s(GI4H|2jMbN1R=w(<#{*Ca_J zbArrEp^zj+gQCRbW1Tf_fsDPEvAHcKl^KWC|N@LjouZG+6!zai`>)!bdW4QqedjDBNSARk#(*?7QThaSVXt7)3nv5clW>7o(I;m ziDMZJlnq1c#O{3&_KKA)G_J)Y3_J@{t9C`dN9zU`}mUFfAgCBixwk96} zz5-c=(zYHdg>*YjmO6v<_*d&=X>b=YrYnLY1|u3}C0i-%2;Tq(!{0>=va-l>+Fmju z;6};Cx4Fb|==}kM>LC`L8W4Q7CiRvRA%m|_?jY$Dm}^+DHgQlZ_Oee&LGe>JWo86h z_~QW~cVC(WCbo!CVc_1kr_*!{;YF>?f~c37KogCrj%^z%EQUl${uG1s zThWh@88ft47$RS||5)s3NDQ{uARFGkKTG<>R`64G^|Cd=S2TxHI^oq&}A!m;h5;(OYVI-CWzQ*d~`Hj`FbC~C|xusIoYo6}aI%tD>%s z>IB37_SMf-Tjxp@x4xy;RpMHw5=lKi*V{R*5~{$HpzLm))%vEMNTV9BtkMpvn_?}h$8oqEwoiQ_QFbqD_iqJ1?H>yZ-K z?mRn&3f24soqO4?^_Y%TJ~ZJC;3}>1$5|_VQpE1PZN<5=kjs$BXfehI`CK17N83@v ze5mRT@d?^CtX7UVoCgBkKq zwxqi0h$BzaF=&RNNw$&aV_{QPAZq+pspt(Ok-ksywx*GzolYoQ>S@32MuZ75*KvIXf;Nz?v=vb$s7dFPd z-r$ujOUlM<20h;aE)SZ${V2`yF=WA8FQ+5&e)_KB^X=+@)Pu>fPX=x#x$_~9(+2Xq z5p=u~{DSwE(y>MAvlF!h8Z%~0WB;raECv0xSWV0Rs94pF|tQ1ggo zb@Tcb@HJNe`v`9W=)rA=wH9ABkB3Kf-O;qMF->!HeYEGQ{oc)TdU3Ny-K*`JWS8*) zDeZ@;6t&@DYx?zyJe3+Bvx5>hf9Cf7v3XW=KG=s#3TBhe(fKjJmH+`SMj*ktcpfW0 zeQ^i0G?*3%+5gZAnDc!Muam)fYO84N@YI~ZOYMsiFU(CHJ~FX3dARCF+<(s))d)dL zmjmUQNnX?V$(b@D;hB$lI*De3Dv^u@I{JoQe&|@+d-Xi|<%G?3*Iph6u9nxIm?|@^ zSIw_=gA91E{e9+L#pWRy^J@vqQwpuMla$995oe_CQQTefHwi3nG_oXVIl> z)*_oDU>TBr6>wb{EurjMtF@B0EnqBoo_v;8R{p>E-g0~G|Ml+`uJS$W($zlqpZT71 zweMY6x$@_@o^QQ?FI~A*n|>qU>Wh6A?ILtQl=|21FdfKFfc9{QdfFblbDEd%1UC5k zNjc_VM2L_39>FFb<3#-Mb&9H^|Eeo;``fa^u(}bov08wY6TD-3G+NVRcM*!z8C$xKwYuR?g4)h=kLU}kIn}}R1njfn zz>S24>*lb&X%3^^(ln!+maOjgg$T;_otInElq4mS5;>u4H@pVN_9cjU1Q0z)zdH+; zE9?p1!w_t(c4HQxpOTjr;L?xV0GMS(I+6BZH-Nbs%_pe4|HN|*iEp8r{41by&Rj*d zf6}~#ngnz)_o>cEZlgpZREw@tAa`XBAVIk31*+qqrq~fHxSn=t@FKWk1{oNmOQL}| zp{kpKTYl2F&Z7cZI`u?S!Cr ztxq2rg>bvI_4x6vemyaom&S|A%@{Ryj5O*6+qrt4L}PN>r17kFQF|ddTNxM`89;$d zKA+iGS3f^njAl0}a%RCsXRnkeia_)?CuT3Am8)e24(E?=-Ri9iUS3{!PNb{n;RSr( z`}W_0FNrzk-J4kyLrGojcGr@*=6aiDf!fBvR0I8)5jEthENS?8vh*!y`|L#~X7qefIQ#iy*V#DlLRp`4N>F`>9jj^G_9SB!kH?&{Zf&gC%DQW*LCzPddii?3@2o1v-%K6YFx22u7t2$LjqQH zj13iY)0`}GB~A+|k`xT`c`R{#e9R0vXuSQs!f5e!Jrr`ZnZe3=Q6foTLwTJfBlIOv z#JY+FQP!ltmgQ%Zpv;LW>$i|By@tFT0@_4y``Q|5&xt@Cd|^h{_qGtz4XD-Eo#{y| zL~Bj=N7BiXj9s+#71rY%w>jP4<$x@og1?JPqVR|rvM#VLhiuw2zE+{fN}L|);iXIT zpNI2H^GJ4&11|2Qm%+vy15N1PBzx#Bc?WXzyrZ|UsP`YhR&hYyO?N<$r{|o|B4or~ zHu{vrXCnhaEBp!8L0M;YbqNW*Onn(9fO;d1jiZ~e1!^b;d8!xOEGPY`dRD3 z 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.woff2 b/section7/eazyschool-start/src/main/resources/static/assets/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..9a4633d9c4eccaa7c60974214eac25a62f6d2289 GIT binary patch literal 80252 zcmV(}K+wN;Pew8T0RR910XcjC4FCWD10L)E0XZT8ONF5T00000000000000000000 z0000#Mn+Uk92y=5U;vp;5eN#3^k9h2Kmj%aBm9D+l5(TQYl+06Olg ziU4(2<>qI3zc|&3acmO3S@}0oKhF0Gxa))S06_}-6SM#S|Nplo3t6t6S(rc)ND8!8 z`(SNR&-=VH5t#xB7DOeg5Li${3SCd4iKO6`OhlM14%XS2W2w8zHPgk?vQGy{@EV{)K?#vexUfL{|9+*w0xOh42~h3WZ`1x>E~d3$o;%U+kVAbaqEMvc84gq zfNW>KK~6E5+;RuUAG>{FIc|^msAY5vel_>k5?Q`W=}Rd#@J!W$t4*YQ*IKKU!I8LH z6jwTm{j>kx&&Jjm8$+uXQZlPOuixQ$xAl-c1rVnk=k0B?*)B?WfPp5E1%(_!6y{Ci-|_PB^HsEE?w4^sKwA$4ZB*JA zJpBC<_(lHczFPxrU<1cCtu^Ls7ct@EUj{I^(Zax-tQPuI{9@1;S=V+Ucfyb6q5a|K zg%p;DYAGr4K2Y`VLY@Bx0{VJExujZ>_ zr0e)f(KK`6zQAK+J{K4~{`99MwNe{kC;V;RU30)eCkrfCAjdc3>Lx||e=FT~h@>YS zLV5OX&+d-lW78XN5@e&0;twrbk}+#E5Dh^e4pHCt_QUv#;UNM#;J*+c2z0CMz84{e zPzr+n2M`E&pV{oYcD}9ZSrVOf2B{4&2}27_bdRS;kaVS0KU@R;3{L2raV%#|_#F}a ze!pK1O|y6;L_BFf_elefggP&DOcSAqh4z#8|5L5`|JAUog0CY$#E_AM=)E^G!$bus zAz=d{_s#b_S!|}a)7v_Ax~GxI^l0P?1PB4H%g9q%{`pe1`l{Ers@+_HARVTAK{3hJ z1V=ee%m85xFOo4m+^mBS7vKu)zoAeJvgH5G01ygJvJyphoE?WKfavg(+x^=AXTQ?D zzCGC?sFE&nxJB3y)qrxBil)!Z-dBLTUxlOq;hs!bltEBByINZs<|iqeOv(;Gh_l5V z)*>lxfdGL27S0(Z&lQ&r*s(AZst_uDXcPi5zyJ=0+^M9dDSgi}mcH$X1e=Jd!Mv_G%FjyraEFr6nByh_z_AAN))3SS)4wF2|>Co}LD#@ZHFm4H2 z9%P$YFzucYQg`-*m`@wxsSn4!9QSh1$30y4d|UtP7QfvZ|NTxpPq5nqO)b$Jcf4!7 z|G!l2+X4zc@{j(1(hn)GZFy4K&uW8r@2gj;_v%%tst^PeAR2*WgCHd#NhU!_g#t(y zihxW)b`Qx;ls!RKd(OzAle-rpKuT>=vMs5zdt%ru{6oyE&0kJhtY$T<^=9B}zh@tk z7-GL124oqA{&+|?yiixuUJdDo_I>;PJ}qgr);$P(zDrObP@OqRDK`tG3MAK62-yc0>a7?s2;C4M zKoDug_O3#A1k0mnchjo&}A zX5V79Gr#uQ9s4Z`MMOkY5R^bdUXGVTXa5h~d?2VD+cu?2HA)C!%mlJ7x!eEWKpn!g zY&j^zkZK>1`QoKcH)#-b62g~f9A3kt2ghhMtgHgDxED?>CAQya15Tsm-!39 z6UkJjN~5=X(F7uy&f=qm<;LZu^s@SJG%8hGA=PKtDvN*wY{@vT2@JIeN$`x zUnjTA0^Bak_VVk!F#Z+KH|DCD7VY|DGO%n<+im-KJuUq{Wz)|aUj6kw2_-VJDjQn6LL;IRlF~Bsi_2^3 z8d}@Cdi3sJOlDq5RZT<3u048%(lfJj^9#$W>l#{n@#W7*aB7Us7Ab5_2m(i;a|9}l z#nTs##?zU6u~exuI=Hxd0Wd*hutYkG-OK1huZw%WKDiv8oiHL>&N*%rzMBr zpfy=JBvHjPZXxF(^4``lUX&5opDJkp1LGcH*<;`+mC2Q zF+W@9a%~OIu6KObJ*dJg-+S$8PxK5E-n1rW_5q=(}&0BdGhnm#$TV`dY_$REIsT)xrJ?hfA;W! zA*F_>pKA>E&Ul6hr)+%DrF628 zxy&R=EtPmF#fcRoV^MM<5al9jj{ocNu-`1Elkuq2ZZ#YATBR(~B#y#o%i*Bk>*RCU zWHfZYT`$MQd^Q=?Yn6O15e@&NYh9^Vr&f)kf-037X;V=y1^e;s**J7fnWv#=gR3)r zy*=z=m!U`_-{BM{Q|=?Dr|;8oJR0=7op!4UxnGaFZJoxxYsw-|;wZFP0)bx7Z5p~p zqbZWWPy~iR;LX>cpB^9XZZ6OJne)S8d68wh$70ZFR5GbV#ACA!hs7Xa5HP^qYB4F~A|abW#zQ~=UU=e`Yc4plX2qO}5}^Q24pJCTk~>WE zZ0j-(eOHB!WoW7dcem^LROcqgQpC?$CB;RB*;-$1``7Bg1;8u6<>~^cvHk_(Uy1&Y z7gv90<;yZu^T$*Mu6WGdeltz0zyAKd8CfAhR#dCZK9vfd=Zpfdg`Eh@0Z>aHMxr96 zjL;2!r_*ylGYD@X$+sgw?2?-BmVVDw7~~3C(K40xQ)~Esht09TSj=7m`*Rn8qXPHF z8g|@7uXS~XA#p!Nw1>2@Qbmqf?P6abj?H+H%s9>VU9*$xJtEiT?<7Oh1LWWQ9@}i@ zZ(6moi-9dfT(M=>0s(N0tq=XStl%?mD{V&=^DU@6Hh#7`^1nxGb0nzTa1H$S| zu%A({K_tB!V66hI3|=LVlh6#`*rK`o+I)eW&oc=-KUlB}_x4>_Avfci54s()?EcbU z3Xj4y%aPu?%c1|t_N^kK`WTpzz!dpcpA*DomV*omi8Mj7+(ui}gwiGO#uXg(c4Be# z+nGKqJXny0&*7BjW-&o0KvGe#^=kA+nsExlA>$I>2&L~9?rzv#vetLg!(u7?ecp-> zuEMOKQ>HX?tYr~FBwD^Kau@1_x5sg-oFa3^gU-BVp?}*Md5n&rp8k6+`vjnHf+)9n zd05Riuo`DsY3M#@%dN5=y~LJ+GhrmdiZa%$p;cQ0s#%Vj%_3i($AeAX79eFpL-04k zzS?K}f|G$=vD+9$+0HqA9d}SLPrJ>!EG14F_w!Z_sav8|Pz$!0U&D0G0$ zbwmNpaNS*tsDld-MbkQx(TEV`!zp#rSkBL%8`+9n#$2-3t`hk0J&ZCY+j?AUE!MVY zw2Yibj^Vn|*2*Altm~;l)mW=us$`TPEDp=j<^iX((xO-^%!pk!)M7>EL7tz0l;l7U zvb?W@#nI>XX1j9TYg}0B)!O&iS-?y19#^70C$3*ZA-RzK!>4y2ULEv@T49ve-i|gM zm(2+hBnkj^;g^XRSw`VPxMI$NGiJuh+nMBW5ntVFi7B}-px!) z!?~4h%Gu~{w6>7O)U{Ex)S1;%(XMh0mSnhjWo-(xq0G=bg;J9FcYCkFBg4VTbX1s9AH>|mAxY(^Z=YoByndErSfzUpXAqjt~0FBBcesW=p z^INaQ$CLKt{FoJ$sd>Hqe0loKrBdp=xrF(kI@b=yYWYfIuya#uWg;So2aeWF?!rOLQhT_&?Wg@Mu2j<3N%v!{>L(8WyvPsm`E_+)TvyUn$3Ci;R)isnL;nS4o zH6XP=vaPls?(KH7+0Gv!|4hG6p;tR5NIod2CU~Y52gvB@lj(&P2!aG&;7CnQ zAe0B{1adB=rW%ow@z&ME7np9`F`dMd^GZD$VNkyGRqeZz^pgDj}ePt)Ke^KYE+j3VdVBu$*rgdF1g*ttn z`&N=fxi!Y~U@?Z@)K!X&EP)=F&4%Km7E43Y&)m;#Zj4=fYmeGTt&7&^l^Q&0(E?xj z1NvEy%!P(jiWzyK9BckHWwqU&o2nda zdwdBKKcE!y?o`rQc}t6vWK>a>zpNX3r}7(|Jc~QjiuzqLUOR7bSHO+>mT!1caDv1% z*y#Y0RB>tHH`Q-fZ=~Vpi~{CQ#O=KJq2|p$7<22m^M9W5r=oO)bAJRMMUq#Afm8CL z-ZaH=Qv9m@FECaLt>>~*W3}H;=L?$rRmQP-nVX_rE*9NMb^^`Dgzhlf!K#DWnmsD@ z4k>*Lj&>$6HM6ZwE)AsRV%cvenfB6SZSqXn-`PjXn`~doiiq{Xk3G1cgEHD9f_z}gIVk&7Jy*zlWr@#6LyMq_0bOK@tgR!ys* zJ2d@7d~oNaaQ1F~%y;J78HESu{Q%f426Ik5o}|aV>x{qoT<}UD;?->1sJo>7a|(qpWnR!Sc-Rq3XX`{(g^Y0T?NdBty}6M;Fe(bs-| zxMn^csgX7sDMIa;I3^QU9BPd$UX3478K@) zIpwsIlOO>?8Q24aGmq7W7AigjmYDXRwoV!#PnD#0@KpFnRDeWOy|TyTeMk31cIl=1 z)E23{pohdUCM-rMAbmqXuD&*{0wn1e{^jmlLuX_s`m8;00?X70ghg^5QH(hn;Q^2c z?h~MiOTu7zhNOttK|3JShs>j;Y$y+utqPcne0oW&H0%pC9F{B8mkXEavWvzrh7bS= z1xnNraWy8B^b%EzK+I=ws(0GH<5>&AsGK;zfZhjPjXGzhT41YT}%U5>UHJCh=Ja4Ot_z(G(GD?T~iZk*kLD z+G|JArH8LXoA>5xE<(vluX2P{iJyR*f2NE{q4^)o0;h!R*nTWTSFC(kqRj^Tj6-_* zwM7Sd!R6a#tV}Ljsd}Z%|5spdbTYO>>I$nB+0@|7u48T2_oS&twKCxH73sD_`=zf$XF(D1jAX%0uB0 z@Hys`l0JAJ_7XdkZBAsua^l+{W7b2XijW6L$e+?Dah(6ov}0z5%B!SpZ}qwGp$9p% zLmS>r@c~I3k{Z1Z*Bwmp<=f$IBZTtszvK-rORU;85Yq=qy2Kp#>q0OZ6;e3Q0 zSi-9j*xPIJQz))EaleR8*^v1R??;Juf?jRBLm2?^SuLrJ%*?B|4c#*nMV zAq}J{y0wU`Rlm&)fY|AGw|dFPUrvajwetk52oIi)Nkn8uV4DL-dukwy+|MKu)5an{mJH-f*DJ;EKGGj`jG>-FS}6jTq&Q zcOa)4kT~7a7wvUt)iR2kbGaz4u4ZVPQ@dKn-v1%7c(8ARtOn|hU?-fn)11&blc{Z5 zxKvT2adNs=2cg8_F!143Zsf7%(ak>O!D z)4-%@JRD*GqoXJ}_|!zk337IE5Jy6WJs%!{Mtq`#EI9*W?I@xhU3YtwC1~t z5W#iAg%?aoUL53j+S?hwu?lTFmYuB`um|DahR< zYU^Ut&w}5edNi}%yV2e*1XQWH!|EZirwT|!q2F_O1BA6hOMKMu5W{M6M{`F@ zVa^^lK^qpcwjfF&!+1wZKD}Dtx<+*lcHx zCf$(|9$7-uWKIZNDc(+#&(L1X#>Yhhvotj^g86U4{_ z;hNWgG>(CpoOJS&M1E9}p#OfqTGt7Mu9 zmdyYL|Cdd(s&1F%UT2v(qAf}nD=%@u2Q;yt9sW|#3%RZ%q_80sJqURbPrc=|CEYQG zY#`&=j%7_u%c1#M7)jJSc7}4cqoYvvF=PzrdS9{Af>0Ej?OTxf@ ztE$|VEX-DKA9_GEW)U`M(m7Wp3Mg-Z-XcQNl(51`S)KyDVz3U!R=za_Mtk=%i!4fu zYT3{@QF|#zH;)8;^2YMsZqP|liWS}Iu)e{=!Y1NjUJVPYgF%|Cu!<)SY2gpwQ(sC` z_LG_7zN6aFsxTic>!q8qrJqvnRJ$LnMpz7ZynYV%d+HNfj^5B{wcn&`+)-b9n@Ou= z;uL+Fr*%UxgpUJ>C+03Z*>j*J`;BNUHQqaCV%kaL1>Yzs8kb4+FnMg^#7fYZbv?d& z1&`E6`htBVH35Wk?fYCQeFjMmIMP5UYtoiIoR3yT6NU{4TjedC!jTcrmQSGdbcEJinpz?D)3?begVc8CfBzok@oa}k25|#6#D%rk zfJw8=BBjUVc;wUPu`;1BUxfiD zNwXc^O_90XrWQ#{g;_L<@Jn5l(o}FA@#eV_a5co6%(T;Mm_vzZ%z(57EPq+k6Tn$; zy@r6N7UgI~>u>cp#ta6qQ^~*LLA|P5GA08B2-SpeAvS42H#e{X@B$)3Z+P<-aK3U7 zO3N+1%;qaS`Mizoon3s92}BQ*H=_plDg0sWk~cs69boxS-mAv+eB@L|8mhoQ>7iL` zUY)dgq|Js>QyEOlNED%vKhjg-?rEnxW}KS>{Eu{HCk;GRBKGU_dBmIM)j9t#blA&2 zlmF=4^f*O3g*8P|NSHSBWKx6Sp&XMR5-!*C6-iG&(f|T9+CM@A-L&Lmt^GRAaRju)5w0>lHr#ULgr)gGjLckVWIG%oJkzBI+MIPK z`F+=Ls)B&@C|2h&klC!J%Vaa6Iv!(eG474#ARkcOIre-H>kA~)MX%pMV6s5SvuC8U zI{gdARAwL9#8|GjYrgl{0Ck#GG> z`j96?&I{ZZE=KFw{V{RhTSZpZb5p*nG>~p;nWbxT1)YWfwb1q%7T{`9kfLO1{g{yL zQdZN@E-7udVD?8fG!q=D5hf?bSO=GPNp6;k(edsIm0OyNjV$C5J~A)#*Qs6`u8|IOOr;kqiu!^6!R{2-&f@Up zQ7Ip)o{gCHfnd~{34=8s254|D_T@UmLlLx)de0F;y67T%NVhggPXMg_Q;-WZTwS>X zk8HXlM=(2>kPBso@AFuu#TAc;G)tX;@KoCW`~rU)jjg*C1j1> z>O}1*-*K|P3&^kWG2M0jV(?h+)WYJxDhz@8^-HptDcU2Z*j$Me(D8-o&f5>1dPuVp zGdyaT_3AO8SJbz z82M7woUc(TD_x5}98^@4c5r$&|7Wkh_tqIgx-%j)8N8J}OwjX3*-u8kaT34+`;Q0t zg(K8t)53*A<-)r8;Uj%)%$`9)zzkuw5@;}P@aF!0qL;4UxDorKK6`fK8qxPh%N$ph zZ{AGx(OJC!$;Wuc&uj(zDCjGLVD^Wv8nZK6BL zJQBh+Kup`|KIoQ4r)xc2zG#Du!@^x-+|15BWub#m7x%86U231 z+#p8v*)%lB`NI&ftGjiFjihvs?Y*oA{OCo~;+YZC=9i9`h+f%;eVWc-m+rZSAvtsb zngrlZ*j-Y+CE_*iA#spQ`mG)xuR=L(^|7vHG+`Rf2VI&un4RUxK`s2WoLNSClxi zP1?G(G1KmudXWn1C5P}Hp3?WG+F^OoBRwD$dg%uVWvN9Fijw#vky|g+)N`(DB#RO!B2UcKsR&W130m2# zm7$3a#y^JH_ZWR5t$1K%oMrn6&mE>q_EEN=GoCg_{6onejc3``*eA9&AA6NJ%PY>v zuBe4HT2C_|2p2-KO^PpDoezv>I3g+UFEKuWt{zV@Vpo>slzw@m!$53|uz+Le39eyJ zUNBG}1xToJqf~V(_}7eK2F^kGLJIy+kGroz*6?WkX1V4RdBrLL1#l$^ z?6YZKQd^6`{%s&8Rw9n)Y^|&lFAJ!S`E=uoNh7oESlb;(!%njTNX043mTU^$NmG8hH2(aC;Amdk%KNy=iEnR8jRz0}BQdGWDyS{@LcQl#{urs< ztSF=|7P+R-If0O;D%J~~cI7Ll4h(s+RQgMdp4Uj(BN+O!?yzdS8e}{!za_%3WVx(F znY{~|Cgc{wqeuZOgBL7naP>z3n7t$fDQq&Xhk^w_frG~*Z`sKGUfAwS$ViAj(&K%s z-6qiRtdnftl5@0~RYaU8&5o1&`0Q&62qmZqsSvEYDIF86vx?4z{M5|xu&NPWBO}n| ztOUsmrJJV%lPFPn)It+M*2`C~`UZ!#^$zs&BUi5-J$&Wz4AKtGb!Gp;;d)^fUCPxs zzkeE3hLkU_u1N$iR%c7zH@cD2 zRc6=os#*sFAug!w!oP<3PHdI1I7JigreKU+Ltw7@;1x& z`~fNrU?2cZ7}sU_!0Q;Y`OGUR-2!P6kuaBjO|@w`iDOsFH1!WnHjj?*a8!=GPlnY< zD1(_8?U112K#846UDZ4l-#0kw9mCSJlZD)-$JnCNFE~D&6;+<>m#%ZRwi(Fzgwz3ac-m| z|7vDTiew=!4Cdtszy&~|Mx&qj9h1Eca{1LE8w@a9y7+;VMD*AzDam8=yfE&DS9*@| z@wiaRk(FTByc!RttS$}Qf+IOu84CAG2Y^SB4O+an19H5kVcvrN3 zi-9G-gu?iQNBW7pm^r|3qMv~L&7#5^VAbSlGF8I_(TCqMTDR>KPMG6#ICKme@b?7 z?!5jZo^e&ZKrAq(!jpJwA^n}YAJh;4sk^lI7+GF)AQ1GBp-@M;tQ4YO1LN#TsK+Yb zDOmJJ&DVeJdWX}ygHuhP@nh66wGaXUI(nd7O>m=ilZ7AogP3Osvx=TwkQF;Ntg4*< zA}^z!ekF4o#=sMUwslB-M2&~qIkkCp(m)M|v#;6jwsj1HIh^7Ggr`*wYIMWk9t@A7 z)`MlxAtmkEq${Y~!vwljTofnojOX|c5yZZ!qom%aF3z-bl~$}Bz4J*JPl@9Z4o|vu zk1~!ThSFrGZIPopL~ZGdnCy~6Od9d2j`l6luGsKxa|XLu+R?Drq?N%`G5JRxg5Z{e zO`A9k8AGyH^dLLV5*~1EOkln^8#9Fsy3GjAkRIAV3eI z7E=nB{TA>IaABC_Z7ZZPL;I)J6+vIli%l)r@_uI0?euH|6YDDl%cOc)u485yijSz& zl}LehNfhZ((nOcL&K31`NByWylVD9hTHB7ewYCmrIt`dUM%I5=b{)rDY0%mrzW@gE z6P_tQk58IFQc@h$vMN=v_T9?dk|RB5%T?Yun|w{(9y!IiIqk5YG+yM*w@9X(1i7`n z9q1qytVI1nIf86ju!D@=WzMvC`-g|PhE$k{?WezxpYOu7N%D7d+1b8AW7H>8n8p$vAV>SmKbX{vk9=SuI-BVov?X~NU(IB zhV%D2_j)}a^0>iD0m2a2{^&*jU?+dSiTMuXJ*+#xP}{t@<@I^g)*4hFIWKO)r(0*t z-d4;UALIio)i{!=k6rYfdw|6Jb#qJC`q%RZ(z9MwE%PQPupdUs_ojg~p9d-A?`jJynS^6Ige z{>ogR^uBmaze-77t(9ZsnFm_%+B}nnXl~G6CB<(X zkCp+imEP$e^0OLwYz{OoK?5OQ_b=)8H~Gc#@aMwT5aou>CqY+y+|?b4>!RJG_!e~K z0GFBo?XQU&H;>Zx&)JLYfaESOEjVg-_jR2MtJ>Cmv+Un-l-$BMS@|~O#z+{)8iQc% z*w^%5S^4Oe2{~Fja(B$oF-Nm;jxg?60TQ57EY9QGXUBW6kUB)&-XuJ0_8QX1`|UUdbVh`q6hD;yNanx`WklV zN!GA9VU@hg`F-@59ZY50*hUXwbf96hLxe^JngY_S6Pie$FC$=cU!z{=-jyoJ_ZXgV zsyUL16i~G`hHY{SSUf_?G>gz3cWL2eUBTIrQ|PhkrSYWIhx7Ho>UU>_yYw#`B>Hu& z9M1YumL>K!9KQnxwf)K%`w83{s@i9Lh9iIRK?vKjuZieGyR1$Hl793&NcD6fp+1UM zEzHQnO4_5IyG5Ap14TN!l(AgpGy2}Wexmx~hW&`u(?&e{7;CqC{VivI{f!4_cW~a# zzq7#1`g-;yuczD8uC>{%vV9D$XS_IU-=lPAcW(nroz7Sx=S-jhWEj1`$MoDerpk7z z8SC|SQQQ-9&z<{?NnEc;vbrau65{y$l^|Wt2`UM~8yqbO6;JMkc@ShZMv`sQmB)rU zZ#>)xGo514%y%=BGh<){4jW%pqIQtkQSA(DK2cB-3Cgg2v0XU+Q6VWp8h)h# z4KODH{)Bo5RpP@DcV^!;dx2~49-E2v>$EUOQ9jsLa*crOxEA9NVXBBzD5{5_#KbC6 zS?nDy-nt{fJ_vPv>#xBD2-oY6Rs7O7bN8b?)-yS-Dfch&)S7kXGh#c0JsID-_a_2q zWE}#dQ@*~0H?Y}HAKbs6WN4RmtLCgMvmRewUE`gu5H8p%Zx34R>n-p=o?EDB`tyk6 zlY@&#$Q}3z*f8@4tkPe_l^Wxw^H}1@48fnc0xg@E_C>sCN)|H!5QixkG-LhB>m|D| zTh0q5kopUwST=Uhqjq_BUtG=>((xHHMZ*knSyP}|Y6t@_7eHS*(y-@8nf|LSaoHk} zQMuazWELSb#w5%+y+c3BfRzPj^~y+BXf9lhkf-Pk{+{@N?}d@b+BLDYm4|yv)3UKz zU-R<%N4|y?{TWgNEuVqOLa!ZJ%$i<@xNpBzEDkAP{qC0oYY%BAjbT82w%hvDiZC>r zCk=Eypxj1X;Tve@B23ELjchi285R0IionV7xObAfe_9r zoF6JPYLA|R-k`MAHCUZ&x9f)p*IIyit=PKdDjXe2lBWD0`Csbo0_ZqB$kI4f*$|K; zg|GC*Y~?3_;LleYG;|r~UNo?q1WEPb!WAIDiy?v)zNXWlU>W~rs#bABYRj&_rv{zs zy?Kv}vZR01Vd%q`1zHjzvyse~o^Ujx4~yBqwy&IKYkkh3UCIH}IfSGBNK|$@^<~Au z4jU=|tyF8}(Q2uozXo5_Ctp;GWAzHJmL_UtQLl_widnl)*$=vxW`&(TN?@xWjs56j zdS1B%8w|;$?_w>43Vkx&*U`faz9*vCw;?8fHRha1TrG~ZsqUr9H!txLXp(Hl9VMOa zSMj$X4<$&7W}`=-W1$Xc?gXi@cKgAkHfxhVerSRwQ_Vhl>{tf##m&kJ@|`G@l!3p0 zr2S7s${Z{r>L!=Pc_Ptf3NV&X15j=dys2R2LfZt3_NYGkcL3r~0Y*}!dN%1gvyE~r zgks~@H9yaRaD^W5vCkJLl-ltjlS=TZwgV3LI7a0MfycGj9vesm^!r3FDOf*QJ9+~c9wj?@ z&GAi1ji4Fx`d?`bXd);Gmg{~(S|DOJaXkINO0o4F)24TF1?2alziw{+3qPn8D`+>0 zClEUMW|?n6QVKxZ^_|9t#$Wl?G*(T32PcFcv54}nZaE$r1YR?Ol(l-=d+$#7ha?Kc zyU@)+^R1G5mRTBx2DzJAthKtM6{+SAYBvlit@j*?`PY@__p><--6F{?N(paZD0=$ZVX^!SD}#j8<%b#4K9d#2 z+pkmRa09mkaL=bH(O&a6;Fs12j^fDv3VUT%RVB2V%0tYL!YJrGR+|{)g_}O5gh^Xp zvq$3+UX%x878Sb)#_18^l8z(66dlU^{}I4(3l4SC)9G@4TLJwdc>OVU>htOY8JMxjIpul6+h{I+Fu4eL zk}HqR<^zb$5-54{qf?OS)WfpXpLm8cE5pfEx8UZ)I;EQquzn_(8RV>~jbwC0&;y5;`mk6808@96@`g}zlvH5ia!JM|q%xD9eKf!w+<9#LDx0Onz4e`(muBf8oK zFJE;lWsTZPCUa*r`T7XmpOx>4mtLr4?dcWFGm#kcnM@{P+INk_I8Hoiz1=hxUO(va zv`$|OC!8tQb5*>(9!arKUdP;op6ynLC9XH-BhS$;!?wq0ditberI7RH8neEO*n#s$ zmrHvLnRfDp&Yq5zD}Fj{*R?T|#?-~kiG@dG83Bm&J{R|FGBQH12`4M-7#kOHWvPDJ zGSt@b38Z5nX0w;9c`D9t?VDBRa23=uaTkiO#K-l+)x-A5q@+9J&7k>M>no?0pFi{~ zCnNokT9=EToS4+v^2yY*23-`~`~Asf+qs`^R()hVbTT8&>7+A6*mV)+CEjD27uUAU zh`{b#;|(u>hUfMcSow)jG#!>O*d^n3>prg+wuKpSxhhx7FP4k1b(swq-|MdmI;l(tHeiu(0)_OpETgR%;Wz`3@BUFXbPFam(mgt`&+lCzM6$Ye z^}8(yf#!TD<-Inkzd|{h>(@KbnAf&QBwI3h-zX*S3Ud2f@6PzH^7I>TH-Rc=b*?y@ zz047-Ex=#fl!e=E_^IOQBlMA}(ehmH$`dWhSLC4_&wLJOu4Yabzj$f!otOkqS+<$2 zg{S4V?_1?V%u4p7BE(9^+6|X$#OqS@*GbNB7a#y-naLt}N<)wX{yqw&I7;j403q65 zxDsvB0~WXYv%v&S0^8GSi7*8y1665^T7zk|xWAPbrlaKmBnNB(p)9PAG;3Bn#-zEU z_*9OzV|V4Y2hvQ=Jtim@QFRM+%s%put{SOK8OZP%h2)gt8&w5CoEo~bIn>veDeI%Sw$-qH!L~`eaz8TLikp`+1Q|)spy#`{ zv)yV`bT%f>EA;faAYXXtU>07A!SbaM8O4v!O^uM;Lc+Q{lkT`IUlw|TCM#nd0#S!4 z@-i_gfVtKsB*`m?87WivaHV52peiopaUFCc+}6ZRq;%4v<80RUJ<89)r%#Ja!3EXf zv=3va@2F4+P_oK98)tu#86tey0i?&6W0{#jc(dpQw`h;E>nuB@?kHVHcfb%{6cZN9 zI1-DSTX4G3IY@!5EL%QezkAy_ESMfdL{iL4Ve4Wo*yF>iyuKitsf>!(&|dvZ2;Y^h zI%EnJ>Hr>yW!Y|_FeOkHJu8sq{1?)y}y$0UF?S+s~|S`89_9w1Ih%~jUH z&2-j>aH%d*z4S2TU?40Gg(x3H1sxjSa=Td3mIle~IeFy+{)2T1TSP#O@&IynkM0v7)`>|_RC~_)G zw#R%*X0oLd&NrZev@=bja>?!M~dnS>%OQvT0uH#zox*N zL%e1Jxy~C5WGr9Lt)94|X(MG7u)Q?9q;2{%IGz8dX=918_S?f=p`bjU(P))=YyRX6 zc9CpVathTXy%z^V0irT>?V=?2|0>TO;&xk{ijI~O0HhxY!woHFz$~oM*J)VUIl{8I zL^ZC;xZxuDw{EA2`dxs|VX-rQ8OC>Yr>Nd8BAGfX-Hd37Lar^(TE%hQ3f6>eQ6P(I zeC6!nX<4zLLD?8%$ zKUl=ug9w>r<-%Cxa~A3#P6ZTiv3P`V#hH@9RVvW1YozE3TQdfSmGTm~>?*_${{*x# zKlonD!c!u|lWQ9!kDHix3U2iCm9~$*T&;P{Tv!`<|NatiOWGdUmMc<;6Rfbi{Z5Va z^aYdCVul|ywZ<7ky*0^XO=ahM6R@^}BVva_{)FzE4xd@vQ%9ZK|0|G=)3b8(QXA>Q zUONhqFHrpDFfv}grA&)IecsG-?l>AaJU;xqpJ2#V!Ay~&k+&SJLC!^LNYKhE^yvIl z4~NTGOVOTt)G8Gb7(Y>+tgwkd-pFIO6kk6J@S-lkeKwP51=zKVRd55$E)WYKx~kYF zoQhAmQY+N@H~<5#aDny&jclr2h+^Z8CL-?QeL*{jaQk$uDz7Tz&1hVU$!l4 z45j(=6X|xJVxLjR(EmsA9Z!4g#}wVAvfseFa(?UR87TtVn&i_hOP-Psh(8UHq^Nx? zQh(2h6~YlJIm*7sS>1Ak86S+$0T6vZKGtMta%)zLr>K( z;}B%zhg4LGnBWvldvdMh`Oi>=K;R<61ret3VG12K!jFOv4l5Fg1gVVQHgIttq>i>t zeX0~OPgRIPFPBT{rZZy~K_OrCCCkUjYN*(QiVaprUlo z;IxSa(Lk?SJp-~B**BlhAX&X%i2%^Dl2hNpZ00==HSv}4Z8k^P^FPtDwM`@fZ)7@z7l#04 zeR5?5D2pbcUF5rs{nZUM58zuWH)x1d`6mNFdkH>U(C;K*DbK0Is@0SjE;-lN`H6~6 z96+#H(Rj|%wT(08)3f#B-PLCXpA=hxtR5bER&HxvnI2fI?CQU!+VQ(>(cfgM!G~IM zsxd0Rf&R`-sr<2!dkc4wqTr+wIpcSS!60&?2e^MID8_R5|8N#lHn1u zfTVo%Iq7Q=VH~Ui(kZK2sl>M_A-s#$-qpV4vFR)FXrGCzN>D7A#>!RK$`Fp%_pXAt zV3T%J=Zm4kqp>ogGsW<7$*y^fJ_5m9hb5PP3ME75Hr0eth7Tcg#=`3y5_pXeV(qv2 ziE)K_){mgPnwNHSPVd^rw?c8^M2>Xhd^aFiS#I#`mkko%ql4yUCijM<-H1@{`Qh90 zR7*696YAiU(_-%M%ScfcP3|6I^LCLKRIj_ktYLX8{@=#@5n}XJl&F&~0;HgIi9tD@NqJrKMF;iOUxS6B(ae#!-vY zx?g5NuIayR4G2$zN6yQmnCOIZ{*(NtzYe9B@sOPOQLo%cm4BSzSvEe?fKwfl3-X>n`f3A{jgwV-eLgZ_%S+SqCF zX`HVh`HnO!o-n&nebK&Hsbl^2^chm9l`Jr@hA$~AMxxjFaZj~)RRK&F34Kq58YvkJ zI!9%bubC+N1O?9aw}4ackA>H+Ux@4j6qjCXp-5nlWKLFeLZX_S3*NyaU$++L1{Q-Yd+s4Dm;FFRrN zqm6TlM6nA5Ho&}-c902}x$njZqFb?FTS5m2s8K(_q!cI#wtm>4s?h_bhesKy!@aV%J{bpQM0=u0_b*Qsl8q(SBwwnimQdlH(~mq|QLhJab?!&G&N7BxOy z|0P^3{m!jx`!=cPf9kd?RYSmwfQPolcA!2KTb{Sjlt5j>(2JYF2%HfGkXIAWmM{hA zv!C2DEXs@LRQW`MMA*TQQO(S5PWzyXsz*k^$0p$+=hDM2Gx?c~igCo1VMp*R^{~-- zeIJ?0{E{*Ff>V8?iLtfh$;2d5V+sYYNG-zx&#f&qP4#xN)a*B-puQ+x$#lD?E^^Ub zo!YxlNscw{@$pQ=6+N!V5-Fj7?l1Bt1eW zmq|%~v|8BSX^pB@dP9NtIWs#%B3M-h$PCungG;4kI$Uw{z!Wh9!M9F}N_Ylks+LKG z^q=~jH)3>opX0oY|RSDIod4+pi=l3N)3cjX|mmZCy~TRZjK+(pm8A8z6gz@m%Ia za_3aeHPC=(lYnw57bsPftDl3Ug?trhbFOnu%0F&fMtMcfwF^j44_+Y6&&kIzZgX7| z+G96M*}lqbOA$gkk7OrrDQh|97s~my!#l#KX{UpBEuJgq1Lc3xy^0%Z-LUzLN_uEF zg|+o%h%(Ay)Mw6rjpq^Fy!8VqC8f_XxvJ6tbI7T--=&=od*~n~xSk5rczAA5WOvN6 z-IiQs-*vYHR8(&iQ}V~gm(Cdjyh&mosaSHxZwY#RG1=IQxt3;XEb_m{tTXGAbHAt7 zRKAW(aAG-Tk1qP-M{jFiFOGz-;?mTpRhr(O{E1;dV}wC6bEO$1+Zlb{-pSQW$D{A- z2^^4DPRft-P%{)KiwUh|xG5xA``whdB$boae*N1YhBxb&)@-NYvz;8V+)|5Gq7{3S zIG7zGDOaST)cSZ>>5o<2IVPbi4RXmwKWF7nP7bluil1WHII0BX|E$TTxL3D>I`y{g zQKmiDXdcFsq`K4>$0YqMxr5;przDs5h{5#c&YHr=XnrtOHlc`pW!n4RCD3=i{>H8y zuN@OesuJUvwb!lb^qOmD9^08+GySM6iIAHH{p`SB6vlcGfqF$XmlV>>F{Mu?S(fJp zfVf9EGgwqfwgf@&_nhk2td=!=C_iYp@3A#dMg+tCP4YuXs|t{QZ(p-)Uc_3GsYWY# zHG#7SPMb8WX-GHd8y&8~%A>GNFLZ&2Lc28`YvQ)C&TD@GMr=X~iu!Hu1NoO89>f#; zMaa^*Sk_(%nFX!QOp80j4L}e~T7-L@-RhhqU4SH(DD(cReFidTx2`66!!&$A&%{)l z(7rm!0vXvK(r7{ZcIEs2@>u$A=8n=n_Y&$cjG`@E^M6c}j*5{Fz#tFMQ~=ys9d4__ zaiFQ6;wx#7JQDu^mP>|*uveg6|HHTA1#x=XzWZ!o=FXUM%%p5rtCqMUrS1E5j8^R^ z0-4$R#1;6pc&;?&uE5M6G~ccH=dO;hvqfQ(Uy$~3JlFON~N=rIo0BP7a*JI31I7QOxP&D4&hWR9bBvmSVTTGc!R zN~jk#7Q{Du?MNGrZ{y61=e$*i2u^>@$C-qc&1RSjGQ`69jH_9=t?n-2i_9uGy-AI6 zV?ZzaVQ14Q*%k8ZqVnu%7U(o~K7pI6`9qht84V%JTB1AJOq(*#3bsa-!)`?4y5 zZB?RNjw`(z55-y=4|SY;lvAAdNq~>GQcLBZ=fI*Z)r4yLHX3tbvfdda+3VbsRLxWt zX6dWupTx4~*(n8y(Z4#BLDJ4#bDp58CZma)KxhXq351V}sM7<;JZo;u+9RQV$v%fn z79nB0D`-SqVGf+_b5(*<5mj{ae9vO(HWlkPvkMGX-L^riw4VlJG%Stt?U{vr%{2>4 zB6hPZX}U^!DYmlcDyt=B=^HI62_u<|wEXhx|AY^9H(3s6N*C^cFSp4*5~}DZ`W)jqnvflbG8wi7yX@oo>jrv|4~}P@ujU4YM&PZpvYTLu)>cg z`0E2!bBf1x$dl_QgTza{4BKmQDq1=Js93J>7cRl_wPCR)Z4)`h_R~wc52DyOz7R8PtRGipfvX@}@a z(tdB(3nVAxYci2(J^8#H9-O&(bz1i#e8ml4belV6{L*@pKAm~hmnU>O<(ZUrM?E9S}x)#9eqLIqUX(2v<*~NZ`Ah z&a__04k0CN=tuT|<=EyB>{w{%*W9=@WKbudtH>9DwxgQD+v5_3NK4*kNqR-Cl4+BU ziid=~z^8J4QtC5or*s)>O7)+Kp2>^(iz~s&!U%0U%J^}z5@Z6yTAT9L=9XX1u45(J zgKb|p3YDg4US(sfu@Z-N$V7Wz`btpHP%x$j>~$l+L|igCMam;U@Jad_bng+yOwTX2 zEAVa4s*jbVsB>MRs7oPQT5xQM*dwdjkveas1mYvy;#ga(FiQuu&c& z^Q{p;k@`1@XQ7+G3STtjtI^#2Cxw=c4Rz$^oDsL1qnXi7kC}ziHEL-})i&GaZ z-I9fM5hj1ErM|f2-$!uM%IQzli$B;Suc!#{Jda_^qO$m0`Hh1-8tQDQ8-lA86(~n* zt@B>oRwR*e2L40Mh``UF!6$>WqXh4;h?yRe-hh2Q3EgXchR~nXGZ91}cj%eqQd@?H{^78-9^&2!^k z1Azg!{;Kg>L%Oe-4ZS{)a}Bhbea$u-9X7~dlvFDWgInrSJG!r56TEU))IW{=56l^{ zK56geN8!SDO>jhGuq4zGgr<^MYVji8`dEGToG6PB-;!(hgJ0NXXkCp@INJOYN@$avQ+>SX&56<{UPtm39S{0ht6*|9i z!aYPE&|kj877cfanAZ2rivR}@_^W|ex7G@0z!=l01#Sa?K7VO(K!145fQN2Om49vl z)(Ubw94T?1ClQQ8G@-lO9#; zf>+d@YaTij6DPJ{N|%yrEpbuqt5oW^9-ojw_}tNPXKYj&RZM_|ht(U8-R>rtewCuj z=^({(g3)H7B9e&4LzY}9< zEb|pbFHRC3dC?>UI3EKZT@tAH3 zUN;hhwJraaC+EnRVt2_pBiD^5G5Ne5zpNeKhsUay#}TOL4uCNEZK^j>vesKjygB*z^WQEX8Q`(wNA4!o?<>SgIdN!he0p$yic2f&3Uh7k z15j~r{p>JiWZhKxfgUJW->4(XT60vv)?@n0qr3dlOv?LR#j7_MXEPbjK4ry^$lX0; zd-15%-k3W9oA%`pdRz0XaG&ffI2l$M<=VCO`L@GA9jKjM>6!Z(mBdVkj8__!c2Bu{ zW)-UwF%Z)|2#d48eL4-X<%8Zy2xP$9e=xVLY^npz0-4-37l?K+tOf(eKc6{9p@kmE|~ic zWScu5zrJ5{lFyI*N1yy~A^sZ}HrMS_v6TX&!`G`Z)d`9Ms^xL6r9eEXZ&69}f)0`y z=Zbs6&(x=y4cLtjMN?YW72WB}6*~Kb_JUwv7*_RCX^!z z%?CB7>I5j3gmn}yGi&o(Wouetx~C@vJwOY= z)d*C?BQtuYIwW)kDm$#{qbFm!kpaBMq^GXPw(y|n$F)d|?UO=u#B~I|PsC0ROsg%I zzKrX&*RtF+gg#kvP8rXm^W&dx)jc$?fXn@(3t8i6Q+<3o`^dl4y-ZHr;phB;x}>(8>baY7!z#~YL5p47YkC?qA+T_=o7#oj^{pjLhdhb%xSgNm%7+q8F@?J{Oxe6ql z8(&S8PMfVyh>AY1)9&+fNW)R=YEAUv-PVVkHt69=tTI_M5(-WB>ERwX z&PtDR7s{k}=b*Icq&;YgxP?AUXfxq05ntR0NwBKv+6i6=ETnpuNz+=UtHiVj%f-7iZTR^(O?e7&+V`Fi_?2$mnjyh@=)x?D zg>O)K=ZtEJzoa>mQJJzMc6U%}wAa&gvR?aW=r*Htmd0_N%^xVlUs|L470NCS8;9&a zuRWUHtpz`I0wmj8Ov4lUBI3N7vxgwKN(Q&btpK>UrQ2N0TpPJwE3iI?fiAm%3TbvYDl-zrq=m zFG~1F*}XO9s+{!B5I)LnQ{)-B_BLJG*OQv?h(T`I2>_~Efc32ehPafv-)v5uer;mP zH?ao{CHD|dkE+VnOr%9hX8y~8RRt|jJ;u^if}wnZt1sf8YWf;bA>`zM_z_+%Rd1YF zI(65uS%G6DPSM0*g8Nt##YE~)sTF4fw8(FF8;5+*|F8_A)Z4$+UVezhKe8P~uyG`{10-FeOeS2Q@d z1Pe40hOhP81F&@CJ+Gle?Smr+AY1FFtzkIg#VKL;TR5JCXeUFznAkt%}F`D#*{+zNL(DoaABf@}jl6Vtm z*ZQ=(`i51SkY3k=O8dTWAZe01Y>5hTOGhW*kN=x!xU-DAT5e;OlM;(z;N8c=?Ie z=-iIBrul|sTX#da_M9Hu`Ka1Te9*IakSm|{2&f5ZI}M; zF!l9%u{n>)wkRm*l__4~S-!2j@4<54OWw=Ds9Xtw1=%uNQ;JX!{c+%w+(;fFox(n* zo{i(#n@h_v1EMRG*CHvl|E><83u6wqd+^&SC+iE1^4_~p1%nT7LvJ(a}jn{eU; z8x>efm_eyen^lyExJTqlqafGw;>bpI9T+F^Jj3S-%i?Aw7Q3!i-p#G5uxUEm5U9)3 zx}zAN!YmI?puXlftt+Q&F;d%(x?_9v!wP$_gG;tf=F|QN0hhvQl+GC2wQ`&k5NN)I z7K(LAo54SOPM{#WHQ6634i~n&L_f*ssX^&8E)}mxbu*}}}DK_~WN($0*dtzQmw2%|3y-Q=gBe`tl*iHe;@fv)KM5?Abf$BRmd)QEf~Qn<<}_ zG&KcUQ83WH%?ds%e09roBTwlSQ?-hg*nS-AFmhwH$e9PquFXRUlDX?>hcw-uGXHl} zSNTdD^Q_M?#@!60!$2NIRw5y7AnH?LZDe%tnSdCAmG@I6u9^A+TNb}2T#NhtC+~ZE ztAC&wNVa7|ZfYsLlo$fmS{I(_uD%Qfox|vfuy9!yNqybFjy7uL1l@0)SJJ=|&>0Ng zHQtod4n`Ft1Jq%3SdyhHF%dV>8+T>ex{%cN29LhqzgS*CGDg9Ns@+BDX@U)P6+wGd z0znSx^Qdl3t*kWMVsH*T;V=ZK@{&rKlE*c?XGRTcCl4NAw_T;OZ6!6PiueGY%;~Dzupf z&zlsvKj;MsxX|ikWX?d2EuThxT+@F}n7PI%bO@o)XSKP@t91ln@ObGX~3(Z1Em5YTlqs$G>oQwvphQFe8hf_&oH(W6GsNGSYLlRb6xFkq;^!X|Th ztJu^;v}#ZBP@Vq4D^F3HE=v-xV=qj9OtjQF;C2Z&Rv>#z38PN7pnSqmVKPSDX}oQc zKhxzy6F!KZTG$pBICd+itl?3Wij`$;@0kobt}OaLg8p{*cobB(y8@YG+YEfih4MzW zFqpb%AY%bIh)dv;a=_+wf(G@%{DmW?ENg{?FtZxQn?FvD6Z-uTWbD@Hj*3FwsaGS>K zGA+4Z>w8{iAzwN{8uy$Z$?jy!6>^wdr7=P{{DWe&0ibQG0(RXos{NP$PLH01XQ$iXjaUqE*{V1IRg;U`NZN{uR65qpZ}t%eA-21C6-30 zh4Taw-xKgs!m4(xi(ja*C1#qTqK}ZZY|AZ13IqyduY$0yG<;j>4&=Lqh>`l-gM@5( z^HErIxN|2Mp2=?`>Gjylk@<{jx{!c5$ZEH?5TlQoyicPHYYt!grwQNQ6Y(~eDR@Hv z1r|!WexB1of-ft^-q1*LG6MaCG5WfTU7L`N_Cz%NK5rsmYiX;MjO*4}M0>0M0t1uy zmI#l52*c}f#SNZKRPb1yPsX&9csAZ5_XjO_pvAD!qEApakXQxbKBuSlgDWpL0QH(X zAG@v-sNrj1Tuz~zlJwU1gD(6H^V3Xu(z3MWc`Y^JB#9oX=lqC**xda0|Bu%PcYA83 z_d&E~S>?q1ZTz9K?5;0oxstoIx}6V4=-s0)%9`j#aAudwrB07&Z7(_YMOVy0a7;xf!+gYvwpPN)1UWfyhmfjCk;6I64sYQxRL|CYQwj= zfRGV8mbNc&VHc~7*4nXM`q&-$qlTwQP(uZ7h5{O3ZqkZ^6qyd7A3TV3Pxf(Z;tLECC6-$Qi+(kgRdq0lBt8YEYZ*?@I3%ePY-~Ss2M%&}rZ`CB0rQPacOWqT=Pn2qqP(~i zx=NEHwYWOUl=Z~v6v%OPs3<%y5SY#Ymmkd04G9)wi9eqgc>CB~GR~q+Kk}?@kGAOH zL(S$1ItQ@$QGgR>9XTq!bsyom27!=6R9>h3X=`zMaV#Ouo@3XX&N@FO*1c9jn5JH| z_|*dMQAY^8`Rub2O)iUI)JfH?h8eD8&Bpx1gL#GkLHY@rwbq9*K?qzo*btxltzAv} z@}UtLh91R~yyQRiRmUo*Day0&0SOg4-Lf*g@)Inbj|h9c!QVhS1AHLgKzVg%q%wUE zC=tu0{g5?`O9FFyOWwYNeVjPAkLC~9ulSu7MXNd)EuxO zp6w@`WI;Y3rgQ5hk=!ow1@kb*xu2~DlPKEYeNiTI!)g`}%@GsaK8^E(g5eM@(}r$^ zbMm@Em*m4;g3L_tzQH*%LXY#di}K|JpCkG;40vjjOY71IrH8=Jr-jdl8Y%~;nYnC%qV;~ z?d2=eA(r^@Xx*}~Bz-W~^!_(XsD&K1)0GdSX}4-aK$yXZs?N4Nf#I%P)Q-vC1 z(WO^9npkT8b7u%)%e|1U9*ReiPLBZ%JF^5erUs`p*}yb`YbXBiMgAZypL1lRD2{s9#$SdeWUi*QQmEoE0K;aqck$yza} z%_iPeiyl$3T0KA)u4CN{73}w`+rl-HRX1?w4o3(B)AOtfhk{u8;LKGGGCZhwnbaLn z^9ZI2`fNd56)0p@sS6PJQ{A;n3NG$TDq&L5S!IZdmnk-BBGHQ*cKzg*f>2v*;D2)_ zR6%{53HEH}(lRfb(08mt7!eBDmt2{%>zMRG^V2XHYwM2QWQ`dP^o@oKPG7OR}PA9lq!*Mo1pC#vbdV)=faD1V!R&}Mub^cM%jhR)~Q67k*7#Y;g9g8U&x6#b-hZ<%X+Q&o71-D2zmZ< zz4!~I3RBd)e7L&CZi7sVE@p@MjZT4!gn5%)Q(Dfch#@};tu{ZU3z$82_&1$#*g9>l z)RPw*bUWM4IkN33yR}G6tRCPR-3fgeqHt0w{*(G8DQj%;i{fQ*fK8MR#P+E9^Lw?Y`S> z3c82grn1E#w+c+DY<#H8D990Ca;TpkTAu3OxD`{{jfVYj)@M1kMUQYw`T^8*7I}gZ zqpD=`HTZjb2(%YvGFn1%o^oVp$Hn)HLId{u0t1~EHgwD@X6V1Chzs(Q-s0_8pr+w; z`59H6#wyq3j;ssJBNsGSe2K^aogxtwR+~T+78}Drb+roy{``n$SHJ~GV2Vk`t7VZE z;e6iCKJ!!HT&%LqOs|&oIB#z5a~vSa5CY`+jp^t2o1Il%;v}8!@W~sV)MO0cRU%uJ zO!N8J)8i`E(~SCXt$RxHwiknyYGA1zD=_0a**|;KawWS^80URgDetEj;F&#ELz_;q z5}LFir6B<6$7>MBh03>eY@5Kejv>}`cIG`IzN0>upIVrGJc67GK`b?{?R?CDoYob7 zcbr4{M6W|+cC#kdJe~~7O(teiPHk*-&>g;!ZAU3t?o!PPKXXcGH zGu8{~b@}Z3JsaQ1zPKOf%Z8CI)q0o_`QYZyue-r=2(t3gwHv*rHf*Jg2^^(eR7AbO zfXcpmgJ}=^R5n=cNKUaAG$K9u$yE|a;s2u>f`0TR$+wRIv|=IO?ix8L}ilt0h=;tPDI2P#tH!j}6l4E$vJS!ebi&5k0g zZxCN3v>73z;rjzB%ex+n!g@pNygKJvJ;ABNPcV7fA+R+l0MS{pI2VE)M{mrHM&drG z7Raa7OaFZFo@(v^@5U3bsAui}-LlMW%-%u?6*R!;sa&Bghe@%cRPm|-tt0|m%~MLt?o zDp%Cc%EsnpzMfi}*BR~ecYj(g6d->W359JXRG(eNoHdf}Oezy#yJ{a-LtXJa-LU;H z-PJ+I>r&`7Lf<}U0{U~%eWss!fHj164W|B0pW*$|94`Ng>`e1^ykz=#6pxrTHv>g2 zTs&Q$NShC>V@(+HBbpqZOx}#CU)uxC7$%Tk%@IwyOpz7`aP++9PX^)_#YPrujv>cGKQIrL3Ycf1Bb*+t0&YIj19o2X9-dibadS($Vg z`+_m1%IcN(DsZ4kBcP~o6DZzpTyGOmSxOIcF5+NZky&<{^=U0oP;IG+=>?L{Jto4q zJ0HZthEQy5^%7Z2@m60GFEJV=hOm28$}tft?GdM`YYhay=QoA}rzlP6kfP#?~GvO%{r(ZukSfw?{sj(LKoD zG*aUA0=7c{ua@|o#VB-|zjb!mUz9sFH_Ty+<(Z#-2H9qzq@PcLAZ~_g>Y5%QQeAeo z=>IaRpPb`8$q)}d;Kp1tsE|H9BdS%IEoV(?huz^}?&1TS*qTzqIWvmEp{#+jQ9tCI74A+^bwE0aD_;A1eulElZc~^LpI_MI~daa;S`{iD# zdYBu}6(uS4lc{@_OzCzcxY5pA(Ik789cv|BeAx-`NS+n+FLHs~I=ppP^FDkarRr*{ zb`O-buWb>O0hfOOZSEK~GVk;D@>y~f@DF=f{s_t?O*Ubl`-0xld&3ijz|AJgUFUrY zJ-dT$Q?*Zv>{8pPJcL@swR#4X$3WQ3nWQw5`-!7Rsr^VTSG48IBqhMQC6Du&*kWe4 zNzg>uTq9{xp?TsQ5*C|%w>?3>IXw?6+yZ8U7o}gXs$bfncvnY(Pl}4^hL0EV7LSF( zJf#VcshSR?1hSZu;7$KI`>Ebe>7rMV)gtXb>r=3ZU{yrnpK@??OKinZOt>$)UF3NW z4g)oFs&=!Iq(f<+I-IQ_nYtU~L5-5NoJgB;-=7F7_=kkyNMG9)fNfRYQ4U|hqPsAE z^=ZF6S(!@TZO&{Mu<_H%_F<1zHP3dbd?TaA%=!m1$)cAZ;4HGdp5Ct>a)%`Kl_8ZV z9+&C=S=;gM=4Kcw-u?snE(b&my&+)SDYeGspPpE%S*j3#y=#WvVHnlQIpFf6kAva) zRkq$Z$!}CMToVC2C+&wCtY$<=dE{}v6$!GER7Me&15Dk5k zVpaWX52!|eKUSYxPZNgmRzrmhiX?eM2b~Cr4~16Ytp8N2qDF4CH})QZ4{nE*rYmQP zo$cXjuBY8tb?lN^{ZXEwP}jIMjMK%Q&##dq^>Zlu{fO5$+Bv_yv9Z@Ld|8ro?#=}o zQwq7baT0ipY$ItKkU5HBrq}6k3)nOPjU>b@aFCYQ(0#bu-M%X<%^c*opZ& zxpz|y^SoPVV2x8ZVa3Ho+rQ<)5Xmmmq!`C1Y3RdrQ-l?+hWA#V22pq!{#@TA7C2pe zC8R??2l&unQMtU8|PQy}9of@0mztvUPo5 zUO=>39A@0$H!mI%&@h`C=lp0`Gasq_r;2iyl@{S@@`wB;1gj(2gPx$C0OP|Zld{{n zj^Q+zRwcbjC#oyWDPI`<J4IDN}=xqHc zuM<4JD=cFgunfak$z&kfLM@c8#bAoMwxTID{Uf~wlvLU*UegeuKKi{|#8eKN&}SGK zJptlZs@tW|K*JscmK^rQw7^uxL|v70h9AUY|=xv9lFa*qPJG=JY6%4A6S#ERVfuf7#tBZz7 z>=Z_ueBz03F3nBa&{Iu!e@l2212-;mnm{nQ;7=A*i$VSM2DUwhYe5b$|3R-Ecw&^i zKeKlnMbDKHwX@J*#+Lz|RMhy0Y(x%ldqMD6$-l(@=1KI6^E0XOoAzx&!{Duz?G8Sn z8Lm9>t&4*hTAw0c57N;Go?EVN#P2dG zY4=>=Zykuxs)(GtdeI${xYnM2tif>d^n>HCvw`yfBP#XBu70;wj8^mN@JPSEF+3hH zABD?x?y4&c5!iw8QH%`xOoG6CR148Q2Ll3CkG!Jq&cN7vKYkAl!PBa2sWS#MZ|@vk zf{7~%3l&5S(N5HGg+#%>=hDvoSBPez4;9u~%9gx;FG08cYBKM~#A8nRX5nM~CK{$s9{#b0n|Jn_H-uT@YhSl7ML(iE0q9B? zTaAh-wVnuIml6eIKuoMbEtSE5OI^GLPY#fH!eU=Ev&x|&pAvdn(p`Z9 zrUsJWX(*`7y}T2Sk^@lqqVmKDLTT7}gg~Bx7}MExp{W5&STsw;(fB?jSBBy?DkLqk zrdLF}U?Bqqxnje1Ga5nJv~b!Jk!v%j?K2C(OGjXs@`xiF1NTDc?EZ(QD~_Tes1pfU zbyTF0SmlyDpW%Y0i*p@S#))CD5}qQZ4uK1~7fR*bk8=9_M-mXXWuRi|3FC+@z`^vi zc<1|Pt_vm zE+TIX%k}I{+R&=TP`fKIRG{_nlUO)T45Ur5#*&3t6lF6Zb_|DM)1BX5NZ^uLuHsSU zK8-UOlO+Jk07k3WDGyUvv&U=@h;q;nM~Iqd1T2I>o^~|GXJp6R?W#c!KxEY;>=3HQiIcQ)dRvLIf0vaW5f)fMD{y7K{M)}Twjc~47A@O}Dq(o- zx|(zL5@leDD@4agAp}ix!Ho#hY(!)_F>$5|k4u~v^9EXpVhfcqWP8`XY9e)<5OwuE zHsV*|I@VzXMPA8=ffwTdOpzpm>?Kqr{rEH$AwK<>f)t+xxfUc615(o`ECQumPyxSD zKQa=0AKGWxIWg?+A{_a}kA8z+S+%&I7}avLv8Oq|+wG^ZIF>vIhL9v75AG8GUZdNP zkHXQkcIUj{36%`%E*+xX;ETl3gqg{#H?cY?7buP!v7fTxC~pim#Iq@6DGx99jyvjk zwvgf;dz8yFl{C*32uk-t62$oBfXGR1eyFrA!+!;k@ol3D4OvJy_7P`&%f@gLqtqCV zDeaO`KtsODLG+}mI&*Yw#3~}|uL(+xRNd4TMtHnBiCN>@{vD0DNA1gJ6KnO0{Cl8T z5ap2=xo?p3aw6&@5wL~6l#AcNycaOls%K^pWp$KIL8p)yxEl_7MHXD=WMOL?Gmd|C z5N0sTP)||ue7!nUUA-!=nz$S?rC@&%TA(2^0&^`mY#-Oag#^zJ{cX@ySL^(}K1KN7 zmUW-^?y?vAXWo(JTs6%CJp)P$XZ^8xMg=xTr>J+);uKJNx;~gsfso+D_)iRCDw=RY zfVIQa$9?Df4k_ZCKxBykrzbm&7FE1LmK%I!kgMV9&kC}^h3vSQ4!CP@1&h|Y?-pL2=2Ss zrdsaNHua@nG~<9C_hl$fVvbU$Q~ZCcXTUebeDJ>lGAnarDCl(lbkgHwS)Ob#XlGwR zTMP;t^1IchZx%xcKf8d$!b9PTIa(fuBpggBl5pN0>E?Ckr29^FWBGQfP#kkkJC7mi zTX0F^=peEZ$&)x}{)obv1t#@j*IdDTOF#ufhBf1B!0@0w+&yhn6fMl(jx#?n5QgZl zXZ}i$2qw=Ew5n#p&PoqT_t)(@i;i3B#yd`yjf!8l5VW9C2BB-x_ah)U-^*6|@+b5hTX0=%8WwYCmWu({>>{|B26&L?!3|>pwBz zo6I=#O-+dNBNOf3NIy=ah_0yv6zYQFQq?~R4T;zSR0N`kVZgdyjVZZ(L{at3=&S7{ zpVRBS7s5~&Aqud?702s55`4lkHy+X8Eh5yAj`3yB;Fy>=N*(8^xo}MOj3aT~e1M1S zMC!%85*3Zo?}dy(bxuZhVQL^0{HCIw zQNJclAusY-m`J{VXH2^o%WIqUZ)fsGW93p29MZvpq%#8{7#E0}#ULpA#@;Rf$Fb-W zKn+^cP1Fz#&?)b|%!RmskaCfsdpKbPlI);6n9D8zOpu|y(*fLU7cI~Gv+0_};}#ze z&y#!fOO+!!Z6^ zEF)|=(xN0fEHa{H|GCjnFWar&E!1gIQE>>8jKV;Ul0fE=#EUupC>0DL1_%HLVMzsM zebh|%F}Emrr93iPb(TwSU=jtg2H+H%qfDVw2ct>*8{3ij53ZtiQCAsky;OR9N4TG@ zWF_S6<-JQLYKQ=_QTw~jQT)8s)=Q8OUn!}vV}&1%!U*4PuUzZWs*(G3c!@Z?KKPPx zJb4|fsdnn>IBT0%-bEccb!f<+069R$zj&Ul*4-v?!@-h801Gnc*&NR-XS+^kHz$VZ zF9x)@(Q(;@*&8o!i18;uKAyv56SDjq(^;fQ$~ z?ep+JGp$Y&INh*1A-G0g4wSBCsqn!o0md?u?a^$o+?H$j8Vqe zU>uYnt~o1E%y}l{f@jqPk%~+yeB3nsQ_Xk^*xPkZ^=sUGSojIfTRh9>>g`wMrrDUZ z7FgP%a&cDRtm@~NKAu9>(dpL^Ft1gix4#s?{NOuO8_U9{@QLA5a@kpB+NF~#qBmce zp47rgWrHSGQyaST&Hms^E68i^xb2wV5cDt1cy9kKVU__s8Sl^Oc?Z27{@kBCPedT`&&PuP?h(KTm!l z^z{`+?Z3i6j?b0b-k}f5v_p9+23=uaBM_{yXQ9j07XJ5^GMjdbQ;A-52SQ5#f)zTP zGB>Vm^wD{~IQB(^RLrw(8=BV*UDkqkGij4&iZzdo|qpRmN=o%s##FP&wohg4< zG>{x4_>8bHETbr0X{iNA&rLGUnRDQn$(VGUg7g24s!T~)se;>iuaK+y$1nGAds?j@ zx$4!TN=%hhYJBAh6ld0n7eb5IGDD9|&aiOS3O{2OIjRABU-)UAVVOJ@`f~(u zm5~`4k^YQPh8fZR7AS_m*v+!)Rcp`?sJ=?Rn!!UMthS#46WPG|#J`V}O4$xNVL zCr}W30fySLB4PjtWaGFo+z=vh9F27(PKn+CK}p9ZHi9kroWrIoz(wCjCmPKi0HdohpTQk$DwC45^Sy`ZQthCg@Z8vmt9i@j(2e;eM zZbbCC8G%*^2$VI7K%EkNU0joK!H2Q;dW}|l)G=XBN?Y+{q&JLV^}EQ*Y1TDstjgL1 zMXk!uHFfgyQdQEwk)dV(u7vHDtBXrC>XPC_UoXvJ_ed+Wi8_%4%&^KjqcV^~f;1jIOKoc5@F&^Kz3(dmdlLXqHr3WE08xX-9 zM?aHDQMhKc49U^_ah4A22MG~`Wwo~XzZ;K)-{&PKBmGD#^6dpXF8{D*%`qfvuM|ak zde-E}wO{(DLgIRR$N;^5`3fXM&nlGn*b8PCOh7Lr%Z*mj3Yh`tlx zpKY7#tZ~jgeL>S0(vN%{%F|T=Ohep1T<4K&v8>B+NLKK|5F9gAh$KvExmj74kWj0# ztX*pnX&7CV@G=+(&R;o)&zDZ1m}oa4+S2@j;)_xrad1ZaH6aLXbkyZX6$gn=>86>y z&Hxh0Dk=*nFrvO*mc%I2I-Mx8l632rZGyg$&<5f$1z?b4f#Wd(?8Zrw=jJZRe8`h@ zNgh3MJswG5>==oP|Lc#m57Y$H z*|4Ef!rKy@<#B&* zuEm$?7ca&S9%XxcA>XE@IwX$NhH$%LNosKF5`{fHq+7y@VdebQ`2jQBC>xY6LH^{L z>>C?p1uHrY%6!k712Y{vGx*Q*0ZYTy$Qm8yaJJ^hzxXVh4dQI_bGh6i zm%Fp^M3rPn0;P6-9`k;R0Mt?oiZqHf}9BSU8l+7;U>- zrdA&vqRmNCB^f9}cS*aF*}82Ex1Vy+j7FA()p#EARYy^<9rU}q>x@*XS4aHV-y(tF zoaVLY)T~^uTV`|4i-S}G&fDO(oSYhf4Me9+D-U4@M{oqE2(+v}2RkPdB@yr7ka$16 zBuW4%RMc90Ta#8RBUyT{n(Fa}=Mp;yiejsDUliR^!?`Y}s-}ekfWo~NQL0sv9L-xJ z87XC1?NVS*ke$e61PQFfnRF=aw`Evqa1weIdEYKe>f}g2Qjg#rtN>m)k^xB$9&bb* z(%}%7(RkRpA;(Cd)4c`*NYN%2R@94b4~B$xtZ0)9E9!NDv>_%_Ibe;$%Qb?}QU>O= z^4qxIIO2bq?YdS&Vq&cEZg1K8_>hjaJv}eIIUA@!8#s&M&*Eo52NEBbEqm7J1st zncc~j21-wS2roJ&Nb*UsSl20SijN@ivaIk!c@S&t{?VE+<%#jf^6X&Kw7fiv<;@X3cd$KuxG$45qtBmEmTsMY=Y zg-5K`0phex`jo-kWq!*l4opN7#pg);pRiH*>2yT$=@IU>yBoOviLv}IKK)8KFAj`G z=zwP8*BpX98VQu0K%MauShv>@K-05QSucK8SbBQcJrB#TP~#fQaD`R4!og~suh+4o zC#N?1xtuARr%s-u?M*A*sf2Mf=6;6B)P~CdAZrFsbO5Mmst~YD#NbNDRK>nwN=f4zK>1c zD-OvH40KQ6q;j+vgO2>{Rbap99+bFF&XavgrtT!T6?go&iT@)xIXEw3iN|&fqE1>s z(E4ku3^Gt7VCL62I7+a;U++Z$!%}{rcGeO_l4p{vae0=@A>J5189#;_*o|$J`7|q* ztV*xm7cZJvya&AwZ?GuKuPGi`-Wa-@PZ1OoCN$}Cz@nXxfER4`XB@n+a0p1tg6EYTeooK); z&kx#_8kD+x&c4(o-~QKy%=1j_bK6d}XSt)^f=#Xq$p~&qq=WKfZk~8VlNK^_mt<57 zJf<4nLClhu&7+3&T=UFJTffZ}^t$6i@$u7cG#A9p4m4yOwHb#ac|R4Gl@*7W7AQIP zjksCcqILKZb5BqhqYTQ5BLHiOFGjVC3O1Vkw4tu(!>S6Mch&o%=%==wwi1;ngUaI% z|D>oVeAYjN$;?Sn3?#kcJW+-{R@J6gZ&%;KId8(7OnO^M?)NoG^6zv&i>PskGM(Ptyb6X+iziz<(siYCK3MivQB zHA+CgnHJnM%K|tyXVwJ(79p4nfK>S^0Mq9)N;uk{b>*z2WsmqEh=WHE?T=+4GI>%OK)DbH)P9Pg=)%+>|tba}fp4GlpULbkXJoNsW(LokWlaCFY(NXU%i)(!$m!%(%H3R82;Lp_qK}hB zBlIw~RpDD5^7%CWbZx=@LyycM)wSMB-tVFyTg(3aErfG+5`yxq?rIkddNPD5DZ*dW zXpB+2FUFyW&>jE`yy+7-1IGg8=FQK`l~a}+2c|vtd$@1%umW{4G}L~*#&X02iY-hV zONHyw<8|uiBu6p15 zZ+-Loj*OKq`-|#o)ms2In1>4zd;R;I^3uHKxgvIoFT+f8I8;Z|O9r?({2qRw!ngXZF_*_>Vv7 zX+8JGeVX+4kKclZ+pk}59}fEV<8A3Q_c!NSd!7(}*AGAR>MvDb-6=Qj$i~!_8)*A`spE~5#1`JkW>RpN?}nAB8%MZq zr|MLJf1TnVz&;zKX}r7`sq0HK?;l<3fqT1*wx1gL7J6uaEv~m?u;p{=rfl@+`^hzR zz9>R0VLZ?ixoACVscSz3s(i2Ab70QVE6-{ZwfBsZyroAwZ@6-F&cHI)d;?WKToc|x zC*%jfvJs;Bsjffum2G-fo9J84xa}&-h+KGeJOX_akGD1B<%^tHEQ^<@ID{|8`%N2m z|9cLoN=yapBEhm`u?iq;A=q#5)1e`pBP1&(k^|?VkdY9SHKDhPROhM9Okw7S66>lm z--lVbwL>82s1w8s{*!xn*4g9jbpqc7p-^XX5M-VY*C+UvxtN|b@I*_Ue&>!bToo?7 zbN2#OH_@L=k17sSC8yvVO5Chu)w%Pvuk$q5?j~!o+N8ucVK@`YZJv_iwB_HtaM)qs zV{1-KwBv3TYxbu#etg}~$kK96{2c!bjr^vlmOEC|n;n=q<#hjv6DZOC%i73|gm*7| zKA-`xUNXLhK0)t8XwCQ=7k2ACTcZx7YEW`PT>=U00zlj{GAs;BXBap|k(QTBDc43E zr;knyZDN!tf?WCd;}{I;5n&GzSOXb+qTj{{x$CAUBz*V^izNz$#65RGyDKgYD=H#i zC)}Q+AX*3n36{^U9aSnv3*YlvFlw;)VtGA!%XJmbsg6@A6e``?RLW8e@{Fh5G-J@b zrrV#Cz_aGU?cE;XDJkJK1!a$r@Z@bsjNCe(z~lg>&0X9qrhyBgnZ8N>VgBmKY&f+M zbKAjDaAf43ixme#(sOV__C8!SaO1moJK9<_E%kK{GmRhy=X}s^0CZN02AbLNHE!r^ zb5y7kzgk*6Xo^bJK<2c>C1#K1OyvQL-rK~9<>ODc)_J> z##KR7=t!*pSib}SZuxWY9JHmza)dET`4KM0I7~jV-|mI z=Q?K2ba1<~v!~uMXN?A-!AL4Y?1C|1gfVupgTfePK+8;$K*nTg=_I4-cJ*~f1w1K( z?FgZvG_VE`3Y*hU8%3p19SV+?g{IypUg=(OCaYGEKZ9gd&`!7zBdpzSpcu3ZM>p^y z>M9;}YEP1OfM?M{!v^+)Jg@;VoBC31ZECVGEVA{VCItotO+1G2u%nG`oi~@Fj9^pM)Tm?u1fulaxPu`xN!0rRL1&xM zm+MgKH+hks{nQ8kehUF5ja$8!nToX%NetOfeiIUFU>FE`=zBdjN0NQVTq#lOCZ1cp zkN_V=U+vhOR*_Xra(Z|Wy@zgr;Gj@>$`?IiDZT1Fk1o?0nTK|qjJXOkfQSpR?t!HD zU(}#%=vE<5@b#;Qn^!H`h6;W@OH8e=|DFYI>1a0z64AR_wWTCE(NY9+R3_y{Z^k~} z`sdnzI3ccs3t!F^w~2k{__n@WJLoD$t~g@;tM&kPUv^T?OzxzgdvHQrKrM{Jwa~Rh zVj@LrZoI%XV>W?ZFs21_sl+T{jP@!C!}z-Z;EPA zsUk2Y(a_4g9#fHPHVYDb0_h6$FEqfhxLN#L$TAtB!G;Uetc~wIAOM{*(+0eG+a(Iz zMb1p?t^+)jG0q@RvP)*ENy-MP+~G?G7=&ImN=Sa*rdZNu+pP!6CYVhIvJn19JH`E- z%S91HU2XIv>xzy&mS9M06owQO_uY-roX9MYoZnFrf%)0uEQ*uYqlYULp%bK7;P zUAQJn@gZUPzfB}gxvZ@%IigIWT@?_hTmv0+f-4y;$gdp&`K(?aod<<2#%|DnV!l|e zyt4cZ?g_m~n{*L&y>>BNV8eu*BnZ$E^)=W#1&Yybb`ESH`bgrpEj#WEMGWKe;*#ic zjvM8?VG@iBfF7Y)NOKKb02F0@;JbJWaXN`6y-=+Ksgd<%$h|-wKswa#ct!)L*ROnj zYRMuav@hwmd25J?YiY7rKk%Ctx^y{;5!5*zc;8e6+CvW@^6izX|NIj|GsIXYR44GN zvH9VZS~)0GplsHOp~JN4my#V_Qhe2twKBiiezLVojCk|Km5$xoFInl@#NV`DG@4!f z{|R@v_^7Sp07a0ajs@Cbn~Fdt`MM6}o9SEX{JhNL_Jf1$U&N5w?*2Sp`i`&wR$U`h6-qUE{+&ZqEOeNX?qf z2Uqgq=Oo$!O<-DkqFIzA%2ge@t;+XK6qIRh9?{gHoZDY49w14XsQIuVaVLOHy5O#H z_H63e^aZr2>GUlH8IT6Jzq3DEdW$ z8`nptM$h!t{C{@_ZD`1K*Op3PB8Nl3s)4jj%(`{;=HIqW>h+K6cK^VrVRWSb1F&hi z51X+wZ=Cydi1B58V#Nv93Pcd?>4uM2mi^9CjLZ9d*_zg+wRMjw4xsT}cWF9E9Gq7` ziYBT0UPKq54Q_KxRL!{wM;-Oj6RNnLIMu|?kUwkIm;O{_VOUO_ASR164)~WVX5~SG zH7UyVcp}@!aj87T**^mO4`!1UqptLcu;)3##=b^jPJF()A*Lm|1%4xlbX~*1JVP4F zgQkxZH4(sO?A;o87eP^b(ocz1gS&-W0LutOyw7n3BY_zaCjlVPW{M=iCC(_EVIuZ# zH4#cRB&1gZdMa8Sm?CYR?Ysu#uox1k_xbT=Yj5~&)v7i3i$)`3(qx(xPdc5Xs<-!@ zKTa}to>p6@Q~=9;k{ze0ymMRzTukM-m;wWE*l*IGmOdkjq($Xqq`5X%`=U0VXsZEMlOJvm5;u#vCpUBZ zNTr>7xf16uhrvHQ)#ha}Xlve|e{DD4WHH|fft}b#pztipfuOFXHFi^p3%o@36Itwl z$ki5CazxjRY)5wL_VU(J#Jm^VeGgK;7KpBg`<_c)@euK-)=cJ%iAAYmUshd|d+M2f z(5{VJYYb(rof`EuKOZoMB`HgXD~Jzv6=#9l_P7O%`_{Ax+i_jx73gENXd+Qk67d*C z2C7OGNz%`2o3`Pjx3ji$@%7N*2v_wPhPGu^hSk|jZz?N?(8Oq(U4*r5nFY(FuXe)F zt4_m=Wo^c|4Or%wUY0)ygRAz{j=w#@EKn(x&CL<2D#B>*=_Q}egx+Mxt46-qQBz~} z<%ga`T8P~CWI6LmFS+OC!i^!jRvG(=rO8SCva#whtkoMOwe^G;o=#c^Ji0Ncz(ls_ zT9pfxH$WamkXZZJ!v=uD{pQI)w3YrDe&LbxswlvgC&=$Q58+4RM|8jl8W-iDqAk<|JRu0c6jgr<3?_v`)IgpY86|>pr z#dUn{J!%*oAd+&-Hq&osD#wD_+H&E^CGd^iZBnUKX~B#ou=6RES(H+Xg#jWRw|4hm zqa+3W{#g@yJT`9GEB_2X|I-)M%w$Y@66IQdM=)T=Zia|Ug^<+wvM$s-zYj78o8RzM zEk&9k2$Yvz#}Pse;snQQbjhl|v#29sS4u)hf%KRZrNZD=+Bh*Sa7&tO|-j#X~!xeGc?m8e_l4@ zymjd<9u~W?ziJxBo^4|D*yc*Na_OM#(W$_!|AxBCXPq)+@e($BflfkRt+AD<(r=i9 z%f_nwha=@W@$fma7TMyb`534=L;#hFQ&9}F=mrjU3Ql!0&n6yw;HIGh2#HSOz}3C$ zn9uG)?GweS}#8kRx$pIM#*W0Z{py_4VF4 zsBjp?^A{Ie%&hWyOlm-gv2)fjo|&BTy61`rS@I&&B9q~=5lu3?m5@&5siQEH!#8XP zJuplNj3T6_CC0_zqwpsUhUE0d;8XEA(lUV)kdenvXOm4S1R=BsGPxrI4Nm1ql8_CJ zYmFwIZzcdDdpw}q^Q~PYY(nxyia|=gX;u*S@XDLMc&%r`6a7VIXU2u2ZPEi9{Q4%b z%EDUAL^h)jWk(?ShC650glECqPi4sJ-~hfqV+$zMmBWU{nxPX`_{@XpmQK!Fcns;^blf+-mf z2cAAT{>R%e`zOec6o(}8C2+Z2Hm~(i-s$eF@o6D1Z<>iG|oS-{I{oV?K5`y3N96C$e~)6lmGqYQIR zAhr>W#4L*7$+hT(@{ zdI9HNhDyP$TjC)x>I8kI+3uzuvB}-zYr%Ro#c4?hKN6&xU&>xasy${b{h>KQxN}{( z&`z;4j`AP@N6ZmWL>t6A%Fy`&5tgspnILTbVd)GHwXB+a`7)U#?U=&JWD8%y1ns}# zzHJ~PGi5f{>UWV*Ha5ncBm>`;etkiC@wE{Tk~-^FoA?1UreH`F!6_EhR2Y&*=D*4T zDxk&$w#OFg<`NWU{iY*7LDJtiP$0hpu&~Ueb!` zCA#lJ3hgTv@xQ4G_THKRVvtwu-NyzVF}P*Ig6;Qr`|Pe!-LeHFKm|FQDFn(6V9G!% ztz}Ep?X49{OH236c#rmUA8g2*pTCDo{5Q5Me}3ME%U9p;z*D6&x1>1IY))W`Y=jc4 zUmdqvj8&o*F{AeRVi~Ls$OsFTWOu|9e{c1Z0 zzlSy8JR(pCb9g15*qPV)opio3bMLx|YU?e!Z1F%FVU#^GXUu-Dy;aUCD#Wuy8pI%_ zMz-=76h2N32BU@fcY{hftw1rY$cI}fbWP>ZX=xl+VIkM&!`lRB#)r7^F?+#IOl(JDb>1QojYXM|mjvp0bcSCO3e((j^0Uw9n2 zVNJ;o^(`Jhk>SVB$=8ZquFXZBE`u?>+GV{7;MJcMuCrOurJ-NGSfvH4*zk*H&33IY zdsV5qRCM7&s8_gFQIfO0)J>~lO=4gNEfF;-HQPsozKspR%HZNuDZG{Z3)x$ zQs@PtLcL8GJ2gz#zQlXSERKE{wJK?~_iDGiM|~gT47XF2r~DFHmb&?IX0i6@XK{9T zFPU>-^RMBp*LdbuNp&M5Gi@`S(mODti?Lw_Xd>T(W~dfpWtr|0&bx?fD>A@KE_k3!jPBqLaK;utcS3+GS~Y?DW_|9haLg@a=-jmW(Luz3azV zzZMfmdC!S4({Ak!u5yIk+f=eZ&$*s@mwX|^rIDCY!_{WPWQ6)p{zEN*#(SmQ7IKz^ z8Dw2nR@3*Ixc7EVb90-;+AOw6K+dpTeLS}%QGZ>D=BM*Q@UXArhy9uZf`b6r_|h$b zV+(s3MK!wO6arz#G;?A;+`H3(`9>{u%fz%}rRtaHy*-U5WU3vely=*^O6T4wIviQ^;>X%%yg~+=f;gPNGt?UY2H0nSWM>A}2qK7SjNa5@iZP>nzIl2XG*Erx zlHDV5kej-Go>ZQ;EDJSJRciH8=Y%yvVU8^FCJJ;k(sKYOkN|(=q8a9{8wo`Ff$EK`dN=uFb8Y=~(F{wct*}?HlDYoJW;1SMzK?qt1mc2Gf)9{q) zz2=|Q6jhH}sBItzc4kvRHtYiV@Fd6qbIv!0wa&9b_Ge%c4#iV7f7$RmC5u*m>uHJ~ z@_BlzTu83?eS;#aHXE0i_T%l_KUS4&Tx-@BxO+i*q+#X`RKu0ZVToauy=R`kDiMz{ zM&V8(fTK-9`z#g!=y0S;D1h^e{Z-yb(tD}!Fw9*l~8ZFK~s1IOfhNu>< zFl1!}=^=1X=MnDxV< z>Z%t4mn`%e@&a-H+&AF0)dJ5}q4!4VcCSntoTCLk$M$f-JBc&&`e}Y%2?~*)pqUKB z@ybWM24cEkDEuF4tFtbbYbN7>u7=3v~pKNc~tg3#QE z(2|T-kCIJpn9veZ&4G<=!waS~p{{!sWeqd|L?pt^akDAm1T!;{pR}pWaD|2cuy7t9 zM%`BvXp-Mix(N5WvdErEcQEos?G?r~-s7_DS|BmFm*AIQ-QT}$>m-Ekf#c875mkkH>r&UWG7s3G-#TNX416R8P7&H!!Id zTN^rq^QPoxd$Zj1pNYyBdQN%bwoOSC1!i8!JXb?BktE?Wz=U%b-N@toTLhw@t%GLh zmzE*YMyo-%FzD30(#sL+CM}p5btul#+yAz3_nH$Iv)Id`Re#H+sOnfrf=DG$!7 z)u-wZ2l_hJP%HqX^<8ZBz5|G5rQnE4JTM6J+%NJUwDD2XwD~=QlU=+sFLI_|3_O;N|#>maw~d z+08LPi$v@X%t>9mVeAaudiew#{tC&aW$ zbl!nkm;Gygp?af0$fy3)5A^dOd`Xa-cthl!n8j|FI)v}4XCtN^#w+It4iLhoeDA}q zPrKFZaJF9>Qg6m6g8-A!66IvWO3)_!@&5(0j-51+3p;0#dt%grC`QyZf(0HxcMi{v zSyCLmFo_xMWw4;JfXp*zwsrKBWwsF@$sC`Kvv><&BK%n+!_7#SYR+1oaoKKHKZg>i zQp`6hkgCh{H>w>g&R?X}fw*y)i?*4Dg3OtEDE-5PrVRL{RJf=xQiG(|cYgI1wRh=WB{MMvb-4vYvrETPsaQY>-g~*ckVXk~`nEPMYXjw zZqJVSwDde_;WC8WQW=MXSzu@u*BS~jD%Y1*b6b3F&E+u#s{d|lgW^Cc4xZmCx3=rq zh}YZPV(>xBH|qBtDRf7UiHu?*N2+#cH&C%OX<9M6<)FW03y{$`;}KUZVL71EmBj6y z^ZV;fKyMcP3=sM|L~aNkqDp_`^^ps zr80n1N|&+!nNAzLRPy`)LeIyaLjtBH(ByO+Q7~DJi6jGNo)c(ZaC@KKQCaol04gIt z4xX0{J`U_h3c}}CMz;ABmLTgd_{i+W+?G7TlT^U!=H0vuh!suNNK$i8I%`6+z(W$E zymgjB{qaYZGJ^FDR1Ols^)51DDExaTkg*vc-xWMT!s}{+bf0kKzult zY{MI1%0&^D4_Wm1*X9KVJ06qwnTtsdOcNPcjv!qX`e%bkYGOkROlT7Bq(iRhFk@o{ z(~*5QB`P(^P0uMHsy$PJEBTsv0%*Pavrf^~xT}%tuWY~~q29!fHOI*c#xAdLvvrb_ zciDEQnD5EaaF*Jo>7|q18YhVY)rLM*A zR;su)A-gCYNsPZ0+JWf%=P&%WRGhe(I*7R`YmtBUn=m&pXK5=%qhSbBU5#LG*I1|+ zhM37Jz>G3mJB~L=XPrksh~sMIKBrSwuefljS{}=OOG19o#+M-7R6x-*((x9}Floo_ zgSUGMna8Zp6!+r3MKsJy3HR;}mv7w~z|UZ%$D(;6TSVE+@@rJ8g-Yqa;&F1V_>N^eF|WeNgL|i z7c;>=BCoDWJMmk}>5>l_@>AoE8r-veuqLd+Bby0}V`CoW@iP-^>PlZ6KOd{}U+@vu(Oys57n_ggfj0H- zZXQu==Ho{Yvnjy6{u!|9u)NAd?9aG6xSz4g*K3PbhEHOMHF6Mo}+UzPM}}r67O=r zEhAWTyoWiNfDSaJA|xApq)f5R;A`c`$bf^i?k=u93A^>}A+dKa)j&vO^c~C8u};XI zaeQ8x$?PGHL{xkYTR#dGX2RJg75pig9Ks~N z8tyCil0c~iwGnQ&BB%Ef(Em`B0s=}vi4?N{b^*t!pwNc3xvJVjg)0u5&XyV(HOxJi zLRd=M<2g*2cul2pU2CT)x>Z~C7h7ASO`WapTuR&+`syiV7-x1gW3n2nc$8;T09S0H zaHT9;DzXdFiRHOTm8Bbv076h!LaxN}Qf7j%ELGYH&30O^o@LoeIRfmJsk%`?VF71b z3(xChv+fj-KAAiF#tedn^vR0q)&hna4#2}l9EjL{4y}80`;a-{!|{XCL-nqrPt(l| z+*6!LNwc{w-V<1b^P4Q@wKFx!ygKBb$9Lhu&BoYAv_JP#j0W%V`NmW9K@Kr-iRy`5_`< z$FB|E8<$Z*U>nUf$;ew{GMaS|$NgbZ#q zPO_UeHJJBDvhru_)Ttn&VAdqdwQPsMHH*s;VU3`NOY&QMw=qh)tdS zY3F)>M$6)%1Rb}01sJOIAEj!wRN$kS#80cM`br`_sM<5YEyNTEO7DmQau@uzMx2bD zr;cjU-()sP&aoP{yW@yCC(OlZS9h&1OHS5!L+e>&3z^q{AIs{TO$GW+wpY%dd0`xW zlO;Pk-K~H>p>fO2*zDEz6gk2`GPj3S zQ^^wN_~)%RwvDi)@Iy^*OTd;anuA6-oJ)|`d6>ol=V<3l(;V5XB0985us5iiHhX># ztIumAz9=_$9tKnJ>|Hi782@+(x2jLj5$>Lpx%IDluKI%}2pX)8WoZNC+?W*Mu3k!9Q_V+$oQF`j>{U zqPpOkXmu!6_pnOMP**+FQHv{Dh(N{Ph6d*RdH^K_0N5um5+l>c{cU{qLN3uc#coKQ zzb{fU#ih_OZ(=WS-vkollS53m(POeL#ujsCUeDqv7_y(az|QoOu5~zRJmN`sUR{eJ zuftKwM-lVE zYKw@|o&>o*6{36&7cEz*nUI#Jics-H?|!dq>iGU07{i*1{X07KtJBk+7n9X*BVY+r zo>a_uJTI#7dpxDUQ8DrMP%&JiAo}PaeT4-5vv{l;?bc7?O->RCupIYEF!Wd@P5N0% zGVk9{s8JZ(;0)$H>;WDsy!<@7cS_B4SyEcLSI<^nu+w0^0T7aLNx;8;&Gk?%J5&C> z(U0zigI@+dYupGm`3*a_-V%MvkUb)3}XLR9Xb19mTE%mw{KyBior#oPp@B8s8G*r^~{3jz>5RYgWVbU zr^?)tEtaGpzw}5?IBJDgcrI7XR1{utyEIYwO3)n`cjbX(z(|^InttE=HkrK^|3{~iRSi;2U2yw|+eVB?G`J$h(A>##2!`!2Pp({Wxf?u!t zXWo5US8+Zw9(lZ8P5byU(iQJP&S2&jchT<8^Rg%1S1oxVsWreCY_`merh$PlUgHvd zn2cl@(V(;atU_M8w?3bl_mos!&JAQXhwgYQ%^^6)?zOPngfNqPV=6+ml*~$jv6#F- z=%e|U@EZFI&W`&9+w)5N3mYvYFYpNDuZ9T`9#-TJQ{M$Nv5_-w8JSuF4|^JDseTDd zU8_1aEB-dNq8W6fv9eBSW!zE1Mn`jV)8BH9xfsNOgtQVBhz8$!`cG4qSw7$<`f=0yq~HcO#mSdSo*q zvM7W4gM0Tnx6F?1Xg;u5-_gb1FS0Nq_Y)|Oxa%;55LH1q6V-6Af78_4eQ(Aq7KX(~ za+24UX^!d*_WYXw;y~I&kO1Pw7i;8yH#IjqHa2c*yx(^18t~hIPG6o!k4FuZdA^+& zy{HVS+?^I4*omZnS%}(Nn(Rg`rQI`0201TUe$n*xY|Zc@#4uh2Zy$>q^ES26P9h5Z zIRQ?&n;jq@)M@}ga%DAWl+q+Ivk$*Epdob9(K35>n`3fPJUKcke!){}BRMOWhp0T} zoC3bIM+Bb*ds!vkW6poQfzL#njmfMf3{T<-t-pxZvN>!vhdcr_G%7NT_-1EiW?s0U z(>ZF@={9aGcfcz;aI~p$z!Mxx4?bC}!EjnxgTW{A!NFvCHn4JgFr_y-_3`Q5O&3-L z1gPc-4EOYe=b5;8xIQbb6e(#>x3T!~&>mAPoq+1hi6H=tu1C2J9b@#EwA}2KSjs>V z7nplsH3`Ud3%1h7V0993H~v7CJ_ZZn#8qnR7B?hf7G&4eH8;m)XBT0L8wix0(0-F$ zyw3RaZ`63T4=IG92Kpj|wcG5=PIg;F(JTxTpy}^)zTb`jVXNgl9S$q>{zJ=Z?!)^q zjDoqw<#?TCKj*n~j<%^5N7gvcJr6vv|2CB{$n7Snz>U3Hg&7#hxZj-Ae3w^P>hbwC z=#r~Cn1FAy%$U*Nza8pIw~0l#dw=kP=k=DWdL=AlneDnm9_51a)_-9NSkX6*V;T%c z3KDkp@<-ob3eY{$THVZOR^X;n6o`_I)Ha_^`ehWK2Shmqx+m&^dV!jk+2pex3dL-) z-w3ieMQWw)6gQoiK8JM>a{-=fAlCmD`kR`&?VuCwr0bh|X{|4p0Z-Bxex(2mRLqFO z+L0U8!3`l=0bxaP#x6+dND3U+%uny!0!_bXp@k$_L%z*|%k7m@7nv}fU@EUJ=E8Mp zb}_&DYp1msH?TZSvCW}$lSOYnnRXEytmBHAdLF?5bziJ(FM3~@tqQUQ`^z0QR(upP zxFuT5Y!1ggA#f48T3?=a>q#~xcX4QNcj}!lWVw4?P-dLMF~Vl|z4^rzm6~i_rXSPR zGwP`)Q@l&I!ns$n|I&B%v{EFs-pby_MxEp(6 z5*P^ie!qpYNr4_Y3YHAP%_hT|Ij>)x9Kj!8U3+z{x2Knsjv8fFfud z>Zli23d2?M)JT$L07ihG3}woZ+a4oGIRToYpd*_|BNqTOK+L~Gn^Qd%32-?a%?^jc zDCUthFA3r%mXKm#PbEM<*oRd7 zRsbygzC~OI*SjbWGGOHG52F7Q)mK*UCA$80#4keG4+BmfY4H4=sbDBRb$rd>AtQmQ z1otn(=5(c}r&e5@j8cOMgWz8kdhTBwW~9Nm&e*QWty|;a<;AdFX_Jv^n8`|T^^NQB zQZuUbxfIBhCsmW5N)M9Fo_Q`9WMQ^|^Wel$tyn>{ekX<|~O#Q$f9rt zV8t>t?Q3`3#NV@8{Lvjnge5bnXz?gm{*fy!8wgO=1da#R_)bSN5IrHrAh*Wkgm&x1 zok~^K#<7rZf*k|WGv!W=aT~^%Bb2E>@R^j`w8FWCA>S4HhRU_JF>{Y&pA1T%uo<6j zp|Wb_;4|;~lSOclb;uy*ycI{kq9h4XPhVy`&hL2K&&8~Emey43#vwAIYK&faz#}Yw zz5lBCmq+y|Shln6r;@L9HNz&lvzY7j~z-K|5dIwY-Dy!|XJk-Ls) zKqkL9mR-Dg5$T%2RNa_sw(DB zV6$yvutpolnreVbJQ?06N6=&hPnMrY?BA~ox_@n#bO7o_%IuA6ETkI`W_dSdT^lv1 zN7U+TmQ&f;{RYFRaYB_nkX^97%uu7Y_;af!%0~?bywU_dZ(l|t+H|S|%AfG=Yz{Ac za!ocpvP$AQvXG=9{XQ(M6A_Jx!R-KPduE((WRtY=G%Y@}g3mgfHbQJBHeYcEvd$)Q zdpiN*S7Q}o+T|Bl|J${MqECpZE~@r2N{(@oFYVUR-7wvnr;4Y_r=HYPhHG1)Ehk?M zalK=81BR+)-a}IEt3y{d10e_E34F8NSwr`@eY<(;@YEFB{?1{bx$j?cO`2;lQVl8t zwcL^`oWQsfrtPEzc{>9yOQDn!x3F}I##F21CwOH{7L}|fxiuXsQSgrw<^Q-WoHzY{ zQK)qJ;_Ou4Opup5^gzv6>-q?9(lqLq(^WAAnw{IOu6moI^eYNa@}zohDhyb}`78pP zbR!l}QYf3Kw?c5Z1L(RNvIdb=lCsO8sT5oENkU~44QkK?Gh~)nxsx#C%IFSYCj1k_jgn<58F>{|l2pRls?6TIH^oqRPg8susn}*cDKho$ViG zs=#!j{6Wa(J>>b77rf&ri$-P?Z3wOd6M~-yleVD$dE@5|t>`VmwEZA8!a#jAH2o!y za)MVe)E8BhGL9Y#YmerKjKC|M&+SX ztX*UQCoSq;5C}6L=SYv+kMFUfwqAQO_Fo7xbmQ?D@IN8zg~KYzZ9&O-&i;ZxrNkGmu10^1nY0&gi%3?>flq(f z=?t$?z)9!U3NiX}uEOXp$#j-KVZ>;$!FG1hsQMC=`$o9)lK@fDr8`+9RMT;j zG>~5Dh@>MQyKbEIH}5Rn75i!eGhKUB+0V9+acJBby@{eZW46r!#PrqBVhcyLVFJNK zoLSwsBr@2hn~3NlFHW#ZWUJPN57^4@Y}oK&t^VolAzEw9xgcDX3`n$Y#cPdu+^p_h zV0cNllbHRAdWY_DtSy-RgXWI>`}Oc8n&=r`?XOcX9+@@h8^0k6J6o+J17I=Ceui#u&t< z;xU`28bg6HDBi~_;l(*o{F`$IzJ*l4hT$5%45n&m2twztecf?1jXCPz?|1U z9trqYEr;6LjvXDy{+yu5R*kCEiiGO${!Pv5q7HAl4s6-~tyd+1CNzvrBqe7Xs0KC2 z&j&+?NL8hyQyR!tfk~nzKds%R5^jJO!h5Ebhyk@}aUNxzLuq3%zB235gBwCrt8YaM z;zuB;IVH#({r|tR*TFV3CK;Brm0zc2yD2wN0XQ%%&&h!_B&fA0R8bRS$MosbWI)J^ zL1fwFySM#nH8ndM{j*w?kabB>^RFZ^3gw)sC#-lSyEL;-)Q% z#bafn2i{!%SddfZ4t_uslGc(m#0PU%wcs&1n2omrPP+;a4O}}Axm%>&bG1vilscDC zmx7P>-e{_oLSB}Ud?q1-nR@i72)x3n5xS(1l-}zKypnfpBdx&<#*@nw49PMT5e^0_ zf24{RIOYZms{mp|I$f`ZrJP zTtH@f<=+pE?ts?hsL&_L%#|DF7?auolTRoV^pQ*S%OF6#CV8dz`#BVsPDtA+vbf^C zcb5;k#B>B0iimqkeR;u7=Q3+VKOZKM127r)m%%B;6$I5#(LIn42iyQ=r-k3T6QMf| zYr@|6Qg~Y=@=sFx5;y|VF!%P!aU_l5EfuF`KXDHrk96`Z&}y_0;+5Sk?yU05O$;=~ zo1E;c{@rKe1>VW~n(bC<^*!N@PUY}^ZKEWqAAM^ z6lC>zYnH&Rq->vM-w$5cI^yqV;RvPXVdpDSbE|3E>L=F@$}VmH+l=Zd*7x`JOWp?` zKdI&(Sw-WjQd`^ir2?&-y*Q0$-Sqd7uCF^Fr!Nb-e87?NtvDGcnl0E6c)%*e?vf5ubtmWoEu&CI1L z9`D9i+7E|$l}WUKq=F61nJ+gK^a=1S8fJzuCLC4^1B`C%VD)AEdXX8Q(i(I_0K7OM z+PQPhx@f60QL(fg5PrwNCz*jG&P=ocObRQ}^{5=WUx60@jcu&AWn=z5__k>&{wo2HT^sW)3+$Fm_#WtH*rgd;D9QM-Z z!xg^yFKON&WI{5%Uxh+hY4f=@f4r_7YHtvvPEw`EePoO>4u5H%mC{$Sh65bdkpG;; zy-H=Rpj;X>Ma5`Vabv99s3D)_WRxPtQQdHK7RimVjsEFl`}SoOXVT)@cWLlKkac5W zk}qQmJom+AWn=&>Ckr=J7_F5_IFm`Ymyk3@GXuD;IUI4bSOVG{>M&ysV>mJQNNntp zAD%1Li&UvnTrS$s123)fwYyoBD*9GKiggKI^DnePAVCkO;d^y z91|7Rwia++MufZHNFeZd$q|9e#yPyKJltLK6yH?e0uOdW#lOJxPux##Fd=1|0y)?v zO;}CL^gy{$RF3!v;=z1rMK3dRwM@3!q%80#+sd|twDckiw#nK!i0 zq($ID zIx8+SB~4#c^rQ9`_txnksWg0VyWTRf9=l^Of6m<>Cy+CSiPVXo;T$tO72#sM-b)Z% z$~}eM@R#>dSGxv2)W;`;3hplElOsPI2Rx&DL`2>6jvJnp&l`>63W;udGdMEa(!I20 z>%{GoX;NiIKrvZa`Pe1tfdkUe%hj!C{ply*8>o<-IBhWX#H+8Crs>6$M7j~C0I}BLdSsv?ZLqrQa>tnS2LK3E9 zpJ1+dzx0?aVviKeALQV57fg5X9QpZFo|Y&fmGWo>D%A1C#KpT&*rOhIbG){5y|yI5 z-lWVHkM{h`-lqapea_d;Oh`!&KXzmI=9dt1hTrzZ{6&B1V8WCrj@0!DDc7sMk!-kuk!oEyG|ZCa>+cPqckeFn4`81L`ux(P z)j?U=Rb7&`Dx~-&V4J9**yfK$qfJ||wb5tg#%}e=FIgPW_rEW{qa~E9VAhorv#=y{ zHwt|X%hqMjXcH9|P*btxV+{_k5HP?GPnm3d6x=wl7u#^f$ADM+6Hf| zm8=TMD#t$-`xPiJQa_5 z8^z2`b$BCu;>wCZ-9a_D%cJT#pG9O~O{_4Zj|IoKeBN*op5B#If;1Llx=g!&Uty>doQsL#d|D^I*S1Vz8^Qqduqi%>Jv z@{L8kg^O%~%-V`%S{fRMfRThi2_baU4o&~+hF~;ejUeSNREw6KV#YB~F+MGQmdgRdjc6MM?rOQj$kv%<&L1CGxiLP8xEm6gS=L^${10>*_V#Lj^}4?5V8szkZ{#M- z*?Y4Pi2<}(HIH15rJO^ zurv(}mdDJL-!+`*AB~d%oq(r-Wk_(FgKFR4a@lhg=7Fc;rw0$d7QdEWMhAX3L913t zPm5_c?m3cc>Dm;T(p#K=B@ZO*% zSp&U9aU$jurik$GFD~)roU%1g$z#E>SK=7Ck2jUkIEmGUvLyWNwcpz z&~@urKaF=8_HStq2qGC!U& z{NJ91Su}NsB1nguriyDyxptG`I2$UXki6zSr63DT8yNzMVXM!M6?A=lCe99OzHnCR zL}dljFUn~o8w?v&a~?{GXC^vZU91_$kseS9hOj+q1hmBK^y z2z!Va`!s4t6;TPXhN&a4;|gKpiN(0;6Sa_Ot9@D1uv@;vaLNvZ#($a?FIO+EA|()K zhkc&OPC^3<6J+> zbp6Y&)X&&#a#yK>b0Wb1*RnH_)R;l2m=ChucG?5|cp?0j1|p zzZ7hIL2<{WNaWStAxSo~u2L_})?^_4Mk5C|j#D*GpRT|ad`8)f)dg-^zA5t4@k{MrGoS~8Wu(z^-(Gd0z$*827LevmxA&VOVoI6dn z_{_{o=N{#V9~(Br_s1I=8u~r@RbT}i6>A*=`!nupMgm^ISaNx2uuoz_8s)0gbE4Po z*8f|8^G8k^<^9Ayd|o;uB+41^TfdvVcf!-FhV|pOs8Gm)HeA4IF!?SDSqZ!(%qGh~ zZzjlmA?}(nPgc0}R0$Bh6iFuohyg;gP+>APq1lXx8ruM;-!wXoXPkC#>pgeODHZT$ zuYI)B=yT^T&bABF28?lnBVm}>(}hNJqCN2RX-s<67ArXhW`Cf|hHu|_!wDq*rC>k5~ExLFy08!@2y|Tz`#|p4Ud)Wsd$9)hO%3HdB-t|)H z5S==hZ5#HR)B7h1ls^`Mgo6QxfRatS@ua+i&EWdG31_z|$&$dMvKcie95k|)hLT*n zrmo$yKcRx5wS5d&l^H73HR=XFYxb#A4RLj&*X^9DuE<8P6qD)>;uE_uY**I>AAfTY zE9~v+d&^7~6LVzNRX?v@Cnd5h#%_nkZcyyCFi~7h3g(l{I8jus=z?NJ{cqU+L*4U# z>~HleGLPzx6_ro&U8Q&)!BYIGdJ+khN?hna{NGS zLPhPLn~tQ+%5Rz5Qc&o0mn4-S*L`pkt(|jdaL&kG3Z(4ToZYG=~Q%W9o@7Zd4K&KP20OhBe!KT`JX~*aNzt>XYXMx`i@9uJ2Z? zQEhP1No`n(M>cTkywHUfxV&^S*=69|@KVmw;ln*bX;>JgSg=rFFlHyc0Yiu4JVx*# z$zU)pZKiAjL*sFU24G&HG8*FHYlJ;u*brRhQdLrRfr7Py5`j{+_lnM%VHI;%?C1Id zOfLilXuo={uxmp*w_RRBuKWL!lN}rJlap`Zs$@XVx(S~6eiEt9NHPsZWpwMrXMPvq zV!K^2J{5bva%7n#>wnyI-BB5XVWg@8lFLy1iBA5J9)#m3K9tQ;nKbvrrpQ}|>dCrs zB`v)vm11#>j`RoF_aXDrVd<*|{e#%Kk`}0n|&6 zdw72Kc($7KI4LnT^nr_@Z;)XJv|mTy$M_5%FO?`$m2-(8DW}%zENU~C>qkw-ztG_6Jfrb3Naq?wDa z7X@aH9bb7TRM~ip(|qWCOq%QUUs%rnOs_-5%n1-imqtv@yL2Wi?)M|%m*#A|&Mmqx zIFWCuusb^A4^>F_2^@-V&eNaB5AO5$@2;Nk0zG=hEKL}ao4L|U3()xWf^m*F59g@f z(3qw`aEn*ckz`|1@LG;>j)+T}S45%cXifuhsWg>IlADibWMJ%>jv|oE7?&mBH zlhiAXo41nq{}W`1+@t@l46ZV+$BPt7(VWeH%*zF046{0L)(n~c!KZbS@-->wFJA~8 z=#EeHVfRo)s8Jc2AC$p1P>*(76`NSOiFK_f8F8XT3->*KpcCqtzL-HJPD9u-?I0|r z4+dRl`Xzi8eIsrgN>SUzpH`XKRM9fpS`jD{W2!b7E$ksU&Q*?H(Y|t4JtMHafGn`obQ)(+k#A;ccftT z(R}?$oe$%f{@AfysocIp&G~9&TE;)ILkqJhpccp!AqJaF5v9KS^9`c;@mB}WF*!M^ z8*OMHj-n!iA*05U)$4VqozEg4KHT5$;8A&wex3e_iUovCKHV!De5F#HUr-CSeP?O8 z%9z9n+3Ptw=W!X#T9`>4d3kgj0yTV&gS5>gRaCv zkYs(v<@y&b=NwUR26NduZe18*Fvk&{3Z_i~$+lQ#HhQdY%?;Na4B^hO(>^T3I{Fqi zQ0Ek|2`-&?3#-$(_N|qyEz9vSq#-viu>J>oc=-)Q0#yfS~U@JuFx-;EN1V$Mb|L1&U(=2xd}0EEh1UO zZH9dwOyw?SBDEgchRcd%H`}+-1KDTnI-S6;5!n=u<$U68BIMTuj_-Fi08Dqw4RU z7&?ScPkgV>)p+nVOIObA2Jfs@&%e?IME3L#*cfIu37L*^2#ZQDd*IWPFJ{Vu!but2 z#C^{7Uqu9jK&42GBuj7`j)h`1qTl&h4GmdjCLZk+3Tx<9Q8)s!kPDqEgCTxq(cGt+ zIB3Tx4KBcO0z;>}U^t4*XCNtzuAvI5^(Y>eFe*dyP_$A2=XXx1P$KAbsD1@^d=`r_ z0u8ZK6iM~^DcGN-zy^qqM~ z|IhU!$=?9@JeQfY8oUdmOxQof-RCqP1O&OG&n2!o=5x{ReGV0OS4{uCJO1+RkALN` z-Q)i9@cf_}i%03~E*eJC#isv@-C>hjy}NX4%7a=`!s}GDr%y_B9$$(qL^-g}mpqS* z#~;+xS~guBkNfpjO&q)U_Ld4nFg~}$?Y}?Hh*A`SCq2o~~xsdNB*vz)VuP zHl*RH6%Do6%G$8^R5WaU+Mo?FQpzD8+oU^nNDqQn?40z!?l%b*1gj{&kIzf6#0KvW zYv_AhTK3X4;tDNgb@AUkmie;skv;W!thMwtG9}hH{Y`XrW#u6IR zKf672G^O|wDxDK=C^4tb9B~v^XVvD;PvkCU1aHdHziBHr1v3^Wa&zZvt(%OI`-gCs z0R$0CN<$%DHjlU%Y9qZK3tTG9U#@Jq59;>wvjl--4*0DkF-UuXWX!~*({ z&3T9iPkW?1ro~Yc_qBx-tcO78JCdkaZ@U;lRsM#aHSYV(9GYBic<6RP&g;}qb;IXl z?aM70R}bgpnC&RuZ<%dlcqirdEr8WDc+k|FL@_iH^7} zmEgL@C{tvlDQeThB>=d&#tR!y#ghQO9y_>eJ*4<>=CI%!{cMbsxQMrbx?P? z@I%p8L@C;hf$m<_J;P=*eKxi@vzh|K6-hnsVH~TN`+jnXIx9#7+R)^x< zJ7=NxLYfpOZ}wpw`b@|Gx_inF<OLf>s(Y;QH-en)@YTTzF%9o}3NsuqsBQ4Pp<``|$YDka&FK?mfr~3S!~VI7kJ*oT^6MKX*upRiqPj~is%SBE*`70UrgM3!Uq-_w!0Ri7ZRk4uM%hu zDh95Dm}|wX%m54j5bT^yT>EjVAE(HIeJx81GX>)hlg=#ILj2&`KrkBv8-zJ9W$#;E zT*>?ijkxv6FLdwo-RCI3pS0|SU_i^me3v^|AxaYYU!*RvJfK~s5bh#Qu}x9ve}A@y^O|@eoKFUg>}GlRH^C*aj%%Uy zW|Mj0>Mi(>-&J+Jw5z@AhKmC}z6lUARB7hO1wN$Y1(D`7RrX@kmGa+y%RGVFaGw|= zO1K%HqoIm(`cRoJkaLmx>~1MVX=$~gvJaOarIpV2hyirNcc!Hd48%n=hdlHd9^4^8 z%c9bfjn}%D5x5O#2ere^;lwG-*)dwwJ~)ovN0i27E6i~TR#Lz)3>Y9{cO`BX_X+B! zAu~eLkzlC=br&qZ6ESkPLfScTIr7~!qj3=Wl3^Knkn`3Em}7#vbNiN~=_dvQ4rd8U zN(5OMzYN8wrcc+O17d+~C8}bEG9>Wi>F&&|$Vbm%q*C-(~-YJ$>r0MhWqR zSZ4gp!)~Xhvj^LgxjF?-`@gi*!E@y05tcexj$@{x(>(fra5Xh-qsk@@b>6+EMl7zR zZFh2Ml`rr%+e*upEgiL;+@PMk4BxL~-+fPP!oFTxS?kMFl=DJ%V&1HSD2v3UW5wM5 zQ`g5^^9T6pxA(hQaC>E1rrNW7L|qXdlO2O(7duMy@kpc(r6&1{Csh*^)@d+>s|Rwtw22or z6agg?%zbx&S{-$Iw@lPS?%hr+Zhp7g>?l=Rqs891t*ZX>&0n)2x7TS+3NS;UyCH+f zEJKXi>CK%Acdvko6^UtaOP6&MrT?cFf10)Aepl8x5qI8|vZ3{v!U;cXiY7T65-228 zbONg%ugF=i^0^v#_=jg~5ZDD*c10*$ zxR2ez&LC-sSY`sc_d4bSLcBtP^{!<0b52}!C9Qg4FV<_OnA&;|>@(>)-huU6DJHeE zj#ga>A_WE`^87LTN~Z2N%j3%IKeEXrNtaD2y+-y}t$Rk=Pv2A-`jNn{ZkMRp>bRyR zO&n)7t!F7H|CWj@pgujrOZQB4y_d7-vzk=n_3gw}c2=6BBoT=eK5b7Wh5xPm1IV7KF?)vfNbVG0&zg~IT%cG< z0QOK{yoed7jJ|xKf4cV1WN+N62l!6+y!d)t*loe#B(h=AR*Dg31TXBbFACQUhz|@O zyC}{Yy{?wL;dq#3T0wa@tu_ki5E13(C{3=AVw?#125v^@;9Z?WN1L30M284MiZ>Ms z%cAxpoAjK^sOWveqlGj>&IERp*evg8477Fd=j ziwFPFM$N-EFunARfn_#xmRpT>ds(-ndzm}Mec9QvmwyzF7?Y{tqc-NWE}zKrHI+hr z?U^zaML(FXm2PA@8`rJ3jnC~1a zVY%KmqIe4^ViDz*nv9)%HGo=zz8Tp!D#q6L+$_#*lK1d88f!DT;6!hZQa-PXzlMT;!;o1#~(ir)0glk$)B z=k8RgQ0hjKYK`C?80z@5@c(pMjDOCg>}s2=#Ik3v;3T#Lz&QI%y+Y{Ntp`w3L+r+IONB9 z+S@G5J@n;LwQw$S=okELf_kV8or@-~&&Axv|I#-X<@8jn%|YD5WGThK*e60@i${+K zJHOnFRC1t+n!T>UO*J&vy%j99fjdxuA+45%>_RRIj$KG!c|Mz#w(zpKEN=DyH~%C< zDJ%B6(rTK(rME0IqigfE3^Qvqv{UnEAL`?}ZzOo3GZiiTC6_Vw762w@h~YZCL_(H3 z+pq~2P4as2Jo0M(z=o%%wX{Ix9wupy>zZ_wJ3tBfFSWSID)nikZCqk5@|?vV%C(#| zEqSj-_|JDu%2!){kX(~0ZnI=JWUtO&3S9L?u^_PO+$;6x0alCCBT;3==0-d8cwWFp3ltK~ApL*v)!0{d`$l9(BnNy6E-sAgLwJpwh zjM;qKoGvo$+>>U?JCZkvj5XaTvQgwr+~3<;Jl$#MW_h^cPLm7(2_cmm(QtO{IKHFp zcdm1WuC;=&_NqV_W0F;(a}Fb#QBFK5T8!vG=CU$X>M#*}yw}ccfA*}K+bzAEqV+F> zAv;~ziOht#G`le*!}aav2;>e8poD3*i+_tR;wg7|ck7)_jqADt7yvC0EKo2^jrnfD zO%n|K@r8MBE_gLq91EZhhg5CjE2`z1K=AYArje0N{UcR!W~nq<21c@3a!tSCUj%Xh z4wp&=A9~E~*l#lu2>BwWp1XE^qaJfVI>RFKQTJo}`;v}wj&4ti?lB{r)b(sPSP2$( zf3XYCu~#+xTtjph7Uq>OH6-k4AygDhN48p2zLJq#KcQc$fCf)x7>8+08Aee|IE|TxiNMy8XZ3;VS8oH}$!oppu+9bYX=51-F zJ93XKu{q>~CE zjUyC@-YRhQPZ5wiR%PEQ&39oNi+r|Xpq)T<4Wag7lfW)m_RPxh7kQ1%lLMK2Fd&JR zq5^ZI*PX1)4aqQxvgLxF^xht|$52B@Y&_M26_1HD662Xi#*mmq`SaOXu#Xg9@TIgM z;&o_}%fLAK^#;(%&h&svJCU`L=e47J)A*=a@8ReIFYAm?f7F*dDMwtGxveLPxfcbN zlm(|Ox#*E=pBl%qTZQ9RX~RsU5eoU9&n@F-jX{!v4|V7Wj0Zbd(C7P33@B+0D%Xp> zz-qNlS}E?-H0##Fi!@GOquJTr%F}0;#*iN%edKf_hB>Mohoiq?i`#~eG)n; z2~Oqy-@`z?5g8z@lN=!p3|QV~;G+>CbEdt1!V$l5C8~|`99x92Lj?T9Cpx=2VF@aN z>8k>YJ>TdpO8q{Y_#bWTzl<%zSEo?&=SGumJND zMo8R!0=vNcfmN|jr^~iBbsLb5EObq>4rEHmZ5yHhDu{Jsk60P}GRTV+U#QO-?hRKJ zd|xR-3)rSva}Uo|b_WqA)iI%)lx9IQWf_hqBlG0C;$X$51Kxy~gpkBJHl{&HSEjeB z&-t30$5W0K%ThAi@1L8=h6gdHNwP|r3)YC4nX%x<8MvU-&J`({#j;~5OCp1!l>1=z?GzVWOhurGq1#OIbxU9^Ks zEXHat+7$qSN`)X>BmxveUj;)H!Ji;n5G0O2a$+HX#V!;}Ti~%#W8;FOYOmD{*4sJ{ z+P3G;{WR~?6VwSHc&d>diYc{NB3CHe_-Do)!JUAr+qbFumrq}AeHXr#wO05OnbUq_ z^Q0g=5-n4Q5(7cs5y%LkCfB8AxE6A;0R13^f-2K86VZ)glpA#I@S>v1Os-SRrW%?J z*y8!2b>F&Pq|Mo_^*jF@0=BidUQ9#qW#tjb-uSO0$iJmMnH|LDb{(TEE?M zBB8`?jw;wTw#U&vqb)=%QX}VtGmcoIYPS8%_qeq>KdNcht~Vz>W%Vr&{?FTL#Kt3x z)NrOqEe>h(LJ}57cD-O{&Bcoa=WL$BbE$Xlnshl+h=Xa;3wy*^16M~*-H4CPU`dK5+F$v7$iFGEf0T?ivh5hz5kF9RHxp8gE)qJjyNKVe3`#+6{`aRFr z^^>=_8i68ow6?dPSZ%Nd$D;p14Ie>0@S?-aqL{E;<12F_RsOr?%-L13(WK=Mj zr-)Z2T!$i(QHQnuA@~w(BiZTE!-U1C8a;448K3M-q`~;_K>Zk90<^ z##R~%q<-Jk)tN;uY@Cy+=~OL)r;`V|YI?dEE_fn5N%LothDCW*pq)4v4yzOFmEJEZ zO9L61KD8xmpQ2xwguwruY5swtVch!r^az?>Id|n9#W-bLacAXRwq}OXFN<)Ok^x+ZU{iWe&%1+htVQ>pnR^EVeVumLQ}ziI zKrnsKdvDBM??Jk10$1;au<#Bun*30XL+-PfTw6q;=7ygZ+xh6eNpD}A^eSCZi{ z-|J`4qBL3{-0`rb;{MXQT#df2qE4*uj^C>a^Gy#7sjyqXv{Wt;_0Ck*5lZiUGJ8+QNs7Ni<+97h0favTe?D0wBMcL6d$pDu;cv9NxCq;OlB;hr+!V*bW z^us(MG;5X+;@)Jpmf!SqALts2q=1rDKY!M?lP)g7_c@7a0}8<%9ldTU?{KgLL4U-X z*~UC~z5ADjK>(*L*)W_}nYQpAH$97-hMTxzwUKSc|3N_*4hQE=`Pw5c<2LysHkW%Z zZDD2Jv96^vU|??17k7O=eJ<8D?_TVJA#@ZRN07P#7=mL~3JgOx9E0IGiV&s3tgMI6 z^hrPx5GbLpIiuMZh5_JWDI_u*>I(1uc|o8$U_CehyCOm4OO+DRue!q~OWG;94GmB= z*D@l_%tFT|MFigZw+$`0B5`~g@*9Z;u^*t9fZLdYk=8utK@_}md@W@R_RA;nUaU~h(@kjfrFcot7 znhqt?OT|suA1HiY&dxy1^vdXKqGx0)xNdkb*a^)N{3A~VSGI4=QW-pUG>}IG;}z9& z=N@DpIWE2(|C$4&<%HRAKLTZxUdTh>f;Sq9BsK*fkCaG!2gQ<=3s#{Wkzxsm|0*L`@+tP8 zam{sB+?RGrzWV#d%hR^BVKy2TpdrX+NltToZm3x5@vrJ9fNU@(l6DQBGYRd5 z%uuhKYyfg18nCdf)O>S&a(<=tXl{G11S($4Slko}4H`m9hYgUHh8PB+rce#PVo3fB z8i$<1Jo#0j z8x~pBX|Q+I=`Bn4SclWLr4C)-CZprRP-=cP=cG#C;zdosJ(A_&0KQEsLJqnsUUCKR ziAkJ_;5PyHoZYuX*?lQ|c{m7FcDew9G5cqVa!NL3xa<2WWwKKDiDpKwYfS81tIP#RybsF-Ls1Jx`)X&&y5ml zZ!XJRX3zOYyPD1__UtOAB4}7DT<&?!NI@jfT?!hW&e%+kM7+o3Tqr9Y#IFNK28QB{ z7n^W-X1mKid^oZ;tO5C|&-;zj8~(;Ue^Z5Q4?AD~9QRklyO8%jAXwfI{wUgr!M+;V zdHtk>fAzS*7Pe)%1m3owE_{}CBph|L+k2L|rGV*CWt5ZW@=jP$#HxD4a^F&N!3=A*3%7-CUEw7ix5Tb-()bd)kks9jdN;pz8 z)oj#GQCEVz?|ahHh;hVvWTOT#)n9Zwi_%s+UF2;YHz1b2qUpu2ph5mG=mW%X1j9B8 zdORj|@6u++p3JbUAocBynHPLM-t~~1llD{fw#YvSH2_m~sDrX@pF(>a%}e*Ddgb|C z$lRFptEXOrKd&WhOHK^hZT}sL<;gE!h#Pz8f9fjM#MXo)tbzQW0Zc~xiAXZdL|aCo zJkF%JKt5$0m)hXH&8zk0kr67AGa{1tXC40EfAd?8w0QCnd4?Nf(~jG&nG@YUhlr@}?i$bYh`35>L8kHloIOI(zl_F*2H$ z_Y^4eG;l4d2l%w2=LJqJnVRTXJTcHef`*_|+Usw0nMxM=?X?D&(2;g@30g2#PjSuYI5zeY_4cA94Fe z$ix!DeT^dP_9%bFZgV*hwOvC7s?YCE>nWRa&FsICveC-OebG2Uo#EZ$#18v#+R({(Pl#FvW8)+)pfheH0p+I8R5vR>krO*wY-)bGNT`eRY9P_=aBespVMQ zH;QSU#gNlSHM;yrE|>Uj=Eb|A{4Q< z%r(*|+X^tz9|$9vJ(x|JcZqzu2K9oB7}2C#mI|+OCm>57Suw-1t>)HiR&T^b;i3Ef;*yO}@c|cQ5SecTwkMz{R z17@2Ozj(YOt;1%zVUV_w>`Yl#$Gw#F**tp5i}nmii%)B@*{Hv!?M>|vyL|!_Zm_Y) zK+V4xxwfta&@LQ&lx1YEoCPmn;vF5~n0)UY1o9ZWS*&0Do5s+e&d%y_+!FukYETkq ziIz>c5VWSlGwqdW!j$7au{+C_zGmH&Zx6Nx)7z(~K=>uqBwcaOF=ssIIV6FnG4!VC ztaD72EXsPT-*Ro6!@xsb90I@B--&ka^{WBhnW3VATCY;~Z)d(>S9qffHGJ)qaSLKb zuy`?l9Q>^*bz(Ngn8>uqGhg@l_z@(vFtYIeWW;LXMKKq1+gNrPV7v-B$%tHrE$s){ z#xaYNgv9YEctTxGlDS!lS>Ubu#s6(G%VmQ8-~K*>Hab-AC9ANEw&+_apvCJWG3g$xq;T8Pi_}C z@rZbgG&Zu8uq4o(7tzLm?7iPkT5@BGnEB4ct@rq=YstOeSTgQvD6C+fG(Doq44huA zM%-~{xIa;o3UrD?RgSsr`YT8;zZ8S!?R|UgNO_pq+%$d~;b$y2J6dsAsZZpPD2n6N zjbkl+fzLdPR4-VZ^XWdbVW=eCY}boVKK*T9pAjHnEeoZK%qNJ-pzCqzZ+8plG}84l zl;ma`{?iCJh*m5`R$Y{oVO&~meJq*v-T!BlYxOB}>JL}googcT3#d?DeozLd>`mfk zK`_Q%0jX?Kn+oT0uV86D$bzDmT6Jdqk0I3Bkqp?N7wB^~lGD@E5V-n=mSsGt-kO4Wz^qw8PBCF3bRbk( zVV`)b%5Wg#4aZh*gY7J12pIf|3Q-k@g{uS-b@U2ay{+|Qm^1)y1|=IywhH8*WgJ8E zvrxqc5qRDluWRbFYdkGN*JsGF-y`Mk$j9~K&<({#1&^VVTwFiRb&P%3cg5 z*nTRsyAt%jMR>5NW0k(8%*7@JRHSlSL92yt^OPa5COJo5 z8L$WlQ|IQ+N-X_KQspX~l$YP@sIdwtf)NxpFycSl;cj_A-%|sUw}Iv^L)V}(^!OpEY=I5mD>=!Y5|0Ylzkdr(lln+$!SAgzqPTopx7j#8$Jdz%7^W`fZsVgZcePFJ$-!v|W^Fn1|KBiPx3ElEh zdAC`QwzsZ=rTRQ})c)==XJh>QN>xF0EtN^e3*F(ovfTNjRtKIvymzH3o$bff^J z!}n-(#LSfIkrmpwPPHM`WIqGSn=QpYwyE5A;a`!_udcSk{xX>#$jd+NfxHcoRtqui zta2|9(4S?GR22X=D{SO{E>z+&yyQFR>X07wB;0`3_|pq+QW|+nm`);>?ao=6*Q#t6 z;p@@<4O>vRh5h~CZh}C5fK$8`+EYW@nA>C2K)qB+VF-duOFa52*ew(lu2Bh!fksfs zl89u##WtP#so z?OQ_e__=Qj_>(h4&LkK@2o%U8e5o4#At_A=nDgqFRr3MGI8_|wm727ZRKrqtUR!xr zTU*&|ol_8k#!8UUuc6{mV$3Vm4}RGGr=vpRctO{*-Rh5JH~n$oe-5ppNJ_;We6A*@pjtqO@`(SiqqKD*Y1a53 zwC_#Id?AY%g9Qm9b_Sre+jjep9!;m}8Fq@PuDT^)1-+A^&MK_a+RdYVD#Rr``emfM zPktI}&gi(#*4p|$X^dGd?qhlnvjp~GCekJh*#GlWin>t$aXBmP%E}G(KR>bB_FuN` z=sAB+LDAc45SlK8Hl>4lZoAOriPBWUJIBCKNW?KPb>U^EqFN7?ibu-!U)8bz%;zPtM)bqXf{#C9u~3ssb6ZFkk= z8Wf~eC~b&+b<2JsxKTpHg`0Pw$(>;C zw8iE066$HNXp|e5Du5u2T319{4@yhr)|8Cwv_|Fvm^RZl7~Uys@11Tj^va({mA3F; z$;K?*tI+VW=h1>4BkEeQ-6lu^edOTy96z^wt|#5b5s3G=ccEkqwGH~(k*VbtmGSgH z0!6e3+`@L#kTOBPb&FG#X-HVzOHgEW|7noERa6^V=|S$})9^S>h%(5=;!z0khznbyR)LY4S;h2$BGo8;ba%EwJ) zvB)OGeL5+)#&;G&FcFitiKpCgmW~+>m#uc%xFdN2s>h6J+UY{E8ysrSUx(jBf|O1D9t+#ZA}7>Kylobf$Fggg63|HYd6DUS`wC z(0O^P-BJ@^sapTIxLC+{P8o&HZrneiI*sjZa1j<)KPDH*2w4GZIaJ2QUMRUehh$Wl zIEvg?V1BQPm`#EDYcFEZsZ7+c@^Cx-ShD=^wRF4lueuqYvQ7a4M?K23;7I`nC7f`pKkFbpqxu_0C#kzeZ`}KQ z=?kt1v*|>`8O{qk`R)ZvA=6FIcsWDYHoC}1R2gB)*x1wd8Z_fgO^HkU_Lq7&-ann` zn1a%UdE6bF(&$(&CQJN&y(b-XI|2SrfFi&XE@)CB=A|$?DG7MHBcRixn=0hf4zN|_ zlQ^q;g{9A8anVGbL*acya!@0|yHuNDk4S7ouO-f~W-IqlqmVcwx9D>=4XZG7wthIY zo(jA4s$31DX9I`WcBi1HHba}F@7hAz*Oz!pk)aT_4m(uT>M@`aILRxs2n?vjdPc!j z`8`Si{(>{O?IUe(mX>4$5y8VCZjQ1wjs?puYV^z*Hjb9YX}w)FsUJ0sj=hKoKT(n? zQQt3Xtl9DiGYt)vuz8V^EA*(W#zKX!s1k}Z{krjSQ%sK+sQF3ar@hhN3%1}&wLW#wy#eiPvROSUiu|6dd~h;1e)-N-b0Wa&b66BI~&-IsUL(u zcZreZiXyPdgh=xg$vD{Cw|4$0rTU`MbY7`tx}z&6q?1&>0YW^ z<6LA^xowYVr!xCuT;s6(l;oJDPMFBn7mPoK2X>6bEWtgd8#)mIqR~tyXkI$x=C5PX zuoE^bh0*~+0(>Hn$&XDM$o%-J;Tu-z$!Ah{m%gO@M776;>rZGL@PG@EfHXc?`8H?} zMIpKXI9dZkdMmX%Ii-yxtp}hG4887N)-&#M6*XaFseF=S+?gghbW{$HpL;@nJl%Kq z)_8?nXi$TKl!Vg0jwJV_dK7}&kFHOz!e$vJ8eSrZ_K&HdbXZYox)jKAB_$fn}Icrvey}4kZrxr%&sjxB$6W06cnAxQyPHMct)_;y$r5{tjk5^BO�tM34^MY1QD(;HrI9KuqY&HVUS@jw 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 + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +

+ + + +
+
+
+

About Us

+
+
+
+
+ + + +
+
+
+

Our Team

+

Meet our Teachers

+
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+ + + +
+
+
+
+ +
+
+

Our Environment

+

Clean & Safe Environment

+

Eazy School maintains the Safest environment for both teachers and students + by sanitizing the schools daily. Enough security is in place with the help of + dedicated security team and cameras inside the campus.

+ +
+
+
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/contact.html b/section7/eazyschool-start/src/main/resources/templates/contact.html new file mode 100644 index 00000000..80332e67 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/contact.html @@ -0,0 +1,213 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Contact Us

+ +
+
+
+ + + +
+
+
+

Get In Touch

+

Contact Us

+
+
+
+
    +
+ +
+
+
+
+
+
+ +
+
+
School Address
+

Eazy School, 10001, 5th Avenue, #06 lane street, NY - 10017.

+
+
+
+
+ +
+
+
Call Us
+

+1(21) 673 4587

+
+
+
+
+ +
+
+
Email Us
+

info@eazyschool.com

+
+
+
+
+ +
+
+
Customer Support
+

support@eazyschool.com

+
+
+
+
+
+
+
+
+ +
+ +
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/courses.html b/section7/eazyschool-start/src/main/resources/templates/courses.html new file mode 100644 index 00000000..7e674e99 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/courses.html @@ -0,0 +1,259 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Courses

+ +
+
+
+ + + +
+
+
+

Best Courses

+

Find The Right Course For You

+
+
+
+
+
+ +
+ Education +
+
+
+
+
    +
  • 43 Lesson
  • +
  • 4.9
  • +
+
+

Educational Programs

+

Educations programmes covering core concepts of Maths, + English, Science.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 72 Lesson
  • +
  • 4.6
  • +
+
+

Best Meditation Classes

+

Special program focusing the meditation to encourage students + from early age.

+
+
+
+
+
+
+ +
+ Games +
+
+
+
+
    +
  • 14 Lesson
  • +
  • 5.0
  • +
+
+

Games Program in a Week

+

Games program encouraging the children on the physical + activities.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 23 Lesson
  • +
  • 5.0
  • +
+
+

Development Programs

+

Special development courses for special needs children to improve their confidence.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 40 Lesson
  • +
  • 4.6
  • +
+
+

Best Music Classes

+

Music dedicated programmes for the music interested students.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 20 Lesson
  • +
  • 4.8
  • +
+
+

Painting Programs

+

Art & Design programmes for the children to improve their drawing skills.

+
+
+
+
+
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/dashboard.html b/section7/eazyschool-start/src/main/resources/templates/dashboard.html new file mode 100644 index 00000000..18a28b0d --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/dashboard.html @@ -0,0 +1,136 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Dashboard

+ +
+
+
+ + + +
+
+
+

+

+
+ +
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/footer.html b/section7/eazyschool-start/src/main/resources/templates/footer.html new file mode 100644 index 00000000..947c30a9 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/footer.html @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/header.html b/section7/eazyschool-start/src/main/resources/templates/header.html new file mode 100644 index 00000000..ebef2279 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/header.html @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/holidays.html b/section7/eazyschool-start/src/main/resources/templates/holidays.html new file mode 100644 index 00000000..9fd96b6d --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/holidays.html @@ -0,0 +1,170 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

Holidays

+ +
+
+
+ + + +
+
+
+
Eazy School
+

Awesome Holidays

+
+
+
+
Festival Holidays
+
+
+
+
+

+
+
+
+
+
+
+
+
+ +
+
Federal Holidays
+
+
+
+

+
+
+
+
+
+
+
+
+
+
+ + + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/home.html b/section7/eazyschool-start/src/main/resources/templates/home.html new file mode 100644 index 00000000..feff67c5 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/home.html @@ -0,0 +1,442 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + +
...
+ + + +
+ +
+ + + +
+
+
+

Best Features

+

Achieve Your Goals With Eazy School

+
+
+
+
+
+

Expert Teachers

+

Well experienced teachers for each subject. No common teacher for all subjects.

+
+
+
+
+
+

Quality Education

+

Best curriculum based on the Cambridge international framework.

+
+
+
+
+
+

Alumni Support

+

Life time Alumni support through various channels available .

+
+
+
+
+
+

Best Scholarships

+

Best Scholarships available for the low income family students.

+
+
+
+
+
+ + + +
+
+
+
+
+ +
+
+
Get an Appointment Today!
+

Call today to know more details
and to talk with our expert.

+ 1-800-856-4321 +
+
+
+

We Are The Best Choice For Your Child

+

With over 20 years of experience, best teachers, world-class infrastructure, + larger Alumni community, we are the best choice for your child education.

+
    +
  • Special Education
  • +
  • Access more than 100K online courses
  • +
  • Traditional Academies
  • +
+ Apply Now +
+
+
+
+ + + +
+
+
+

Why Choose Us

+

Experienced Teachers And Safe environment

+
+
+
+ +
+ +
+
+
+ + + +
+
+
+

Our Statistics

+

We are Proud to Share with You

+
+
+
+
+ +
+

Current Students

+
+
+
+
+ +
+

Our Branches

+
+
+
+
+ +
+

Total Courses

+
+
+
+
+ +
+

Awards Won

+
+
+
+
+
+ + + +
+
+
+
+
+
    +
  • + client image +
    I am very happy that my son is studying in the + Eazy school. The support provided by the teachers is great and the curriculum + that they follow is of international standards. +
    +
    - Mario Spe
    +
  • + +
  • + client image +
    My child never felt pressure of studies in + the Eazy School. He is always encouraged to follow his own interest + and the school provides wide variety of programs for the students + outside studies. +
    +
    - Petey Cru
    +
  • +
  • + client image +
    Loved the infrastructure and cleanly + environment that school maintains. This is very important + in the current pandemic situations. +
    +
    - Anna Sth
    +
  • +
  • + client image +
    With the help of Cambridge + authorized programs, teachers always + enhancing my child classroom experiences + by applying new ideas & approaches. +
    +
    - Gail For
    +
  • +
  • + client image +
    Eazy Schools supports both online and offline + classes based on the pandemic conditions to make sure that there is + no impact on the children studies. School staff always does their + best to accommodate parents request. +
    +
    - Boye Fra
    +
  • +
+
+
+
+
+
+ + + +
+
+
+

Best Courses

+

Wide variety of Courses for your Child

+
+
+
+
+
+ +
+ Education +
+
+
+
+
    +
  • 43 Lesson
  • +
  • 4.9
  • +
+
+

Educational Programs

+

Educations programmes covering core concepts of Maths, + English, Science.

+
+
+
+
+
+
+ + +
+
+
+
    +
  • 72 Lesson
  • +
  • 4.6
  • +
+
+

Best Meditation Classes

+

Special program focusing the meditation to encourage students + from early age.

+
+
+
+
+
+
+ +
+ Games +
+
+
+
+
    +
  • 14 Lesson
  • +
  • 5.0
  • +
+
+

Games Program in a Week

+

Games program encouraging the children on the physical + activities.

+
+
+
+
+ +
+
+ + + +
+
+
+
+

Call To Enroll Your Child

+

Begin the change today!

+
+ +
+
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/main/resources/templates/login.html b/section7/eazyschool-start/src/main/resources/templates/login.html new file mode 100644 index 00000000..44fefba4 --- /dev/null +++ b/section7/eazyschool-start/src/main/resources/templates/login.html @@ -0,0 +1,151 @@ + + + + + + + + + Eazy School - Best Educational Institute for your Child + + + + + + + + + +
...
+ + + +
+
+
+

LogIn

+ +
+
+
+ + + +
+
+
+

LogIn

+
+ +
+
+ + + +
...
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/section7/eazyschool-start/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java b/section7/eazyschool-start/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java new file mode 100644 index 00000000..2415091f --- /dev/null +++ b/section7/eazyschool-start/src/test/java/com/eazybytes/eazyschool/EazyschoolApplicationTests.java @@ -0,0 +1,13 @@ +package com.eazybytes.eazyschool; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class EazyschoolApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/section7/springsecsection7/.mvn/wrapper/maven-wrapper.jar b/section7/springsecsection7/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 zcmb5W18`>1vNjyPv28mO+cqb*Z6_1kwr$(?#I}=(ZGUs`Jr}3`|DLbDUA3!L?dtC8 zUiH*ktDo+@6r@4HP=SCTA%WmZqm^Ro`Ls)bfPkcdfq?#g1(Fq27W^S8Cq^$TC?_c< zs-#ROD;6C)1wFuk7<3)nGuR^#!H;n&3*IjzXg+s8Z_S!!E0jUq(`}Itt=YdYa5Z_s z&e>2={87knpF*PKNzU;lsbk#P(l^WBvb$yEz)z+nYH43pKodrDkMp@h?;n{;K}hl>Fb^ zqx}C0|D7kg|Cj~3f7hn_zkAE}|6t|cZT|S5Hvb#3nc~C14u5UI{6#F<|FkJ0svs&S zA}S{=DXLT*BM1$`2rK%`D@vEw9l9%*=92X_2g?Fwfi=6Zfpr7+<~sgP#Bav+Df2ts zwtu~70zhqV?mrzM)}r7mMS`Hk_)NrI5K%CTtQtDxqw5iv5F0!ksIon{qqpPVnU?ds zN$|Vm{MHKEReUy>1kVfT-$3))Js0p2W_LFy3cjjZ7za0R zPdBH>y&pb0vr1|ckDpt2p$IQhwnPs5G*^b-y}sg4W!ALn}a`pY0JIa$H0$eV2T8WjWD= zWaENacQhlTyK4O!+aOXBurVR2k$eb8HVTCxy-bcHlZ4Xr!`juLAL#?t6|Ba!g9G4I zSwIt2Lla>C?C4wAZ8cKsZl9-Yd3kqE`%!5HlGdJJaFw0mu#--&**L-i|BcIdc3B$;0FC;FbE-dunVZ; zdIQ=tPKH4iJQQ=$5BeEMLov_Hn>gXib|9nOr}>eZt@B4W^m~>Zp#xhn1dax+?hS!AchWJ4makWZs@dQUeXQ zsI2+425_{X@t2KN zIbqec#)Jg5==VY3^YBeJ2B+%~^Y8|;F!mE8d(`UgNl2B9o>Ir5)qbBr)a?f%nrP zQyW(>FYPZjCVKDOU;Bw#PqPF1CCvp)dGdA&57a5hD&*vIc)jA)Z-!y5pS{5W6%#prH16zgD8s zexvpF#a|=*acp>L^lZ(PT)GiA8BJL-9!r8S$ZvXRKMVtiGe`+!@O%j<1!@msc177U zTDy>WOZu)W5anPrweQyjIu3IJC|ngdjZofGbdW&oj^DJlC7$;|xafB45evT|WBgGf-b|9y0J`fe0W-vw6xh}` z=(Tnq(-K0O{;VUcKe2y63{HXc+`R_#HLwnZ0rzWO*b#VeSuC4NG!H_ApCypbt1qx( z6y7Q$5(JOpQ&pTkc^0f}A0Kq*?;g9lEfzeE?5e2MBNZB)^8W1)YgdjsVyN+I9EZlh z3l}*}*)cFl=dOq|DvF=!ui$V%XhGQ%bDn3PK9 zV%{Y|VkAdt^d9~y4laGDqSwLd@pOnS&^@sI7}YTIb@El1&^_sq+{yAGf0|rq5TMp# z6d~;uAZ(fY3(eH=+rcbItl2=u6mf|P{lD4kiRCv;>GtFaHR3gim?WU9RjHmFZLm+m z+j<}_exaOQ1a}=K#voc~En+Mk_<(L!?1e#Uay~|H5q)LjD*yE6xFYQ-Wx{^iH1@pP zC0De#D6I26&W{;J40sZB!=%{c?XdO?YQvnTMA3TwfhAm@bvkX*(x?JTs*dFDv^=2X z284}AK)1nRn+8(Q2P?f)e>0~;NUI9%p%fnv1wBVpoXL+9OE`Vv1Y7=+nub$o7AN>y zB?R(^G8PYcMk4bxe7XItq@48QqWKb8fa*i9-N)=wdU-Q^=}!nFgTr_uT=Z=9pq z`{7!$U|+fnXFcsJ4GNm3JQQCN+G85k$)ZLhF{NbIy{REj84}Zt;0fe#>MARW)AoSb zrBpwF37ZVBMd>wZn_hAadI*xu8)Y#`aMbwRIA2n^-OS~M58_@j?#P1|PXJ1XBC9{4 zT^8*|xu<@(JlSOT*ILrVGr+7$nZN`Z3GxJJO@nY&mHsv^^duAh*lCu5q+S6zWA+`- z%^*y#)O7ko_RwGJl;bcEpP03FOrhlLWs`V_OUCrR-g>NJz*pN|itmN6O@Hw05Zq;Xtif%+sp4Py0{<7<^c zeoHHhRq>2EtYy9~2dZywm&OSk`u2ECWh6dJY?;fT-3-$U`!c(o$&hhPC%$~fT&bw3 zyj+8aXD;G!p*>BC6rpvx#6!|Qaic;KEv5>`Y+R(6F^1eIeYG6d1q3D3OL{7%7iw3R zwO)W7gMh27ASSB>-=OfP(YrKqBTNFv4hL@Im~~ombbSu44p~VoH$H-6+L_JW>Amkl zhDU~|r77?raaxD!-c$Ta?WAAi{w3T}YV=+S?1HQGC0+{Bny_^b+4Jum}oW4c=$ z#?D<}Ds{#d5v`L`${Pee;W84X*osNQ96xsKp^EAzuUh9#&zDX=eqdAp$UY)EGrkU% z(6m35n=46B$TNnejNSlih_!<)Iu@K!PW5S@Ya^0OK+EMWM=1w=GUKW^(r59U%i?d zzbo?|V4tDWGHHsrAQ}}ma#<`9r=M8%XF#%a=@Hn(p3wFBlkZ2L@8=*@J-^zuyF0aN zzJ7f!Jf8I+^6Tt$e+IIh zb80@?7y#Iz3w-0VEjgbHurqI>$qj<@n916)&O340!_5W9DtwR)P5mk6v2ljyK*DG5 zYjzE~m`>tq8HYXl%1JJ%e-%BqV4kRdPUZB1Cm$BQZr(fzp_@rn_W+;GwI$?L2Y4;b z)}c5D$#LT}2W8Si<`EHKIa_X+>+2PF(C*u~F=8E!jL(=IdQxY40%|( zoNg2Z&Aob@LEui-lJ#@)Ts)tE0_!*3{Uk)r{;-IZpX`N4mZX`#E|A;viQWImB6flI z?M_|xHCXV$5LOY-!U1_O1k;OWa=EchwlDCK4xHwBW2jE-6&%}og+9NILu${v10Z^Z#* zap|)B9a-AMU~>$r)3&|dQuP#MA$jnw54w*Ax~*_$iikp+j^OR8I5Fo<_UR#B-c>$? zeg)=;w^sGeAMi<3RGDRj$jA30Qq$e|zf2z;JyQ}tkU)ZI_k6tY%(`#AvL)p)iYXUy z5W9Su3NJ8mVyy)WqzFSk&vZM!;kUh8dVeA-myqcV%;xUne`PbHCPpvH?br`U2Y&dM zV!nJ!^n%`!H&!QSlpzLWnZpgi;#P0OAleH+<CfLa?&o|kyw1}W%6Pij zp$Vv5=;Z0LFN|j9i&9>zqX>*VnV3h#>n!2L?5gO6HJS3~kpy5G zYAVPMaB-FJOk3@OrxL(*-O~OB9^d{!G0K>wlzXuBm*$&%p1O#6SQ*?Q0CETLQ->XpfkW7< zj&Nep(}eAH1u$wWFvLV*lA{JOltP_%xKXC*a8DB&;{fD&2bATy>rC^kFY+$hFS7us;Y) zy_H?cv9XTHYz<4C<0b`WKC#{nJ15{F=oaq3x5}sYApT?Po+(Cmmo#dHZFO^{M#d~d znRT=TFATGVO%z_FNG-@G;9az|udZ>t@5l+A-K)BUWFn_|T#K3=d3EXRNqHyi#>;hX z*JQ`pT3#&tH>25laFlL6Rllu(seA*OboEd%rxMtz3@5v-+{qDP9&BcoS$2fgjgvp$ zc8!3=p0p@Ee1$u{Gg}Kkxg@M*qgZfYLlnD88{uwG1T?zxCbBR+x(RK$JB(eWJH#~; zZoY6L+esVRV?-*QmRCG}h`rB*Lv=uE%URF@+#l-g!Artx>Y9D;&G=jY2n2`J z{6-J%WX~Glx*QBmOOJ(RDRIzhfk&ibsm1t&&7aU{1P3U0uM%F2zJb4~50uby_ng+# zN)O9lK=dkJpxsUo7u8|e`Y~mmbxOTDn0i!i;d;ml#orN(Lc=j+n422NoSnlH6?0<0?th-qB7u}`5My%#?ES}>@RldOQz}WILz<$+cN~&ET zwUI01HCB((TyU$Ej8bxsE8oLmT-c7gA1Js?Iq`QMzIHV|)v)n2 zT_L(9x5%8*wU(C`VapaHoicWcm|0X@9TiNtbc|<4N6_H1F6&qgEEj=vjegFt;hC7- zLG7_=vedRFZ6Chbw!{#EpAlM?-sc#pc<~j#537n)M%RT)|L}y(ggi_-SLpsE3qi3V z=EEASxc>a{Su)jXcRS41Z@Mxk&0B7B<(?Izt5wpyyIBO|-M}ex8BhbIgi*X4 zDZ+Yk1<6&=PoZ=U-!9`!?sBVpYF#Y!JK<`fx}bXN651o0VVaW;t6ASVF@gq-mIDV_)?F^>rq1XX0NYy~(G=I6x%Fi5C2rMtvs z%P`g2>0{xLUy~#ye)%QAz^NkD5GUyPYl}K#;e-~UQ96`I$U0D!sMdQ>;%+c0h>k*Y z)sD1mi_@|rZnQ+zbWq~QxFlBQXj8WEY7NKaOYjUxAkGB8S#;l@b^C?;twRKl=mt0< zazifrBs`(q7_r14u1ZS`66VmsLpV>b5U!ktX>g4Nq~VPq6`%`3iCdr(>nS~uxxylU z>h(2p$XPJVh9BDpRLLzTDlNdp+oq8sOUlJ#{6boG`k)bwnsw5iy@#d{f_De-I|}vx6evw;ch97=;kLvM)-DBGwl6%fA%JItoMeyqjCR*_5Q70yd!KN zh=>ek8>f#~^6CJR0DXp0;7ifZjjSGBn}Cl{HeX!$iXMbtAU$F+;`%A<3TqbN#PCM& z&ueq$cB%pu2oMm_-@*aYzgn9`OiT@2ter*d+-$Aw42(@2Ng4mKG%M-IqX?q%3R|_( zN|&n$e1L#Ev=YMX5F53!O%))qDG3D(0rsOHblk;9ghWyqEOpg)mC$OduqpHAuIxr_>*|zy+|=EmOFn zFM+Ni%@CymLS-3vRWn=rVk?oZEz0V#y356IE6HR5#>7EigxZ05=cA|4<_tC8jyBJ| zgg!^kNwP7S^ooIj6riI9x`jFeQfRr4JCPumr<82M zto$j^Qb~MPmJ-|*2u{o7?yI8BI``zDaOCg2tG_5X;w<|uj5%oDthnLx-l4l)fmUGx z6N^jR|DC);yLi4q-ztTkf>*U$@2^w5(lhxu=OC|=WuTTp^!?2Nn27R`2FY_ zLHY-zFS}r+4|XyZw9b0D3)DmS!Gr+-LSdI}m{@-gL%^8CFSIYL?UZaCVd)2VI3|ay zwue39zshVrB+s2lp*};!gm<79@0HkjhgF^>`UhoR9Mi`aI#V#fI@x&1K3f&^8kaq% zkHVg$CTBoaGqEjrL)k*Y!rtiD2iQLYZ%|B}oBl8GHvR%n>HiIQN*+$mCN>I=c7H2N z&K4$4e@E^ff-cVHCbrHNMh4Dy|2Q;M{{xu|DYjeaRh2FK5QK!bG_K`kbBk$l$S4UF zq?F-%7UrX_Q?9M)a#WvcZ^R-fzJB5IFP>3uEoeCAAhN5W-ELRB&zsCnWY6#E?!)E56Pe+bxHjGF6;R9Hps)+t092-bf4 z_Wieg+0u5JL++k)#i0r?l`9*k)3ZlHOeMJ1DTdx9E1J2@BtdD3qX;&S_wMExOGv$T zl^T%oxb+)vq6vJvR`8{+YOsc@8}wSXpoK%v0k@8X*04Se3<8f)rE|fRXAoT!$6MdrKSuzeK@L*yug?MQs8oTbofqW)Df# zC2J3irHAaX_e~SGlBoRhEW`W6Z}&YX|5IMfzskAt{B*m z*w=3i!;x5Gfgc~>y9fPXFAPMhO@Si}SQESjh`P|dlV5HPRo7j(hV=$o8UMIT7~7+k z*@Sd>f%#{ARweJYhQs~ECpHie!~YXL|FJA;KS4m|CKFnT{fN`Ws>N?CcV@(>7WMPYN} z1}Wg+XU2(Yjpq7PJ|aSn;THEZ{4s8*@N!dz&bjys_Zk7%HiD+56;cF26`-a zEIo!B(T|L*uMXUvqJs&54`^@sUMtH-i~rOM9%$xGXTpmow$DxI>E5!csP zAHe|);0w%`I<==_Zw9t$e}?R+lIu%|`coRum(1p~*+20mBc?Z=$+z<0n&qS0-}|L4 zrgq|(U*eB%l3nfC=U1Y?(Tf@0x8bhdtsU2w&Y-WvyzkiyJ>GZqUP6c+<_p0`ZOnIK z#a~ynuzRWxO6c;S@*}B1pTjLJQHi(+EuE2;gG*p^Fq%6UoE1x95(^BY$H$$soSf=vpJ)_3E zp&$l=SiNaeoNLAK8x%XaHp3-So@F7 z3NMRRa@%k+Z$a%yb25ud&>Cdcb<+}n>=jZ`91)a z{wcA(j$%z#RoyB|&Z+B4%7Pe*No`pAX0Y;Ju4$wvJE{VF*Qej8C}uVF=xFpG^rY6Y+9mcz$T9^x(VP3uY>G3Zt&eU{pF*Bu<4j9MPbi4NMC=Z$kS6DMW9yN#vhM&1gd1t}8m(*YY9 zh2@s)$1p4yYT`~lYmU>>wKu+DhlnI1#Xn4(Rnv_qidPQHW=w3ZU!w3(@jO*f;4;h? zMH0!08(4=lT}#QA=eR(ZtW1=~llQij7)L6n#?5iY_p>|_mLalXYRH!x#Y?KHyzPB^ z6P3YRD}{ou%9T%|nOpP_??P;Rmra7$Q*Jz-f?42PF_y>d)+0Q^)o5h8@7S=je}xG# z2_?AdFP^t{IZHWK)9+EE_aPtTBahhUcWIQ7Awz?NK)ck2n-a$gplnd4OKbJ;;tvIu zH4vAexlK2f22gTALq5PZ&vfFqqERVT{G_d`X)eGI%+?5k6lRiHoo*Vc?ie6dx75_t z6hmd#0?OB9*OKD7A~P$e-TTv3^aCdZys6@`vq%Vi_D8>=`t&q9`Jn1=M#ktSC>SO3 z1V?vuIlQs6+{aHDHL?BB&3baSv;y#07}(xll9vs9K_vs2f9gC9Biy+9DxS77=)c z6dMbuokO-L*Te5JUSO$MmhIuFJRGR&9cDf)@y5OQu&Q$h@SW-yU&XQd9;_x;l z<`{S&Hnl!5U@%I~5p)BZspK894y7kVQE7&?t7Z|OOlnrCkvEf7$J5dR?0;Jt6oANc zMnb_Xjky|2ID#fhIB2hs-48Er>*M?56YFnjC)ixiCes%fgT?C|1tQupZ0Jon>yr|j z6M66rC(=;vw^orAMk!I1z|k}1Ox9qOILGJFxU*ZrMSfCe?)wByP=U73z+@Pfbcndc=VzYvSUnUy z+-B+_n`=f>kS8QBPwk+aD()=#IqkdxHPQMJ93{JGhP=48oRkmJyQ@i$pk(L&(p6<0 zC9ZEdO*i+t`;%(Ctae(SjV<@i%r5aune9)T4{hdzv33Uo9*K=V18S$6VVm^wgEteF za0zCLO(9~!U9_z@Qrh&rS|L0xG}RWoE1jXiEsrTgIF4qf#{0rl zE}|NGrvYLMtoORV&FWaFadDNCjMt|U8ba8|z&3tvd)s7KQ!Od*Kqe(48&C7=V;?`SQV)Qc?6L^k_vNUPbJ>>!5J?sDYm5kR&h_RZk)MfZ1 znOpQ|T;Me(%mdBJR$sbEmp3!HKDDSmMDnVpeo{S13l#9e6OImR$UPzjd-eCwmMwyT zm5~g6DIbY<_!8;xEUHdT(r_OQ<6QCE9Jy|QLoS>d(B zW6GRzX)~&Mx}})ITysFzl5_6JM*~ciBfVP(WF_r zY>z4gw&AxB%UV3Y{Y6z*t*o!p@~#u3X_t{Q9Us8ar8_9?N% zN&M~6y%2R(mAZ~@Tg1Oapt?vDr&fHuJ=V$wXstq|)eIG_4lB#@eU>fniJh zwJY<8yH5(+SSQ=$Y=-$2f$@^Ak#~kaR^NYFsi{XGlFCvK(eu{S$J(owIv17|p-%0O zL-@NyUg!rx0$Uh~JIeMX6JJE>*t<7vS9ev#^{AGyc;uio_-Je1?u#mA8+JVczhA2( zhD!koe;9$`Qgaxlcly4rdQ1VlmEHUhHe9TwduB+hm3wH2o27edh?|vrY{=;1Doy4& zIhP)IDd91@{`QQqVya(ASth4}6OY z-9BQj2d-%+-N7jO8!$QPq%o$9Fy8ja{4WT$gRP+b=Q1I48g-g|iLNjbhYtoNiR*d- z{sB}~8j*6*C3eM8JQj5Jn?mD#Gd*CrVEIDicLJ-4gBqUwLA-bp58UXko;M|ql+i5` zym-&U5BIS9@iPg#fFbuXCHrprSQKRU0#@yd%qrX1hhs*85R}~hahfFDq=e@bX))mf zWH%mXxMx|h5YhrTy;P_Xi_IDH*m6TYv>|hPX*_-XTW0G9iu!PqonQneKKaCVvvF^% zgBMDpN7!N?|G5t`v{neLaCFB{OyIl>qJQ_^0MJXQ zY2%-si~ej?F^%ytIIHU(pqT+3d+|IQ{ss#!c91R{2l*00e3ry!ha|XIsR%!q=E^Fal`6Oxu`K0fmPM?P6ZgzH7|TVQhl;l2 z)2w0L9CsN-(adU5YsuUw19OY_X69-!=7MIJ^(rUNr@#9l6aB8isAL^M{n2oD0FAHk97;X* z-INjZ5li`a|NYNt9gL2WbKT!`?%?lB^)J)9|025nBcBtEmWBRXQwi21EGg8>!tU>6Wf}S3p!>7vHNFSQR zgC>pb^&OHhRQD~7Q|gh5lV)F6i++k4Hp_F2L2WrcxH&@wK}QgVDg+y~o0gZ=$j&^W zz1aP8*cvnEJ#ffCK!Kz{K>yYW`@fc8ByF9X4XmyIv+h!?4&$YKl*~`ToalM{=Z_#^ zUs<1Do+PA*XaH;&0GW^tDjrctWKPmCF-qo7jGL)MK=XP*vt@O4wN1Y!8o`{DN|Rh) znK?nvyU&`ATc@U*l}=@+D*@l^gYOj&6SE|$n{UvyPwaiRQ_ua2?{Vfa|E~uqV$BhH z^QNqA*9F@*1dA`FLbnq;=+9KC@9Mel*>6i_@oVab95LHpTE)*t@BS>}tZ#9A^X7nP z3mIo+6TpvS$peMe@&=g5EQF9Mi9*W@Q`sYs=% z`J{3llzn$q;2G1{N!-#oTfQDY`8>C|n=Fu=iTk443Ld>>^fIr4-!R3U5_^ftd>VU> zij_ix{`V$I#k6!Oy2-z#QFSZkEPrXWsYyFURAo`Kl$LkN>@A?_);LE0rZIkmjb6T$ zvhc#L-Cv^4Ex*AIo=KQn!)A4;7K`pu-E+atrm@Cpmpl3e>)t(yo4gGOX18pL#xceU zbVB`#5_@(k{4LAygT1m#@(7*7f5zqB)HWH#TCrVLd9}j6Q>?p7HX{avFSb?Msb>Jg z9Q9DChze~0Psl!h0E6mcWh?ky! z$p#@LxUe(TR5sW2tMb#pS1ng@>w3o|r~-o4m&00p$wiWQ5Sh-vx2cv5nemM~Fl1Pn z@3ALEM#_3h4-XQ&z$#6X&r~U-&ge+HK6$)-`hqPj0tb|+kaKy*LS5@a9aSk!=WAEB z7cI`gaUSauMkEbg?nl0$44TYIwTngwzvUu0v0_OhpV;%$5Qgg&)WZm^FN=PNstTzW z5<}$*L;zrw>a$bG5r`q?DRc%V$RwwnGIe?m&(9mClc}9i#aHUKPLdt96(pMxt5u`F zsVoku+IC|TC;_C5rEU!}Gu*`2zKnDQ`WtOc3i#v}_9p>fW{L4(`pY;?uq z$`&LvOMMbLsPDYP*x|AVrmCRaI$UB?QoO(7mlBcHC};gA=!meK)IsI~PL0y1&{Dfm6! zxIajDc1$a0s>QG%WID%>A#`iA+J8HaAGsH z+1JH=+eX5F(AjmZGk|`7}Gpl#jvD6_Z!&{*kn@WkECV-~Ja@tmSR|e_L@9?N9 z3hyyry*D0!XyQh_V=8-SnJco#P{XBd1+7<5S3FA)2dFlkJY!1OO&M7z9uO?$#hp8K z><}uQS-^-B;u7Z^QD!7#V;QFmx0m%{^xtl3ZvPyZdi;^O&c;sNC4CHxzvvOB8&uHl zBN;-lu+P=jNn`2k$=vE0JzL{v67psMe_cb$LsmVfxA?yG z^q7lR00E@Ud3)mBPnT0KM~pwzZiBREupva^PE3~e zBgQ9oh@kcTk2)px3Hv^VzTtMzCG?*X(TDZ1MJ6zx{v- z;$oo46L#QNjk*1przHSQn~Ba#>3BG8`L)xla=P{Ql8aZ!A^Z6rPv%&@SnTI7FhdzT z-x7FR0{9HZg8Bd(puRlmXB(tB?&pxM&<=cA-;RT5}8rI%~CSUsR^{Dr%I2WAQghoqE5 zeQ874(T`vBC+r2Mi(w`h|d zA4x%EfH35I?h933@ic#u`b+%b+T?h=<}m@x_~!>o35p|cvIkkw07W=Ny7YcgssA_^ z|KJQrnu||Nu9@b|xC#C5?8Pin=q|UB?`CTw&AW0b)lKxZVYrBw+whPwZJCl}G&w9r zr7qsqm>f2u_6F@FhZU0%1Ioc3X7bMP%by_Z?hds`Q+&3P9-_AX+3CZ=@n!y7udAV2 zp{GT6;VL4-#t0l_h~?J^;trk1kxNAn8jdoaqgM2+mL&?tVy{I)e`HT9#Tr}HKnAfO zAJZ82j0+49)E0+=x%#1_D;sKu#W>~5HZV6AnZfC`v#unnm=hLTtGWz+21|p)uV+0= zDOyrLYI2^g8m3wtm-=pf^6N4ebLJbV%x`J8yd1!3Avqgg6|ar z=EM0KdG6a2L4YK~_kgr6w5OA;dvw0WPFhMF7`I5vD}#giMbMzRotEs&-q z^ji&t1A?l%UJezWv?>ijh|$1^UCJYXJwLX#IH}_1K@sAR!*q@j(({4#DfT|nj}p7M zFBU=FwOSI=xng>2lYo5*J9K3yZPwv(=7kbl8Xv0biOba>vik>6!sfwnH(pglq1mD-GrQi8H*AmfY*J7&;hny2F zupR}4@kzq+K*BE%5$iX5nQzayWTCLJ^xTam-EEIH-L2;huPSy;32KLb>>4 z#l$W^Sx7Q5j+Sy*E;1eSQQuHHWOT;1#LjoYpL!-{7W3SP4*MXf z<~>V7^&sY|9XSw`B<^9fTGQLPEtj=;<#x^=;O9f2{oR+{Ef^oZ z@N>P$>mypv%_#=lBSIr_5sn zBF-F_WgYS81vyW6$M;D_PoE&%OkNV1&-q+qgg~`A7s}>S`}cn#E$2m z%aeUXwNA(^3tP=;y5%pk#5Yz&H#AD`Jph-xjvZm_3KZ|J>_NR@croB^RUT~K;Exu5%wC}1D4nov3+@b8 zKyU5jYuQ*ZpTK23xXzpN51kB+r*ktnQJ7kee-gP+Ij0J_#rFTS4Gux;pkVB;n(c=6 zMks#)ZuXUcnN>UKDJ-IP-u2de1-AKdHxRZDUGkp)0Q#U$EPKlSLQSlnq)OsCour)+ zIXh@3d!ImInH7VrmR>p8p4%n;Tf6l2jx1qjJu>e3kf5aTzU)&910nXa-g0xn$tFa& z2qZ7UAl*@5o=PAh`6L${6S-0?pe3thPB4pahffb$#nL8ncN(Nyos`}r{%{g64Ji^= zK8BIywT0-g4VrhTt}n~Y;3?FGL74h?EG*QfQy0A8u>BtXuI{C-BYu*$o^}U1)z;8d zVN(ssw?oCbebREPD~I$-t7}`_5{{<0d10So7Pc2%EREdpMWIJI&$|rq<0!LL+BQM4 zn7)cq=qy|8YzdO(?NOsVRk{rW)@e7g^S~r^SCawzq3kj#u(5@C!PKCK0cCy zT@Tey2IeDYafA2~1{gyvaIT^a-Yo9kx!W#P-k6DfasKEgFji`hkzrmJ#JU^Yb%Nc~ zc)+cIfTBA#N0moyxZ~K!`^<>*Nzv-cjOKR(kUa4AkAG#vtWpaD=!Ku&;(D#(>$&~B zI?V}e8@p%s(G|8L+B)&xE<({g^M`#TwqdB=+oP|5pF3Z8u>VA!=w6k)zc6w2=?Q2` zYCjX|)fRKI1gNj{-8ymwDOI5Mx8oNp2JJHG3dGJGg!vK>$ji?n>5qG)`6lEfc&0uV z)te%G&Q1rN;+7EPr-n8LpNz6C6N0*v{_iIbta7OTukSY zt5r@sO!)rjh0aAmShx zd3=DJ3c(pJXGXzIh?#RR_*krI1q)H$FJ#dwIvz);mn;w6Rlw+>LEq4CN6pP4AI;!Y zk-sQ?O=i1Mp5lZX3yka>p+XCraM+a!1)`F`h^cG>0)f0OApGe(^cz-WoOno-Y(EeB zVBy3=Yj}ak7OBj~V259{&B`~tbJCxeVy@OEE|ke4O2=TwIvf-=;Xt_l)y`wuQ-9#D z(xD-!k+2KQzr`l$7dLvWf*$c8=#(`40h6d$m6%!SB1JzK+tYQihGQEwR*-!cM>#LD>x_J*w(LZbcvHW@LTjM?RSN z0@Z*4$Bw~Ki3W|JRI-r3aMSepJNv;mo|5yDfqNLHQ55&A>H5>_V9<_R!Ip`7^ylX=D<5 zr40z>BKiC@4{wSUswebDlvprK4SK2!)w4KkfX~jY9!W|xUKGTVn}g@0fG94sSJGV- z9@a~d2gf5s>8XT@`If?Oway5SNZS!L5=jpB8mceuf2Nd%aK2Zt|2FVcg8~7O{VPgI z#?H*_Kl!9!B}MrK1=O!Aw&faUBluA0v#gWVlAmZt;QN7KC<$;;%p`lmn@d(yu9scs zVjomrund9+p!|LWCOoZ`ur5QXPFJtfr_b5%&Ajig2dI6}s&Fy~t^j}()~4WEpAPL= zTj^d;OoZTUf?weuf2m?|R-7 z*C4M6ZhWF(F@2}nsp85rOqt+!+uZz3$ReX#{MP5-r6b`ztXDWl$_mcjFn*{sEx7f*O(ck+ou8_?~a_2Ztsq6qB|SPw26k!tLk{Q~Rz z$(8F1B;zK-#>AmmDC7;;_!;g&CU7a?qiIT=6Ts0cbUNMT6yPRH9~g zS%x{(kxYd=D&GKCkx;N21sU;OI8@4vLg2}L>Lb{Qv`B*O0*j>yJd#`R5ypf^lp<7V zCc|+>fYgvG`ROo>HK+FAqlDm81MS>&?n2E-(;N7}oF>3T9}4^PhY=Gm`9i(DPpuS- zq)>2qz!TmZ6q8;&M?@B;p1uG6RM_Y8zyId{-~XQD_}bXL{Jp7w`)~IR{l5a2?7!Vg zp!OfP4E$Ty_-K3VY!wdGj%2RL%QPHTL)uKfO5Am5<$`5 zHCBtvI~7q-ochU`=NJF*pPx@^IhAk&ZEA>w$%oPGc-}6~ywV~3-0{>*sb=|ruD{y$ ze%@-m`u28vKDaf*_rmN`tzQT>&2ltg-lofR8~c;p;E@`zK!1lkgi?JR0 z+<61+rEupp7F=mB=Ch?HwEjuQm}1KOh=o@ zMbI}0J>5}!koi&v9?!B?4FJR88jvyXR_v{YDm}C)lp@2G2{a{~6V5CwSrp6vHQsfb-U<{SSrQ zhjRbS;qlDTA&TQ2#?M(4xsRXFZ^;3A+_yLw>o-9GJ5sgsauB`LnB-hGo9sJ~tJ`Q>=X7sVmg<=Fcv=JDe*DjP-SK-0mJ7)>I zaLDLOU*I}4@cro&?@C`hH3tiXmN`!(&>@S2bFyAvI&axlSgd=!4IOi#+W;sS>lQ28 zd}q&dew9=x;5l0kK@1y9JgKWMv9!I`*C;((P>8C@JJRGwP5EL;JAPHi5fI|4MqlLU z^4D!~w+OIklt7dx3^!m6Be{Lp55j{5gSGgJz=hlNd@tt_I>UG(GP5s^O{jFU;m~l0 zfd`QdE~0Ym=6+XN*P`i0ogbgAJVjD9#%eBYJGIbDZ4s(f-KRE_>8D1Dv*kgO1~NSn zigx8f+VcA_xS)V-O^qrs&N9(}L!_3HAcegFfzVAntKxmhgOtsb4k6qHOpGWq6Q0RS zZO=EomYL%;nKgmFqxD<68tSGFOEM^u0M(;;2m1#4GvSsz2$jawEJDNWrrCrbO<}g~ zkM6516erswSi_yWuyR}}+h!VY?-F!&Y5Z!Z`tkJz&`8AyQ=-mEXxkQ%abc`V1s>DE zLXd7!Q6C)`7#dmZ4Lm?>CTlyTOslb(wZbi|6|Pl5fFq3y^VIzE4DALm=q$pK>-WM> z@ETsJj5=7=*4 z#Q8(b#+V=~6Gxl?$xq|?@_yQJ2+hAYmuTj0F76c(B8K%;DPhGGWr)cY>SQS>s7%O- zr6Ml8h`}klA=1&wvbFMqk}6fml`4A%G=o@K@8LHifs$)}wD?ix~Id@9-`;?+I7 zOhQN(D)j=^%EHN16(Z3@mMRM5=V)_z(6y^1b?@Bn6m>LUW7}?nupv*6MUVPSjf!Ym zMPo5YoD~t(`-c9w)tV%RX*mYjAn;5MIsD?0L&NQ#IY`9k5}Fr#5{CeTr)O|C2fRhY z4zq(ltHY2X)P*f?yM#RY75m8c<%{Y?5feq6xvdMWrNuqnR%(o(uo8i|36NaN<#FnT ze-_O*q0DXqR>^*1sAnsz$Ueqe5*AD@Htx?pWR*RP=0#!NjnaE-Gq3oUM~Kc9MO+o6 z7qc6wsBxp7GXx+hwEunnebz!|CX&`z{>loyCFSF-zg za}zec;B1H7rhGMDfn+t9n*wt|C_0-MM~XO*wx7-`@9~-%t?IegrHM(6oVSG^u?q`T zO<+YuVbO2fonR-MCa6@aND4dBy^~awRZcp!&=v+#kH@4jYvxt=)zsHV0;47XjlvDC8M1hSV zm!GB(KGLwSd{F-?dmMAe%W0oxkgDv8ivbs__S{*1U}yQ=tsqHJYI9)jduSKr<63$> zp;a-B^6Hg3OLUPi1UwHnptVSH=_Km$SXrCM2w8P z%F#Boi&CcZ5vAGjR1axw&YNh~Q%)VDYUDZ6f^0;>W7_sZr&QvRWc2v~p^PqkA%m=S zCwFUg2bNM(DaY>=TLmOLaDW&uH;Za?8BAwQo4+Xy4KXX;Z}@D5+}m)U#o?3UF}+(@jr$M4ja*`Y9gy~Y`0 z6Aex1*3ng@2er)@{%E9a3A;cts9cAor=RWt7ege)z=$O3$d5CX&hORZ3htL>jj5qT zW#KGQ;AZ|YbS0fvG~Y)CvVwXnBLJkSps7d~v;cj$D3w=rB9Tx>a&4>(x00yz!o*SOd*M!yIwx;NgqW?(ysFv8XLxs6Lrh8-F`3FO$}V{Avztc4qmZ zoz&YQR`*wWy_^&k-ifJ&N8Qh=E-fH6e}-}0C{h~hYS6L^lP>=pLOmjN-z4eQL27!6 zIe2E}knE;dxIJ_!>Mt|vXj%uGY=I^8(q<4zJy~Q@_^p@JUNiGPr!oUHfL~dw9t7C4I9$7RnG5p9wBpdw^)PtGwLmaQM=KYe z;Dfw@%nquH^nOI6gjP+K@B~0g1+WROmv1sk1tV@SUr>YvK7mxV3$HR4WeQ2&Y-{q~ z4PAR&mPOEsTbo~mRwg&EJE2Dj?TOZPO_@Z|HZX9-6NA!%Pb3h;G3F5J+30BoT8-PU z_kbx`I>&nWEMtfv(-m>LzC}s6q%VdBUVI_GUv3@^6SMkEBeVjWplD5y58LyJhikp4VLHhyf?n%gk0PBr(PZ3 z+V`qF971_d@rCO8p#7*#L0^v$DH>-qB!gy@ut`3 zy3cQ8*t@@{V7F*ti(u{G4i55*xY9Erw3{JZ8T4QPjo5b{n=&z4P^}wxA;x85^fwmD z6mEq9o;kx<5VneT_c-VUqa|zLe+BFgskp_;A)b>&EDmmP7Gx#nU-T@;O+(&&n7ljK zqK7&yV!`FIJAI+SaA6y=-H=tT`zWvBlaed!3X^_Lucc%Q=kuiG%65@@6IeG}e@`ieesOL} zKHBJBso6u&7gzlrpB%_yy<>TFwDI>}Ec|Gieb4=0fGwY|3YGW2Dq46=a1 zVo`Vi%yz+L9)9hbb%FLTC@-G(lODgJ(f&WmSCK9zV3-IV7XI<{2j}ms_Vmb!os)06 zhVIZPZF)hW--kWTCyDVRd2T&t|P&aDrtO5kzXy<*A+5$k7$>4+y%;% znYN-t#1^#}Z6d+ahj*Gzor+@kBD7@f|IGNR$4U=Y0J2#D2)YSxUCtiC1weJg zLp0Q&JFrt|In8!~1?fY0?=fPyaqPy$iQXJDhHP>N%B42Yck`Qz-OM_~GMuWow)>=Q z0pCCC7d0Z^Ipx29`}P3;?b{dO?7z0e{L|O*Z}nxi>X|RL8XAw$1eOLKd5j@f{RQ~Y zG?7$`hy@s7IoRF2@KA%2ZM6{ru9T5Gj)iDCz};VvlG$WuT+>_wCTS~J6`I9D{nsrU z2;X#OyopBgo778Q>D%_E>rMN~Po~d5H<`8|Zcv}F`xL5~NCVLX4Wkg007HhMgj9Pa z94$km3A+F&LzOJlpeFR*j+Y%M!Qm42ziH~cKM&3b;15s)ycD@3_tL-dk{+xP@J7#o z-)bYa-gd2esfy<&-nrj>1{1^_L>j&(MA1#WNPg3UD?reL*}V{ag{b!uT755x>mfbZ z0PzwF+kx91`qqOn`1>xw@801XAJlH>{`~|pyi6J;3s=cTOfelA&K5HX#gBp6s<|r5 zjSSj+CU*-TulqlnlP`}?)JkJ_7fg){;bRlXf+&^e8CWwFqGY@SZ=%NmLCXpYb+}7* z$4k}%iFUi^kBdeJg^kHt)f~<;Ovlz!9frq20cIj>2eIcG(dh57ry;^E^2T)E_8#;_9iJT>4sdCB_db|zO?Z^*lBN zNCs~f+Jkx%EUgkN2-xFF?B%TMr4#)%wq?-~+Nh;g9=n3tM>i5ZcH&nkVcPXgYRjG@ zf(Y7WN@hGV7o0bjx_2@bthJ`hjXXpfaes_(lWIw!(QK_nkyqj?{j#uFKpNVpV@h?7_WC3~&%)xHR1kKo`Cypj15#%0m z-o0GXem63g^|IltM?eZV=b+Z2e8&Z1%{0;*zmFc62mNqLTy$Y_c|9HiH0l>K z+mAx7DVYoHhXfdCE8Bs@j=t0f*uM++Idd25BgIm`Ad;I_{$mO?W%=JF82blr8rl>yMk6?pM z^tMluJ-ckG_}OkxP91t2o>CQ_O8^VZn$s$M_APWIXBGBq0Lt^YrTD5(Vwe2ta4y#DEYa(W~=eLOy7rD^%Vd$kL27M)MSpwgoP3P{ z!yS$zc|uP{yzaIqCwE!AfYNS;KW|OdP1Q%!LZviA0e^WDsIS5#= z!B{TW)VB)VHg{LoS#W7i6W>*sFz!qr^YS0t2kh90y=Je5{p>8)~D@dLS@QM(F# zIp{6M*#(@?tsu1Rq-Mdq+eV}ibRSpv#976C_5xlI`$#1tN`sK1?)5M+sj=OXG6dNu zV1K{y>!i0&9w8O{a>`IA#mo(3a zf*+Q=&HW7&(nX8~C1tiHZj%>;asBEp$p_Q!@Y0T8R~OuPEy3Lq@^t$8=~(FhPVmJJ z#VF8`(fNzK-b%Iin7|cxWP0xr*M&zoz|fCx@=Y!-0j_~cuxsDHHpmSo)qOalZ$bRl z2F$j0k3llJ$>28HH3l_W(KjF^!@LwtLej_b9;i;{ku2x+&WA@jKTO0ad71@_Yta!{ z2oqhO4zaU433LK371>E{bZ?+3kLZ9WQ2+3PTZAP90%P13Yy3lr3mhmy|>eN6(SHs1C%Q39p)YsUr7(kuaoIJGJhXV-PyG zjnxhcAC;fqY@6;MWWBnRK6ocG`%T&0&*k95#yK7DFtZV?;cy;!RD_*YJjsb6Q`$;K zy)&X{P`*5xEgjTQ9r=oh0|>Z_yeFm?ev!p z7q;JA4mtu@qa39v%6i)Z4%qwdxcHuOMO;a1wFMP_290FqH1OsmCG{ zq^afYrz2BQyQ0*JGE}1h!W9fKgk$b!)|!%q(1x?5=}PpmZQ$e;2EB*k4%+&+u;(E* z2n@=9HsqMv;4>Nn^2v&@4T-YTkd`TdWU^U*;sA5|r7TjZGnLY*xC=_K-GmDfkWEGC z;oN&!c1xB-<4J7=9 zJ(BedZwZhG4|64<=wvCn4)}w%Zx_TEs6ehmjVG&p5pi46r zg=3-3Q~;v55KR&8CfG;`Lv6NsXB}RqPVyNeKAfj9=Ol>fQlEUl2cH7=mPV!68+;jgtKvo5F#8&9m? z``w+#S5UR=QHFGM~noocC zVFa#v2%oo{%;wi~_~R2ci}`=B|0@ zinDfNxV3%iHIS(7{h_WEXqu!v~`CMH+7^SkvLe_3i}=pyDRah zN#L)F-`JLj6BiG}sj*WBmrdZuVVEo86Z<6VB}s)T$ZcWvG?i0cqI}WhUq2Y#{f~x# zi1LjxSZCwiKX}*ETGVzZ157=jydo*xC^}mJ<+)!DDCd4sx?VM%Y;&CTpw5;M*ihZ| zJ!FBJj0&j&-oJs?9a_I$;jzd%7|pdsQ3m`bPBe$nLoV1!YV8?Pw~0D zmSD-5Ue60>L$Rw;yk{_2d~v@CnvZa%!7{{7lb$kxWx!pzyh;6G~RbN5+|mFTbxcxf!XyfbLI^zMQSb6P~xzESXmV{9 zCMp)baZSz%)j&JWkc|Gq;_*$K@zQ%tH^91X2|Byv>=SmWR$7-shf|_^>Ll;*9+c(e z{N%43;&e8}_QGW+zE0m0myb-@QU%=Qo>``5UzB(lH0sK=E``{ZBl2Ni^-QtDp0ME1 zK88E-db_XBZQaU}cuvkCgH7crju~9eE-Y`os~0P-J=s;aS#wil$HGdK;Ut?dSO71ssyrdm{QRpMAV2nXslvlIE#+Oh>l7y_~?;}F!;ENCR zO+IG#NWIRI`FLntsz^FldCkky2f!d-%Pij9iLKr>IfCK);=}}?(NL%#4PfE(4kPQN zSC%BpZJ*P+PO5mHw0Wd%!zJsn&4g<$n#_?(=)JnoR2DK(mCPHp6e6VdV>?E5KCUF@ zf7W9wm%G#Wfm*NxTWIcJX-qtR=~NFxz4PSmDVAU8(B2wIm#IdHae-F{3jKQFiX?8NlKEhXR2Z|JCUd@HMnNVwqF~V9YJtD+T zQlOroDX-mg2% zBKV^Q5m5ECK{nWjJ7FHOSUi*a-C_?S_yo~G5HuRZH6R``^dS3Bh6u!nD`kFbxYThD zw~2%zL4tHA26rcdln4^=A(C+f9hLlcuMCv{8`u;?uoEVbU=YVNkBP#s3KnM@Oi)fQ zt_F3VjY)zASub%Q{Y?XgzlD3M5#gUBUuhW;$>uBSJH9UBfBtug*S|-;h?|L#^Z&uE zB&)spqM89dWg9ZrXi#F{KtL@r9g^xeR8J+$EhL~2u@cf`dS{8GUC76JP0hHtCKRg0 zt*rVyl&jaJAez;!fb!yX^+So4-8XMNpP@d3H*eF%t_?I|zN^1Iu5aGBXSm+}eCqn3 z^+vzcM*J>wV-FJRrx@^5;l>h0{OYT)lg{dr8!{s7(i{5T|3bivDoTonV1yo1@nVPR zXxEgGg^x5KHgp?=$xBwm_cKHeDurCgO>$B$GSO`Cd<~J8@>ni>Z-Ef!3+ck(MHVy@ z@#<*kCOb5S$V+Fvc@{Qv$oLfnOAG&YO5z_E2j6E z7a+c(>-`H)>g+6DeY1Y*ag-B6>Cl@@VhkZY@Uihe!{LlRpuTsmIsN4;+UDsHd954n9WZV6qq*{qZ5j<W)`UorOmXtVnLo3T{t#h3q^fooqQ~A+EY<$TDG4RKP*cK0liX95STt= zToC<2M2*(H1tZ)0s|v~iSAa^F-9jMwCy4cK0HM*3$@1Q`Pz}FFYm`PGP0wuamWrt*ehz3(|Fn%;0;K4}!Q~cx{0U0L=cs6lcrY^Y%Vf_rXpQIw~DfxB-72tZU6gdK8C~ea6(2P@kGH}!2N?>r(Ca{ zsI!6B!alPl%j1CHq97PTVRng$!~?s2{+6ffC#;X2z(Xb#9GsSYYe@9zY~7Dc7Hfgh z5Tq!})o30pA3ywg<9W3NpvUs;E%Cehz=s?EfLzcV0H?b{=q?vJCih2y%dhls6w3j$ zk9LB0L&(15mtul3T^QSK7KIZVTod#Sc)?1gzY~M=?ay87V}6G?F>~AIv()-N zD3rHX`;r;L{9N|Z8REN}OZB&SZ|5a80B%dQd-CNESP7HnuNn43T~Agcl1YOF@#W03 z1b*t!>t5G@XwVygHYczDIC|RdMB+ z$s5_5_W-EXN-u_5Pb{((!+8xa+?@_#dwtYHeJ_49Dql%3Fv0yXeV?!cC&Iqx@s~P%$X6%1 zYzS9pqaUv&aBQqO zBQs7d63FZIL1B&<8^oni%CZOdf6&;^oNqQ-9j-NBuQ^|9baQuZ^Jtyt&?cHq$Q9JE z5D>QY1?MU7%VVbvjysl~-a&ImiE(uFwHo{!kp;Jd`OLE!^4k8ID{`e-&>2uB7XB~= z+nIQGZ8-Sbfa}OrVPL}!mdieCrs3Nq8Ic_lpTKMIJ{h>XS$C3`h~ z?p2AbK~%t$t(NcOq5ZB3V|`a0io8A))v_PMt)Hg3x+07RL>i zGUq@t&+VV`kj55_snp?)Y@0rKZr`riC`9Q(B1P^nxffV9AvBLPrE<8D>ZP{HCDY@JIvYcYNRz8 z0Rf+Q0riSU@KaVpK)0M{2}Wuh!o~t*6>)EZSCQD{=}N4Oxjo1KO-MNpPYuPABh}E|rM!=TSl^F%NV^dg+>WNGi@Q5C z%JGsP#em`4LxDdIzA@VF&`2bLDv%J)(7vedDiXDqx{y6$Y0o~j*nVY73pINPCY?9y z$Rd&^64MN)Pkxr-CuZ+WqAJx6vuIAwmjkN{aPkrJ0I4F5-Bl}$hRzhRhZ^xN&Oe5$ za4Wrh6PyFfDG+Nzd8NTp2})j>pGtyejb&;NkU3C5-_H;{?>xK1QQ9S`xaHoMgee=2 zEbEh+*I!ggW@{T{qENlruZT)ODp~ZXHBc_Ngqu{jyC#qjyYGAQsO8VT^lts$z0HP+ z2xs^QjUwWuiEh863(PqO4BAosmhaK`pEI{-geBD9UuIn8ugOt-|6S(xkBLeGhW~)< z8aWBs0)bzOnY4wC$yW{M@&(iTe{8zhDnKP<1yr9J8akUK)1svAuxC)}x-<>S!9(?F zcA?{_C?@ZV2Aei`n#l(9zu`WS-hJsAXWt(SGp4(xg7~3*c5@odW;kXXbGuLOFMj{d z{gx81mQREmRAUHhfp#zoWh>z}GuS|raw1R#en%9R3hSR`qGglQhaq>#K!M%tooG;? zzjo}>sL7a3M5jW*s8R;#Y8b(l;%*I$@YH9)YzWR!T6WLI{$8ScBvw+5&()>NhPzd! z{>P(yk8{(G&2ovV^|#1HbcVMvXU&;0pk&6CxBTvBAB>#tK~qALsH`Ad1P0tAKWHv+BR8Fv4!`+>Obu1UX^Ov zmOpuS@Ui|NK4k-)TbG?+9T$)rkvq+?=0RDa=xdmY#JHLastjqPXdDbShqW>7NrHZ7 z7(9(HjM1-Ef(^`%3TlhySDJ27vQ?H`xr9VOM%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section7/springsecsection7/.mvn/wrapper/maven-wrapper.properties b/section7/springsecsection7/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section7/springsecsection7/.mvn/wrapper/maven-wrapper.properties +++ b/section7/springsecsection7/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section7/springsecsection7/mvnw b/section7/springsecsection7/mvnw index 8a8fb228..ba9212a0 100755 --- a/section7/springsecsection7/mvnw +++ b/section7/springsecsection7/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section7/springsecsection7/mvnw.cmd b/section7/springsecsection7/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section7/springsecsection7/mvnw.cmd +++ b/section7/springsecsection7/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section7/springsecsection7/pom.xml b/section7/springsecsection7/pom.xml index 2200c897..a1110b3c 100644 --- a/section7/springsecsection7/pom.xml +++ b/section7/springsecsection7/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,21 +17,17 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - org.springframework.ldap - spring-ldap-core + org.springframework.boot + spring-boot-starter-security - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -42,10 +38,6 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools @@ -53,13 +45,13 @@ true - org.springframework.boot - spring-boot-starter-test - test + org.projectlombok + lombok + true - org.springframework.security - spring-security-test + org.springframework.boot + spring-boot-starter-test test diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section7/springsecsection7/src/main/java/com/eazybytes/EazyBankBackendApplication.java index e7e047e9..0308e0f4 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -6,8 +6,8 @@ @SpringBootApplication public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java b/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..415dfb16 --- /dev/null +++ b/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java @@ -0,0 +1,40 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("prod") +@RequiredArgsConstructor +public class EazyBankProdUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + // Fetch Age details and perform validation to check if age >18 + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + }else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..c7933242 --- /dev/null +++ b/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,30 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = List.of(new SimpleGrantedAuthority(customer.getRole())); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java index 1d45e72f..96185c80 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -1,59 +1,35 @@ package com.eazybytes.config; -import com.eazybytes.model.Authority; -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; import org.springframework.security.authentication.AuthenticationProvider; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - @Component +@Profile("!prod") +@RequiredArgsConstructor public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; @Override public Authentication authenticate(Authentication authentication) throws AuthenticationException { String username = authentication.getName(); String pwd = authentication.getCredentials().toString(); - List customer = customerRepository.findByEmail(username); - if (customer.size() > 0) { - if (passwordEncoder.matches(pwd, customer.get(0).getPwd())) { - return new UsernamePasswordAuthenticationToken(username, pwd, getGrantedAuthorities(customer.get(0).getAuthorities())); - } else { - throw new BadCredentialsException("Invalid password!"); - } - }else { - throw new BadCredentialsException("No user registered with this details!"); - } - } - - private List getGrantedAuthorities(Set authorities) { - List grantedAuthorities = new ArrayList<>(); - for (Authority authority : authorities) { - grantedAuthorities.add(new SimpleGrantedAuthority(authority.getName())); - } - return grantedAuthorities; + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); } @Override public boolean supports(Class authentication) { return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); } - } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index 413e34e9..e5903e20 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -1,66 +1,50 @@ package com.eazybytes.config; -import com.eazybytes.filter.CsrfCookieFilter; -import jakarta.servlet.http.HttpServletRequest; +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; -import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; -import org.springframework.security.web.csrf.CookieCsrfTokenRepository; -import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; -import org.springframework.web.cors.CorsConfiguration; -import org.springframework.web.cors.CorsConfigurationSource; - -import java.util.Collections; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import static org.springframework.security.config.Customizer.withDefaults; @Configuration +@Profile("!prod") public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - CsrfTokenRequestAttributeHandler requestHandler = new CsrfTokenRequestAttributeHandler(); - requestHandler.setCsrfRequestAttributeName("_csrf"); - http.securityContext((context) -> context.requireExplicitSave(false)) - .sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) - .cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() { - @Override - public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { - CorsConfiguration config = new CorsConfiguration(); - config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); - config.setAllowedMethods(Collections.singletonList("*")); - config.setAllowCredentials(true); - config.setAllowedHeaders(Collections.singletonList("*")); - config.setMaxAge(3600L); - return config; - } - })).csrf((csrf) -> csrf.csrfTokenRequestHandler(requestHandler).ignoringRequestMatchers("/contact","/register") - .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) - .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) - .authorizeHttpRequests((requests)->requests - /*.requestMatchers("/myAccount").hasAuthority("VIEWACCOUNT") - .requestMatchers("/myBalance").hasAnyAuthority("VIEWACCOUNT","VIEWBALANCE") - .requestMatchers("/myLoans").hasAuthority("VIEWLOANS") - .requestMatchers("/myCards").hasAuthority("VIEWCARDS")*/ - .requestMatchers("/myAccount").hasRole("USER") - .requestMatchers("/myBalance").hasAnyRole("USER","ADMIN") - .requestMatchers("/myLoans").hasRole("USER") - .requestMatchers("/myCards").hasRole("USER") - .requestMatchers("/user").authenticated() - .requestMatchers("/notices","/contact","/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + http.sessionManagement(smc -> smc.invalidSessionUrl("/invalidSession").maximumSessions(3).maxSessionsPreventsLogin(true)) + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .csrf(csrfConfig -> csrfConfig.disable()) + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); return http.build(); } @Bean public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..f89e0d69 --- /dev/null +++ b/section7/springsecsection7/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,49 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + http.sessionManagement(smc -> smc.invalidSessionUrl("/invalidSession").maximumSessions(1).maxSessionsPreventsLogin(true)) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .csrf(csrfConfig -> csrfConfig.disable()) + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section7/springsecsection7/src/main/java/com/eazybytes/constants/ApplicationConstants.java deleted file mode 100644 index 7c1aa7ef..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/constants/ApplicationConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public class ApplicationConstants { - - public static final String ERROR_MSG = "An unknown error occured"; - public static final String SUCCESS_MSG = "Request Successfully processed"; - -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/AccountController.java b/section7/springsecsection7/src/main/java/com/eazybytes/controller/AccountController.java index f4f4025b..6c53a3be 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/controller/AccountController.java @@ -1,26 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.Accounts; -import com.eazybytes.repository.AccountsRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class AccountController { - @Autowired - private AccountsRepository accountsRepository; - @GetMapping("/myAccount") - public Accounts getAccountDetails(@RequestParam int id) { - Accounts accounts = accountsRepository.findByCustomerId(id); - if (accounts != null ) { - return accounts; - }else { - return null; - } + public String getAccountDetails () { + return "Here are the account details from the DB"; } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/BalanceController.java b/section7/springsecsection7/src/main/java/com/eazybytes/controller/BalanceController.java index 71ef84ea..81f0f5ff 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/controller/BalanceController.java @@ -1,28 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.AccountTransactions; -import com.eazybytes.repository.AccountTransactionsRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.List; - @RestController public class BalanceController { - @Autowired - private AccountTransactionsRepository accountTransactionsRepository; - @GetMapping("/myBalance") - public List getBalanceDetails(@RequestParam int id) { - List accountTransactions = accountTransactionsRepository. - findByCustomerIdOrderByTransactionDtDesc(id); - if (accountTransactions != null ) { - return accountTransactions; - }else { - return null; - } + public String getBalanceDetails () { + return "Here are the balance details from the DB"; } + } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/CardsController.java b/section7/springsecsection7/src/main/java/com/eazybytes/controller/CardsController.java index 5aab6d8c..3931047e 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/controller/CardsController.java @@ -1,28 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.Cards; -import com.eazybytes.repository.CardsRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.List; - @RestController public class CardsController { - @Autowired - private CardsRepository cardsRepository; - @GetMapping("/myCards") - public List getCardDetails(@RequestParam int id) { - List cards = cardsRepository.findByCustomerId(id); - if (cards != null ) { - return cards; - }else { - return null; - } + public String getCardsDetails () { + return "Here are the card details from the DB"; } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/ContactController.java b/section7/springsecsection7/src/main/java/com/eazybytes/controller/ContactController.java index 32e8899d..f7db1aa6 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/controller/ContactController.java @@ -1,32 +1,14 @@ package com.eazybytes.controller; -import java.sql.Date; -import java.util.Random; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Contact; -import com.eazybytes.repository.ContactRepository; - @RestController public class ContactController { - @Autowired - private ContactRepository contactRepository; - - @PostMapping("/contact") - public Contact saveContactInquiryDetails(@RequestBody Contact contact) { - contact.setContactId(getServiceReqNumber()); - contact.setCreateDt(new Date(System.currentTimeMillis())); - return contactRepository.save(contact); + @GetMapping("/contact") + public String saveContactInquiryDetails () { + return "Inquiry details are saved to the DB"; } - public String getServiceReqNumber() { - Random random = new Random(); - int ranNum = random.nextInt(999999999 - 9999) + 9999; - return "SR"+ranNum; - } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/LoansController.java b/section7/springsecsection7/src/main/java/com/eazybytes/controller/LoansController.java index 6405685f..4262e918 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/controller/LoansController.java @@ -1,28 +1,14 @@ package com.eazybytes.controller; -import com.eazybytes.model.Loans; -import com.eazybytes.repository.LoanRepository; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.List; - @RestController public class LoansController { - @Autowired - private LoanRepository loanRepository; - @GetMapping("/myLoans") - public List getLoanDetails(@RequestParam int id) { - List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(id); - if (loans != null ) { - return loans; - }else { - return null; - } + public String getLoansDetails () { + return "Here are the loans details from the DB"; } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/NoticesController.java b/section7/springsecsection7/src/main/java/com/eazybytes/controller/NoticesController.java index 9943001c..51c9dd3f 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/controller/NoticesController.java @@ -1,33 +1,14 @@ package com.eazybytes.controller; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.CacheControl; -import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Notice; -import com.eazybytes.repository.NoticeRepository; - @RestController public class NoticesController { - @Autowired - private NoticeRepository noticeRepository; - @GetMapping("/notices") - public ResponseEntity> getNotices() { - List notices = noticeRepository.findAllActiveNotices(); - if (notices != null ) { - return ResponseEntity.ok() - .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) - .body(notices); - }else { - return null; - } + public String getNotices () { + return "Here are the notices details from the DB"; } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/UserController.java b/section7/springsecsection7/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..e11933cc --- /dev/null +++ b/section7/springsecsection7/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,41 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; + + @PostMapping("/register") + public ResponseEntity registerUser(@RequestBody Customer customer) { + try { + String hashPwd = passwordEncoder.encode(customer.getPwd()); + customer.setPwd(hashPwd); + Customer savedCustomer = customerRepository.save(customer); + + if(savedCustomer.getId()>0) { + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); + } + } catch (Exception ex) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); + } + + } + +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section7/springsecsection7/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section7/springsecsection7/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section7/springsecsection7/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/AccountTransactions.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/AccountTransactions.java deleted file mode 100644 index 8f40fb16..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/AccountTransactions.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; - -import java.sql.Date; - -@Entity -@Table(name="account_transactions") -public class AccountTransactions { - - @Id - @Column(name = "transaction_id") - private String transactionId; - - @Column(name="account_number") - private long accountNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="transaction_dt") - private Date transactionDt; - - @Column(name = "transaction_summary") - private String transactionSummary; - - @Column(name="transaction_type") - private String transactionType; - - @Column(name = "transaction_amt") - private int transactionAmt; - - @Column(name = "closing_balance") - private int closingBalance; - - @Column(name = "create_dt") - private String createDt; - - public String getTransactionId() { - return transactionId; - } - - public void setTransactionId(String transactionId) { - this.transactionId = transactionId; - } - - public long getAccountNumber() { - return accountNumber; - } - - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getTransactionDt() { - return transactionDt; - } - - public void setTransactionDt(Date transactionDt) { - this.transactionDt = transactionDt; - } - - public String getTransactionSummary() { - return transactionSummary; - } - - public void setTransactionSummary(String transactionSummary) { - this.transactionSummary = transactionSummary; - } - - public String getTransactionType() { - return transactionType; - } - - public void setTransactionType(String transactionType) { - this.transactionType = transactionType; - } - - public int getTransactionAmt() { - return transactionAmt; - } - - public void setTransactionAmt(int transactionAmt) { - this.transactionAmt = transactionAmt; - } - - public int getClosingBalance() { - return closingBalance; - } - - public void setClosingBalance(int closingBalance) { - this.closingBalance = closingBalance; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/Accounts.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/Accounts.java deleted file mode 100644 index dbb62886..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/Accounts.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.eazybytes.model; - - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; - -@Entity -public class Accounts { - - @Column(name = "customer_id") - private int customerId; - - @Id - @Column(name="account_number") - private long accountNumber; - - @Column(name="account_type") - private String accountType; - - @Column(name = "branch_address") - private String branchAddress; - - @Column(name = "create_dt") - private String createDt; - - - public int getCustomerId() { - return customerId; - } - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - public long getAccountNumber() { - return accountNumber; - } - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - public String getAccountType() { - return accountType; - } - public void setAccountType(String accountType) { - this.accountType = accountType; - } - public String getBranchAddress() { - return branchAddress; - } - public void setBranchAddress(String branchAddress) { - this.branchAddress = branchAddress; - } - public String getCreateDt() { - return createDt; - } - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/Authority.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/Authority.java deleted file mode 100644 index c09f62a2..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/Authority.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "authorities") -public class Authority { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private Long id; - - private String name; - - @ManyToOne - @JoinColumn(name = "customer_id") - private Customer customer; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Customer getCustomer() { - return customer; - } - - public void setCustomer(Customer customer) { - this.customer = customer; - } - -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/Cards.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/Cards.java deleted file mode 100644 index 03a425d5..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/Cards.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "cards") -public class Cards { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "card_id") - private int cardId; - - @Column(name = "customer_id") - private int customerId; - - @Column(name = "card_number") - private String cardNumber; - - @Column(name = "card_type") - private String cardType; - - @Column(name = "total_limit") - private int totalLimit; - - @Column(name = "amount_used") - private int amountUsed; - - @Column(name = "available_amount") - private int availableAmount; - - @Column(name = "create_dt") - private Date createDt; - - public int getCardId() { - return cardId; - } - - public void setCardId(int cardId) { - this.cardId = cardId; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public String getCardNumber() { - return cardNumber; - } - - public void setCardNumber(String cardNumber) { - this.cardNumber = cardNumber; - } - - public String getCardType() { - return cardType; - } - - public void setCardType(String cardType) { - this.cardType = cardType; - } - - public int getTotalLimit() { - return totalLimit; - } - - public void setTotalLimit(int totalLimit) { - this.totalLimit = totalLimit; - } - - public int getAmountUsed() { - return amountUsed; - } - - public void setAmountUsed(int amountUsed) { - this.amountUsed = amountUsed; - } - - public int getAvailableAmount() { - return availableAmount; - } - - public void setAvailableAmount(int availableAmount) { - this.availableAmount = availableAmount; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/Contact.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/Contact.java deleted file mode 100644 index fa5c7ff5..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/Contact.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; - -import java.sql.Date; - -@Entity -@Table(name = "contact_messages") -public class Contact { - - @Id - @Column(name = "contact_id") - private String contactId; - - @Column(name = "contact_name") - private String contactName; - - @Column(name = "contact_email") - private String contactEmail; - - private String subject; - - private String message; - - @Column(name = "create_dt") - private Date createDt; - - public String getContactId() { - return contactId; - } - - public void setContactId(String contactId) { - this.contactId = contactId; - } - - public String getContactName() { - return contactName; - } - - public void setContactName(String contactName) { - this.contactName = contactName; - } - - public String getContactEmail() { - return contactEmail; - } - - public void setContactEmail(String contactEmail) { - this.contactEmail = contactEmail; - } - - public String getSubject() { - return subject; - } - - public void setSubject(String subject) { - this.subject = subject; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/Customer.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/Customer.java index bd3086a5..e73b2b52 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/Customer.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/model/Customer.java @@ -1,101 +1,21 @@ package com.eazybytes.model; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonProperty; import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -import java.util.Set; +import lombok.Getter; +import lombok.Setter; @Entity +@Table(name = "customer") +@Getter @Setter public class Customer { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "customer_id") - private int id; - - private String name; - + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; private String email; - - @Column(name = "mobile_number") - private String mobileNumber; - - @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private String pwd; - + @Column(name = "role") private String role; - @Column(name = "create_dt") - private String createDt; - - @JsonIgnore - @OneToMany(mappedBy="customer",fetch=FetchType.EAGER) - private Set authorities; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getMobileNumber() { - return mobileNumber; - } - - public void setMobileNumber(String mobileNumber) { - this.mobileNumber = mobileNumber; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - - public Set getAuthorities() { - return authorities; - } - public void setAuthorities(Set authorities) { - this.authorities = authorities; - } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/Loans.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/Loans.java deleted file mode 100644 index 0622a955..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/Loans.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name="loans") -public class Loans { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "loan_number") - private int loanNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="start_dt") - private Date startDt; - - @Column(name = "loan_type") - private String loanType; - - @Column(name = "total_loan") - private int totalLoan; - - @Column(name = "amount_paid") - private int amountPaid; - - @Column(name = "outstanding_amount") - private int outstandingAmount; - - @Column(name = "create_dt") - private String createDt; - - public int getLoanNumber() { - return loanNumber; - } - - public void setLoanNumber(int loanNumber) { - this.loanNumber = loanNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getStartDt() { - return startDt; - } - - public void setStartDt(Date startDt) { - this.startDt = startDt; - } - - public String getLoanType() { - return loanType; - } - - public void setLoanType(String loanType) { - this.loanType = loanType; - } - - public int getTotalLoan() { - return totalLoan; - } - - public void setTotalLoan(int totalLoan) { - this.totalLoan = totalLoan; - } - - public int getAmountPaid() { - return amountPaid; - } - - public void setAmountPaid(int amountPaid) { - this.amountPaid = amountPaid; - } - - public int getOutstandingAmount() { - return outstandingAmount; - } - - public void setOutstandingAmount(int outstandingAmount) { - this.outstandingAmount = outstandingAmount; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/model/Notice.java b/section7/springsecsection7/src/main/java/com/eazybytes/model/Notice.java deleted file mode 100644 index 33e08468..00000000 --- a/section7/springsecsection7/src/main/java/com/eazybytes/model/Notice.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "notice_details") -public class Notice { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "notice_id") - private int noticeId; - - @Column(name = "notice_summary") - private String noticeSummary; - - @Column(name = "notice_details") - private String noticeDetails; - - @Column(name = "notic_beg_dt") - private Date noticBegDt; - - @Column(name = "notic_end_dt") - private Date noticEndDt; - - @Column(name = "create_dt") - private Date createDt; - - @Column(name = "update_dt") - private Date updateDt; - - public int getNoticeId() { - return noticeId; - } - - public void setNoticeId(int noticeId) { - this.noticeId = noticeId; - } - - public String getNoticeSummary() { - return noticeSummary; - } - - public void setNoticeSummary(String noticeSummary) { - this.noticeSummary = noticeSummary; - } - - public String getNoticeDetails() { - return noticeDetails; - } - - public void setNoticeDetails(String noticeDetails) { - this.noticeDetails = noticeDetails; - } - - public Date getNoticBegDt() { - return noticBegDt; - } - - public void setNoticBegDt(Date noticBegDt) { - this.noticBegDt = noticBegDt; - } - - public Date getNoticEndDt() { - return noticEndDt; - } - - public void setNoticEndDt(Date noticEndDt) { - this.noticEndDt = noticEndDt; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - - public Date getUpdateDt() { - return updateDt; - } - - public void setUpdateDt(Date updateDt) { - this.updateDt = updateDt; - } -} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section7/springsecsection7/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section7/springsecsection7/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section7/springsecsection7/src/main/resources/application.properties b/section7/springsecsection7/src/main/resources/application.properties index 78fdb8f8..d091a248 100644 --- a/section7/springsecsection7/src/main/resources/application.properties +++ b/section7/springsecsection7/src/main/resources/application.properties @@ -1,5 +1,15 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true \ No newline at end of file +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} diff --git a/section7/springsecsection7/src/main/resources/application_prod.properties b/section7/springsecsection7/src/main/resources/application_prod.properties new file mode 100644 index 00000000..9ef98007 --- /dev/null +++ b/section7/springsecsection7/src/main/resources/application_prod.properties @@ -0,0 +1,13 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} diff --git a/section7/springsecsection7/src/main/resources/sql/scripts.sql b/section7/springsecsection7/src/main/resources/sql/scripts.sql index 85274dec..3ac6975d 100644 --- a/section7/springsecsection7/src/main/resources/sql/scripts.sql +++ b/section7/springsecsection7/src/main/resources/sql/scripts.sql @@ -1,196 +1,20 @@ -create database eazybank; +create table users(username varchar(50) not null primary key,password varchar(500) not null,enabled boolean not null); +create table authorities (username varchar(50) not null,authority varchar(50) not null,constraint fk_authorities_users foreign key(username) references users(username)); +create unique index ix_auth_username on authorities (username,authority); -use eazybank; +INSERT IGNORE INTO `users` VALUES ('user', '{noop}EazyBytes@12345', '1'); +INSERT IGNORE INTO `authorities` VALUES ('user', 'read'); -drop table `users`; -drop table `authorities`; -drop table `customer`; +INSERT IGNORE INTO `users` VALUES ('admin', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', '1'); +INSERT IGNORE INTO `authorities` VALUES ('admin', 'admin'); CREATE TABLE `customer` ( - `customer_id` int NOT NULL AUTO_INCREMENT, - `name` varchar(100) NOT NULL, - `email` varchar(100) NOT NULL, - `mobile_number` varchar(20) NOT NULL, - `pwd` varchar(500) NOT NULL, - `role` varchar(100) NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`customer_id`) -); - -INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) - VALUES ('Happy','happy@example.com','9876548337', '$2y$12$oRRbkNfwuR8ug4MlzH5FOeui.//1mkd.RsOAJMbykTSupVy.x/vb2', 'admin',CURDATE()); - -CREATE TABLE `accounts` ( - `customer_id` int NOT NULL, - `account_number` int NOT NULL, - `account_type` varchar(100) NOT NULL, - `branch_address` varchar(200) NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`account_number`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - -INSERT INTO `accounts` (`customer_id`, `account_number`, `account_type`, `branch_address`, `create_dt`) - VALUES (1, 1865764534, 'Savings', '123 Main Street, New York', CURDATE()); - -CREATE TABLE `account_transactions` ( - `transaction_id` varchar(200) NOT NULL, - `account_number` int NOT NULL, - `customer_id` int NOT NULL, - `transaction_dt` date NOT NULL, - `transaction_summary` varchar(200) NOT NULL, - `transaction_type` varchar(100) NOT NULL, - `transaction_amt` int NOT NULL, - `closing_balance` int NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`transaction_id`), - KEY `customer_id` (`customer_id`), - KEY `account_number` (`account_number`), - CONSTRAINT `accounts_ibfk_2` FOREIGN KEY (`account_number`) REFERENCES `accounts` (`account_number`) ON DELETE CASCADE, - CONSTRAINT `acct_user_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - - - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 7 DAY), 'Coffee Shop', 'Withdrawal', 30,34500,DATE_SUB(CURDATE(), INTERVAL 7 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 6 DAY), 'Uber', 'Withdrawal', 100,34400,DATE_SUB(CURDATE(), INTERVAL 6 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 5 DAY), 'Self Deposit', 'Deposit', 500,34900,DATE_SUB(CURDATE(), INTERVAL 5 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 4 DAY), 'Ebay', 'Withdrawal', 600,34300,DATE_SUB(CURDATE(), INTERVAL 4 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 2 DAY), 'OnlineTransfer', 'Deposit', 700,35000,DATE_SUB(CURDATE(), INTERVAL 2 DAY)); - -INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, -`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 1 DAY), 'Amazon.com', 'Withdrawal', 100,34900,DATE_SUB(CURDATE(), INTERVAL 1 DAY)); - - -CREATE TABLE `loans` ( - `loan_number` int NOT NULL AUTO_INCREMENT, - `customer_id` int NOT NULL, - `start_dt` date NOT NULL, - `loan_type` varchar(100) NOT NULL, - `total_loan` int NOT NULL, - `amount_paid` int NOT NULL, - `outstanding_amount` int NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`loan_number`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `loan_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2020-10-13', 'Home', 200000, 50000, 150000, '2020-10-13'); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2020-06-06', 'Vehicle', 40000, 10000, 30000, '2020-06-06'); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2018-02-14', 'Home', 50000, 10000, 40000, '2018-02-14'); - -INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) - VALUES ( 1, '2018-02-14', 'Personal', 10000, 3500, 6500, '2018-02-14'); - -CREATE TABLE `cards` ( - `card_id` int NOT NULL AUTO_INCREMENT, - `card_number` varchar(100) NOT NULL, - `customer_id` int NOT NULL, - `card_type` varchar(100) NOT NULL, - `total_limit` int NOT NULL, - `amount_used` int NOT NULL, - `available_amount` int NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`card_id`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `card_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE -); - -INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) - VALUES ('4565XXXX4656', 1, 'Credit', 10000, 500, 9500, CURDATE()); - -INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) - VALUES ('3455XXXX8673', 1, 'Credit', 7500, 600, 6900, CURDATE()); - -INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) - VALUES ('2359XXXX9346', 1, 'Credit', 20000, 4000, 16000, CURDATE()); - -CREATE TABLE `notice_details` ( - `notice_id` int NOT NULL AUTO_INCREMENT, - `notice_summary` varchar(200) NOT NULL, - `notice_details` varchar(500) NOT NULL, - `notic_beg_dt` date NOT NULL, - `notic_end_dt` date DEFAULT NULL, - `create_dt` date DEFAULT NULL, - `update_dt` date DEFAULT NULL, - PRIMARY KEY (`notice_id`) -); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Home Loan Interest rates reduced', 'Home loan interest rates are reduced as per the goverment guidelines. The updated rates will be effective immediately', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Net Banking Offers', 'Customers who will opt for Internet banking while opening a saving account will get a $50 amazon voucher', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Mobile App Downtime', 'The mobile application of the EazyBank will be down from 2AM-5AM on 12/05/2020 due to maintenance activities', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('E Auction notice', 'There will be a e-auction on 12/08/2020 on the Bank website for all the stubborn arrears.Interested parties can participate in the e-auction', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('Launch of Millennia Cards', 'Millennia Credit Cards are launched for the premium customers of EazyBank. With these cards, you will get 5% cashback for each purchase', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) -VALUES ('COVID-19 Insurance', 'EazyBank launched an insurance policy which will cover COVID-19 expenses. Please reach out to the branch for more details', -CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); - -CREATE TABLE `contact_messages` ( - `contact_id` varchar(50) NOT NULL, - `contact_name` varchar(50) NOT NULL, - `contact_email` varchar(100) NOT NULL, - `subject` varchar(500) NOT NULL, - `message` varchar(2000) NOT NULL, - `create_dt` date DEFAULT NULL, - PRIMARY KEY (`contact_id`) -); - -CREATE TABLE `authorities` ( `id` int NOT NULL AUTO_INCREMENT, - `customer_id` int NOT NULL, - `name` varchar(50) NOT NULL, - PRIMARY KEY (`id`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `authorities_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) + `email` varchar(45) NOT NULL, + `pwd` varchar(200) NOT NULL, + `role` varchar(45) NOT NULL, + PRIMARY KEY (`id`) ); -INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWACCOUNT'); - -INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWCARDS'); - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWLOANS'); - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWBALANCE'); - - DELETE FROM `authorities`; - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'ROLE_USER'); - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'ROLE_ADMIN'); \ No newline at end of file +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('happy@example.com', '{noop}EazyBytes@12345', 'read'); +INSERT INTO `customer` (`email`, `pwd`, `role`) VALUES ('admin@example.com', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin'); \ No newline at end of file diff --git a/section6/Angular+Project+Setup.pdf b/section8/Angular+Project+Setup.pdf similarity index 100% rename from section6/Angular+Project+Setup.pdf rename to section8/Angular+Project+Setup.pdf diff --git a/section6/bank-app-ui/.editorconfig b/section8/eazybank-end/bank-app-ui/.editorconfig similarity index 100% rename from section6/bank-app-ui/.editorconfig rename to section8/eazybank-end/bank-app-ui/.editorconfig diff --git a/section6/00_UI_Initial Code/bank-app-ui/.gitignore b/section8/eazybank-end/bank-app-ui/.gitignore similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/.gitignore rename to section8/eazybank-end/bank-app-ui/.gitignore diff --git a/section8/eazybank-end/bank-app-ui/.vscode/launch.json b/section8/eazybank-end/bank-app-ui/.vscode/launch.json new file mode 100644 index 00000000..1208968f --- /dev/null +++ b/section8/eazybank-end/bank-app-ui/.vscode/launch.json @@ -0,0 +1,22 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Launch Chrome", + "request": "launch", + "type": "chrome", + "url": "http://localhost:8080", + "webRoot": "${workspaceFolder}" + }, + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome against localhost", + "url": "http://localhost:8080", + "webRoot": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/section_13/bank-app-ui/README.md b/section8/eazybank-end/bank-app-ui/README.md similarity index 100% rename from section_13/bank-app-ui/README.md rename to section8/eazybank-end/bank-app-ui/README.md diff --git a/section6/bank-app-ui/angular.json b/section8/eazybank-end/bank-app-ui/angular.json similarity index 88% rename from section6/bank-app-ui/angular.json rename to section8/eazybank-end/bank-app-ui/angular.json index 98fbf15f..e4993108 100644 --- a/section6/bank-app-ui/angular.json +++ b/section8/eazybank-end/bank-app-ui/angular.json @@ -16,7 +16,9 @@ "outputPath": "dist/bank-app-ui", "index": "src/index.html", "main": "src/main.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js" + ], "tsConfig": "tsconfig.app.json", "assets": [ "src/favicon.ico", @@ -42,12 +44,6 @@ "maximumError": "4kb" } ], - "fileReplacements": [ - { - "replace": "src/environments/environment.ts", - "with": "src/environments/environment.prod.ts" - } - ], "outputHashing": "all" }, "development": { @@ -56,7 +52,13 @@ "vendorChunk": true, "extractLicenses": false, "sourceMap": true, - "namedChunks": true + "namedChunks": true, + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.development.ts" + } + ] } }, "defaultConfiguration": "production" @@ -82,16 +84,16 @@ "test": { "builder": "@angular-devkit/build-angular:karma", "options": { - "main": "src/test.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js", + "zone.js/testing" + ], "tsConfig": "tsconfig.spec.json", - "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ - "node_modules/bootstrap/dist/css/bootstrap.min.css", "src/styles.css" ], "scripts": [] diff --git a/section8/eazybank-end/bank-app-ui/package-lock.json b/section8/eazybank-end/bank-app-ui/package-lock.json new file mode 100644 index 00000000..dae7e8aa --- /dev/null +++ b/section8/eazybank-end/bank-app-ui/package-lock.json @@ -0,0 +1,13038 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "bank-app-ui", + "version": "0.0.0", + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.14.tgz", + "integrity": "sha512-eSdONEV5dbtLNiOMBy9Ue9DdJ1ct6dH9RdZfYiedq6VZn0lejePAjY36MYVXgq2jTE+v/uIiaNy7caea5pt55A==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.14.tgz", + "integrity": "sha512-bXQ6i7QPhwmYHuh+DSNkBhjTIHQF0C6fqZEg2ApJA3NmnzE98oQnmJ9AnGnAkdf1Mjn3xi2gxoZWPDDxGEINMw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "2.2.1", + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/build-webpack": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@babel/core": "7.22.9", + "@babel/generator": "7.22.9", + "@babel/helper-annotate-as-pure": "7.22.5", + "@babel/helper-split-export-declaration": "7.22.6", + "@babel/plugin-proposal-async-generator-functions": "7.20.7", + "@babel/plugin-transform-async-to-generator": "7.22.5", + "@babel/plugin-transform-runtime": "7.22.9", + "@babel/preset-env": "7.22.9", + "@babel/runtime": "7.22.6", + "@babel/template": "7.22.5", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "16.2.14", + "@vitejs/plugin-basic-ssl": "1.0.1", + "ansi-colors": "4.1.3", + "autoprefixer": "10.4.14", + "babel-loader": "9.1.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.21.5", + "chokidar": "3.5.3", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.20", + "css-loader": "6.8.1", + "esbuild-wasm": "0.18.17", + "fast-glob": "3.3.1", + "guess-parser": "0.4.22", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.3", + "less-loader": "11.1.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "magic-string": "0.30.1", + "mini-css-extract-plugin": "2.7.6", + "mrmime": "1.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "7.0.0", + "picomatch": "2.3.1", + "piscina": "4.0.0", + "postcss": "8.4.31", + "postcss-loader": "7.3.3", + "resolve-url-loader": "5.0.0", + "rxjs": "7.8.1", + "sass": "1.64.1", + "sass-loader": "13.3.2", + "semver": "7.5.4", + "source-map-loader": "4.0.1", + "source-map-support": "0.5.21", + "terser": "5.19.2", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.6.1", + "vite": "4.5.3", + "webpack": "5.88.2", + "webpack-dev-middleware": "6.1.2", + "webpack-dev-server": "4.15.1", + "webpack-merge": "5.9.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.18.17" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "@angular/localize": "^16.0.0", + "@angular/platform-server": "^16.0.0", + "@angular/service-worker": "^16.0.0", + "jest": "^29.5.0", + "jest-environment-jsdom": "^29.5.0", + "karma": "^6.3.0", + "ng-packagr": "^16.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.9.3 <5.2" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/platform-server": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "jest": { + "optional": true + }, + "jest-environment-jsdom": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "dev": true + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.14.tgz", + "integrity": "sha512-f+ZTCjOoA1SCQEaX3L/63ubqr/vlHkwDXAtKjBsQgyz6srnETcjy96Us5k/LoK7/hPc85zFneqLinfqOMVWHJQ==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/core": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.14.tgz", + "integrity": "sha512-Ui14/d2+p7lnmXlK/AX2ieQEGInBV75lonNtPQgwrYgskF8ufCuN0DyVZQUy9fJDkC+xQxbJyYrby/BS0R0e7w==", + "dev": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-16.2.14.tgz", + "integrity": "sha512-B6LQKInCT8w5zx5Pbroext5eFFRTCJdTwHN8GhcVS8IeKCnkeqVTQLjB4lBUg7LEm8Y7UHXwzrVxmk+f+MBXhw==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "jsonc-parser": "3.2.0", + "magic-string": "0.30.1", + "ora": "5.4.1", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/animations": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-16.2.12.tgz", + "integrity": "sha512-MD0ElviEfAJY8qMOd6/jjSSvtqER2RDAi0lxe6EtUacC1DHCYkaPrKW4vLqY+tmZBg1yf+6n+uS77pXcHHcA3w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + } + }, + "node_modules/@angular/cli": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-16.2.14.tgz", + "integrity": "sha512-0y71jtitigVolm4Rim1b8xPQ+B22cGp4Spef2Wunpqj67UowN6tsZaVuWBEQh4u5xauX8LAHKqsvy37ZPWCc4A==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "@schematics/angular": "16.2.14", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "ini": "4.1.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "npm-package-arg": "10.1.0", + "npm-pick-manifest": "8.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "pacote": "15.2.0", + "resolve": "1.22.2", + "semver": "7.5.4", + "symbol-observable": "4.0.0", + "yargs": "17.7.2" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/common": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-16.2.12.tgz", + "integrity": "sha512-B+WY/cT2VgEaz9HfJitBmgdk4I333XG/ybC98CMC4Wz8E49T8yzivmmxXB3OD6qvjcOB6ftuicl6WBqLbZNg2w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.12.tgz", + "integrity": "sha512-6SMXUgSVekGM7R6l1Z9rCtUGtlg58GFmgbpMCsGf+VXxP468Njw8rjT2YZkf5aEPxEuRpSHhDYjqz7n14cwCXQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true + } + } + }, + "node_modules/@angular/compiler-cli": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.12.tgz", + "integrity": "sha512-pWSrr152562ujh6lsFZR8NfNc5Ljj+zSTQO44DsuB0tZjwEpnRcjJEgzuhGXr+CoiBf+jTSPZKemtSktDk5aaA==", + "dev": true, + "dependencies": { + "@babel/core": "7.23.2", + "@jridgewell/sourcemap-codec": "^1.4.14", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/index.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/compiler": "16.2.12", + "typescript": ">=4.9.3 <5.2" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/core": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.12.tgz", + "integrity": "sha512-GLLlDeke/NjroaLYOks0uyzFVo6HyLl7VOm0K1QpLXnYvW63W9Ql/T3yguRZa7tRkOAeFZ3jw+1wnBD4O8MoUA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.13.0" + } + }, + "node_modules/@angular/forms": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-16.2.12.tgz", + "integrity": "sha512-1Eao89hlBgLR3v8tU91vccn21BBKL06WWxl7zLpQmG6Hun+2jrThgOE4Pf3os4fkkbH4Apj0tWL2fNIWe/blbw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-16.2.12.tgz", + "integrity": "sha512-NnH7ju1iirmVEsUq432DTm0nZBGQsBrU40M3ZeVHMQ2subnGiyUs3QyzDz8+VWLL/T5xTxWLt9BkDn65vgzlIQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/animations": "16.2.12", + "@angular/common": "16.2.12", + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@angular/platform-browser-dynamic": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-16.2.12.tgz", + "integrity": "sha512-ya54jerNgreCVAR278wZavwjrUWImMr2F8yM5n9HBvsMBbFaAQ83anwbOEiHEF2BlR+gJiEBLfpuPRMw20pHqw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/compiler": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12" + } + }, + "node_modules/@angular/router": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-16.2.12.tgz", + "integrity": "sha512-aU6QnYSza005V9P3W6PpkieL56O0IHps96DjqI1RS8yOJUl3THmokqYN4Fm5+HXy4f390FN9i6ftadYQDKeWmA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true + }, + "node_modules/@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", + "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", + "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz", + "integrity": "sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz", + "integrity": "sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz", + "integrity": "sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz", + "integrity": "sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz", + "integrity": "sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz", + "integrity": "sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz", + "integrity": "sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz", + "integrity": "sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz", + "integrity": "sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz", + "integrity": "sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.4", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz", + "integrity": "sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz", + "integrity": "sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/template": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz", + "integrity": "sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz", + "integrity": "sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz", + "integrity": "sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz", + "integrity": "sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz", + "integrity": "sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz", + "integrity": "sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz", + "integrity": "sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz", + "integrity": "sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz", + "integrity": "sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz", + "integrity": "sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz", + "integrity": "sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz", + "integrity": "sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz", + "integrity": "sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", + "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz", + "integrity": "sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz", + "integrity": "sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz", + "integrity": "sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz", + "integrity": "sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz", + "integrity": "sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz", + "integrity": "sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz", + "integrity": "sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz", + "integrity": "sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz", + "integrity": "sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", + "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz", + "integrity": "sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz", + "integrity": "sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz", + "integrity": "sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz", + "integrity": "sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz", + "integrity": "sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.9.tgz", + "integrity": "sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz", + "integrity": "sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz", + "integrity": "sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz", + "integrity": "sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz", + "integrity": "sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz", + "integrity": "sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz", + "integrity": "sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz", + "integrity": "sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz", + "integrity": "sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz", + "integrity": "sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", + "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.6", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", + "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", + "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz", + "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz", + "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz", + "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz", + "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz", + "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz", + "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz", + "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz", + "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz", + "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz", + "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz", + "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz", + "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz", + "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz", + "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz", + "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz", + "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz", + "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz", + "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz", + "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz", + "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz", + "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@fortawesome/angular-fontawesome": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.13.0.tgz", + "integrity": "sha512-gzSPRdveOXNO7NIiMgTyB46aiHG0i98KinnAEqHXi8qzraM/kCcHn/0y3f4MhemX6kftwsFli0IU8RyHmtXlSQ==", + "dependencies": { + "tslib": "^2.4.1" + }, + "peerDependencies": { + "@angular/core": "^16.0.0", + "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" + } + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.2.tgz", + "integrity": "sha512-gBxPg3aVO6J0kpfHNILc+NMhXnqHumFxOmjYCFfOiLZfwhnnfhtsdA2hfJlDnj+8PjAs6kKQPenOTKj3Rf7zHw==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.5.2.tgz", + "integrity": "sha512-hRILoInAx8GNT5IMkrtIt9blOdrqHOnPBH+k70aWUAqPZPgopb9G5EQJFpaBx/S8zp2fC+mPW349Bziuk1o28Q==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.2.tgz", + "integrity": "sha512-5CdaCBGl8Rh9ohNdxeeTMxIj8oc3KNBgIeLMvJosBMdslK/UnEB8rzyDRrbKdL1kDweqBPo4GT9wvnakHWucZw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.2.tgz", + "integrity": "sha512-QWFZYXFE7O1Gr1dTIp+D6UcFUF0qElOnZptpi7PBUMylJh+vFmIedVe1Ir6RM1t2tEQLLSV1k7bR4o92M+uqlw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "dev": true + }, + "node_modules/@ngtools/webpack": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.14.tgz", + "integrity": "sha512-3+zPP3Wir46qrZ3FEiTz5/emSoVHYUCH+WgBmJ57mZCx1qBOYh2VgllnPr/Yusl1sc/jUZjdwq/es/9ZNw+zDQ==", + "dev": true, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "typescript": ">=4.9.3 <5.2", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dev": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", + "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "dev": true, + "dependencies": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", + "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", + "dev": true, + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "bin/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dev": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/move-file/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", + "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", + "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "dev": true, + "dependencies": { + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", + "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "dev": true, + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@schematics/angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-16.2.14.tgz", + "integrity": "sha512-YqIv727l9Qze8/OL6H9mBHc2jVXzAGRNBYnxYWqWhLbfvuVbbldo6NNIIjgv6lrl2LJSdPAAMNOD5m/f6210ug==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "jsonc-parser": "3.2.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@sigstore/bundle": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", + "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", + "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "make-fetch-happen": "^11.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@sigstore/sign/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/@sigstore/tuf": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", + "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0", + "tuf-js": "^1.1.7" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "dev": true + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@tufjs/canonical-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", + "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", + "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "dev": true, + "dependencies": { + "@tufjs/canonical-json": "1.0.0", + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "dev": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.6.tgz", + "integrity": "sha512-3N0FpQTeiWjm+Oo1WUYWguUS7E6JLceiGTriFrG8k5PU7zRLJCzLcWURU3wjMbZGS//a2/LgjsnO3QxIlwxt9g==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "dev": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dev": true, + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ws": { + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vitejs/plugin-basic-ssl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.0.1.tgz", + "integrity": "sha512-pcub+YbFtFhaGRTo1832FQHQSHvMrlb43974e2eS8EKleR3p1cDdkJFPci1UhwkEf1J9Bz+wKBSzqpKp7nNj2A==", + "dev": true, + "engines": { + "node": ">=14.6.0" + }, + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@wessberg/ts-evaluator": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/@wessberg/ts-evaluator/-/ts-evaluator-0.0.27.tgz", + "integrity": "sha512-7gOpVm3yYojUp/Yn7F4ZybJRxyqfMNf0LXK5KJiawbPfL0XTsJV+0mgrEDjOIR6Bi0OYk2Cyg4tjFu1r8MCZaA==", + "deprecated": "this package has been renamed to ts-evaluator. Please install ts-evaluator instead", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "jsdom": "^16.4.0", + "object-path": "^0.11.5", + "tslib": "^2.0.3" + }, + "engines": { + "node": ">=10.1.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/wessberg/ts-evaluator?sponsor=1" + }, + "peerDependencies": { + "typescript": ">=3.2.x || >= 4.x" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@wessberg/ts-evaluator/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", + "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", + "dev": true, + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-loader": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", + "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", + "dev": true, + "dependencies": { + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.7", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.7.tgz", + "integrity": "sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.4", + "core-js-compat": "^3.33.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.4.tgz", + "integrity": "sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz", + "integrity": "sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz", + "integrity": "sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/bonjour-service": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "17.1.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", + "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/core-js-compat": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", + "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/cosmiconfig/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/cosmiconfig/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/critters": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.20.tgz", + "integrity": "sha512-CImNRorKOl5d8TWcnAz5n5izQ6HFsvz29k327/ELy6UFcmbiZNOsinaKvzv16WZR0P6etfSWYzE47C4/56B3Uw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^5.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.2", + "htmlparser2": "^8.0.2", + "postcss": "^8.4.23", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/critters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/critters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/critters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/critters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/critters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-loader": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.8.1.tgz", + "integrity": "sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==", + "dev": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.21", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.3", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", + "dev": true + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "node_modules/di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "dev": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", + "dev": true, + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.749", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.749.tgz", + "integrity": "sha512-LRMMrM9ITOvue0PoBrvNIraVmuDbJV5QC9ierz/z5VilMdPOVMjOtpICNld3PuXuTZ3CHH/UPxX9gHhAPwi+0Q==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/engine.io": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.4.tgz", + "integrity": "sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz", + "integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/enhanced-resolve": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", + "dev": true + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz", + "integrity": "sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==", + "dev": true + }, + "node_modules/esbuild": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz", + "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.17", + "@esbuild/android-arm64": "0.18.17", + "@esbuild/android-x64": "0.18.17", + "@esbuild/darwin-arm64": "0.18.17", + "@esbuild/darwin-x64": "0.18.17", + "@esbuild/freebsd-arm64": "0.18.17", + "@esbuild/freebsd-x64": "0.18.17", + "@esbuild/linux-arm": "0.18.17", + "@esbuild/linux-arm64": "0.18.17", + "@esbuild/linux-ia32": "0.18.17", + "@esbuild/linux-loong64": "0.18.17", + "@esbuild/linux-mips64el": "0.18.17", + "@esbuild/linux-ppc64": "0.18.17", + "@esbuild/linux-riscv64": "0.18.17", + "@esbuild/linux-s390x": "0.18.17", + "@esbuild/linux-x64": "0.18.17", + "@esbuild/netbsd-x64": "0.18.17", + "@esbuild/openbsd-x64": "0.18.17", + "@esbuild/sunos-x64": "0.18.17", + "@esbuild/win32-arm64": "0.18.17", + "@esbuild/win32-ia32": "0.18.17", + "@esbuild/win32-x64": "0.18.17" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.18.17.tgz", + "integrity": "sha512-9OHGcuRzy+I8ziF9FzjfKLWAPbvi0e/metACVg9k6bK+SI4FFxeV6PcZsz8RIVaMD4YNehw+qj6UMR3+qj/EuQ==", + "dev": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "dev": true + }, + "node_modules/express": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-cache-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", + "dev": true, + "dependencies": { + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", + "integrity": "sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/guess-parser": { + "version": "0.4.22", + "resolved": "https://registry.npmjs.org/guess-parser/-/guess-parser-0.4.22.tgz", + "integrity": "sha512-KcUWZ5ACGaBM69SbqwVIuWGoSAgD+9iJnchR9j/IarVI1jHVeXv+bUXBIMeqVMSKt3zrn0Dgf9UpcOEpPBLbSg==", + "dev": true, + "dependencies": { + "@wessberg/ts-evaluator": "0.0.27" + }, + "peerDependencies": { + "typescript": ">=3.7.5" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", + "dev": true, + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "dev": true + }, + "node_modules/hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "dev": true, + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-entities": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", + "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", + "dev": true, + "dependencies": { + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ignore-walk/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true, + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jasmine-core": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.6.0.tgz", + "integrity": "sha512-O236+gd0ZXS8YAjFx8xKaJ94/erqUliEkJTDedyE7iHvv4ZVqi+q+8acJxu05/WJDKm512EUNn809In37nWlAQ==", + "dev": true + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/karma": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.3.tgz", + "integrity": "sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==", + "dev": true, + "dependencies": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.7.2", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/karma-chrome-launcher": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.2.0.tgz", + "integrity": "sha512-rE9RkUPI7I9mAxByQWkGJFXfFD6lE4gC5nPuZdobf/QdTEJI6EU4yIay/cfU/xV4ZxlM5JiTv7zWYgA64NpS5Q==", + "dev": true, + "dependencies": { + "which": "^1.2.1" + } + }, + "node_modules/karma-coverage": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.1.tgz", + "integrity": "sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-jasmine": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", + "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", + "dev": true, + "dependencies": { + "jasmine-core": "^4.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "karma": "^6.0.0" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.1.0.tgz", + "integrity": "sha512-sPQE1+nlsn6Hwb5t+HHwyy0A1FNCVKuL1192b+XNauMYWThz2kweiBVW1DqloRpVvZIJkIoHVB7XRpK78n1xbQ==", + "dev": true, + "peerDependencies": { + "jasmine-core": "^4.0.0 || ^5.0.0", + "karma": "^6.0.0", + "karma-jasmine": "^5.0.0" + } + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/karma/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma/node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "dev": true, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/karma/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/less": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "dev": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.1.0.tgz", + "integrity": "sha512-C+uDBV7kS7W5fJlUjq5mPBeBVhYpTIm5gB09APT9o3n/ILeaXVsiSFTbZpTJCJwQ/Crczfn3DmfQFwxYusWFug==", + "dev": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "dev": true, + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "dev": true, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log4js": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", + "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dev": true, + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/make-fetch-happen/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/make-fetch-happen/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-fetch-happen/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/make-fetch-happen/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dev": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "dev": true, + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dev": true, + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", + "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", + "dev": true, + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dev": true, + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-fetch/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-fetch/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dev": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true, + "optional": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", + "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", + "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "dev": true, + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-bundled": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "dev": true, + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", + "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-packlist": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", + "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", + "dev": true, + "dependencies": { + "ignore-walk": "^6.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-pick-manifest": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", + "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", + "dev": true, + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch": { + "version": "14.0.5", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", + "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "dev": true, + "dependencies": { + "make-fetch-happen": "^11.0.0", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm-registry-fetch/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nwsapi": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", + "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-path": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz", + "integrity": "sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==", + "dev": true, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pacote": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", + "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "dev": true, + "dependencies": { + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^5.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "sigstore": "^1.3.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parse5-html-rewriting-stream": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.0.0.tgz", + "integrity": "sha512-mazCyGWkmCRWDI15Zp+UiCqMp/0dgEmkZRvhlsqqKYr4SsVm/TvnSpD9fCvqCA2zoWJcfRym846ejWBBHRiYEg==", + "dev": true, + "dependencies": { + "entities": "^4.3.0", + "parse5": "^7.0.0", + "parse5-sax-parser": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-7.0.0.tgz", + "integrity": "sha512-5A+v2SNsq8T6/mG3ahcz8ZtQ0OUFTatxPbeidoMB7tkJSGDY3tdfl4MHovtLQHkEn5CGxijNWRQHhRQ6IRpXKg==", + "dev": true, + "dependencies": { + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/piscina": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.0.0.tgz", + "integrity": "sha512-641nAmJS4k4iqpNUqfggqUBUMmlw0ZoM5VZKdQkV2e970Inn3Tk9kroCc1wpsYLD07vCwpys5iY0d3xI/9WkTg==", + "dev": true, + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/pkg-dir": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", + "dev": true, + "dependencies": { + "find-up": "^6.3.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-loader": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.3.tgz", + "integrity": "sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==", + "dev": true, + "dependencies": { + "cosmiconfig": "^8.2.0", + "jiti": "^1.18.2", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-package-json": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", + "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "dev": true, + "dependencies": { + "glob": "^10.2.2", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", + "dev": true, + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/read-package-json/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==", + "dev": true + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.0.tgz", + "integrity": "sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==", + "dev": true + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "dev": true, + "dependencies": { + "is-core-module": "^2.11.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/sass": { + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", + "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.2.tgz", + "integrity": "sha512-CQbKl57kdEv+KDLquhC+gE3pXt74LEAzm+tzywcA0/aHZuub8wTErbjAoNI57rPUWRYRNC5WUnNl8eGJNbDdwg==", + "dev": true, + "dependencies": { + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", + "dev": true, + "optional": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "dev": true, + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sigstore": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", + "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "@sigstore/sign": "^1.0.0", + "@sigstore/tuf": "^1.0.3", + "make-fetch-happen": "^11.0.1" + }, + "bin": { + "sigstore": "bin/sigstore.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sigstore/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sigstore/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/sigstore/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socket.io": { + "version": "4.7.5", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz", + "integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.4.tgz", + "integrity": "sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg==", + "dev": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.11.0" + } + }, + "node_modules/socket.io-adapter/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dev": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dev": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.1.tgz", + "integrity": "sha512-oqXpzDIByKONVY8g1NUPOTQhe0UTU5bWUl32GSkqK2LjJj0HmwTMVKxcUip0RgAYhY1mqgOxjbQM48a0mmeNfA==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", + "dev": true + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/ssri": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ssri/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/streamroller": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/terser": { + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.30.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", + "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/tuf-js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", + "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "dev": true, + "dependencies": { + "@tufjs/models": "1.0.4", + "debug": "^4.3.4", + "make-fetch-happen": "^11.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/tuf-js/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", + "dev": true + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-cookie": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.6.tgz", + "integrity": "sha512-s+BZr7/9BUG6Kg7jGGcOY/4XJcP+iZRFdF3q4FPTfRSP83ivLWF94OcH8PrzGmnS8Ab9qP7ENu/ikLwNFsIafA==", + "engines": { + "node": ">=14" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.37", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.37.tgz", + "integrity": "sha512-xV8kqRKM+jhMvcHWUKthV9fNebIzrNy//2O9ZwWcfiBFR5f25XVZPLlEajk/sf3Ra15V92isyQqnIEXRDaZWEA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dev": true, + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "dev": true, + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz", + "integrity": "sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/watchpack": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.1.2.tgz", + "integrity": "sha512-Wu+EHmX326YPYUpQLKmKbTyZZJIB8/n6R09pTmB03kJmnMsVPTo9COzHZFr01txwaCAuZvfBJE4ZCHRcKs5JaQ==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.12", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server": { + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", + "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", + "dev": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.5", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/webpack-dev-middleware": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/webpack-merge": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", + "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "dev": true, + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zone.js": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.3.tgz", + "integrity": "sha512-MKPbmZie6fASC/ps4dkmIhaT5eonHkEt6eAy80K42tAm0G2W+AahLJjbfi6X9NPdciOE9GRFTTM8u2IiF6O3ww==", + "dependencies": { + "tslib": "^2.3.0" + } + } + } +} diff --git a/section8/eazybank-end/bank-app-ui/package.json b/section8/eazybank-end/bank-app-ui/package.json new file mode 100644 index 00000000..841628da --- /dev/null +++ b/section8/eazybank-end/bank-app-ui/package.json @@ -0,0 +1,44 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build", + "watch": "ng build --watch --configuration development", + "test": "ng test" + }, + "private": true, + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } +} diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/app-routing.module.ts b/section8/eazybank-end/bank-app-ui/src/app/app-routing.module.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/app-routing.module.ts rename to section8/eazybank-end/bank-app-ui/src/app/app-routing.module.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.css b/section8/eazybank-end/bank-app-ui/src/app/app.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.css rename to section8/eazybank-end/bank-app-ui/src/app/app.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.html b/section8/eazybank-end/bank-app-ui/src/app/app.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.html rename to section8/eazybank-end/bank-app-ui/src/app/app.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.ts b/section8/eazybank-end/bank-app-ui/src/app/app.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/app.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/app.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/app.module.ts b/section8/eazybank-end/bank-app-ui/src/app/app.module.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/app.module.ts rename to section8/eazybank-end/bank-app-ui/src/app/app.module.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/account/account.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/account/account.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/account/account.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/account/account.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/account/account.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/account/account.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/account/account.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/balance/balance.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/balance/balance.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/balance/balance.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/balance/balance.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/balance/balance.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/balance/balance.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/balance/balance.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/cards/cards.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/cards/cards.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/cards/cards.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/cards/cards.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/cards/cards.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/cards/cards.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/cards/cards.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/contact/contact.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/contact/contact.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/contact/contact.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/contact/contact.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/contact/contact.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/contact/contact.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/contact/contact.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/contact/contact.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/contact/contact.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/contact/contact.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/contact/contact.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/contact/contact.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/dashboard/dashboard.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/dashboard/dashboard.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/dashboard/dashboard.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/dashboard/dashboard.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/dashboard/dashboard.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/dashboard/dashboard.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/dashboard/dashboard.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/dashboard/dashboard.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/dashboard/dashboard.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/dashboard/dashboard.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/dashboard/dashboard.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/dashboard/dashboard.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/header/header.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/header/header.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/header/header.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/header/header.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/header/header.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/header/header.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/header/header.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/home/home.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/home/home.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/home/home.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/home/home.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/home/home.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/home/home.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/home/home.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/loans/loans.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/loans/loans.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/loans/loans.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/loans/loans.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/loans/loans.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/loans/loans.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/loans/loans.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/login/login.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/login/login.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/login/login.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/login/login.component.html diff --git a/section6/bank-app-ui/src/app/components/login/login.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/login/login.component.ts similarity index 95% rename from section6/bank-app-ui/src/app/components/login/login.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/login/login.component.ts index cdd18958..8b314c8b 100644 --- a/section6/bank-app-ui/src/app/components/login/login.component.ts +++ b/section8/eazybank-end/bank-app-ui/src/app/components/login/login.component.ts @@ -27,10 +27,9 @@ export class LoginComponent implements OnInit { this.loginService.validateLoginDetails(this.model).subscribe( responseData => { this.model = responseData.body; - this.model.authStatus = 'AUTH'; window.sessionStorage.setItem("userdetails",JSON.stringify(this.model)); - let xsrf = getCookie('XSRF-TOKEN')!; + let xsrf = getCookie("XSRF-TOKEN")!; window.sessionStorage.setItem("XSRF-TOKEN",xsrf); this.router.navigate(['dashboard']); }); diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/logout/logout.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/logout/logout.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/logout/logout.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/logout/logout.component.html diff --git a/section6/bank-app-ui/src/app/components/logout/logout.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/logout/logout.component.ts similarity index 80% rename from section6/bank-app-ui/src/app/components/logout/logout.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/logout/logout.component.ts index f43d2c0d..85748038 100644 --- a/section6/bank-app-ui/src/app/components/logout/logout.component.ts +++ b/section8/eazybank-end/bank-app-ui/src/app/components/logout/logout.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { LoginService } from 'src/app/services/login/login.service'; import { Router } from '@angular/router'; import { User } from 'src/app/model/user.model'; @@ -17,7 +16,7 @@ export class LogoutComponent implements OnInit { ngOnInit(): void { window.sessionStorage.setItem("userdetails",""); - window.sessionStorage.setItem("XSRF-TOKEN",""); + // window.sessionStorage.setItem("XSRF-TOKEN",""); this.router.navigate(['/login']); } diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.css b/section8/eazybank-end/bank-app-ui/src/app/components/notices/notices.component.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.css rename to section8/eazybank-end/bank-app-ui/src/app/components/notices/notices.component.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.html b/section8/eazybank-end/bank-app-ui/src/app/components/notices/notices.component.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.html rename to section8/eazybank-end/bank-app-ui/src/app/components/notices/notices.component.html diff --git a/section_13/bank-app-ui/src/app/components/notices/notices.component.ts b/section8/eazybank-end/bank-app-ui/src/app/components/notices/notices.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/notices/notices.component.ts rename to section8/eazybank-end/bank-app-ui/src/app/components/notices/notices.component.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/constants/app.constants.ts b/section8/eazybank-end/bank-app-ui/src/app/constants/app.constants.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/constants/app.constants.ts rename to section8/eazybank-end/bank-app-ui/src/app/constants/app.constants.ts diff --git a/section6/bank-app-ui/src/app/interceptors/app.request.interceptor.ts b/section8/eazybank-end/bank-app-ui/src/app/interceptors/app.request.interceptor.ts similarity index 95% rename from section6/bank-app-ui/src/app/interceptors/app.request.interceptor.ts rename to section8/eazybank-end/bank-app-ui/src/app/interceptors/app.request.interceptor.ts index 9bf3a4af..3128ae1b 100644 --- a/section6/bank-app-ui/src/app/interceptors/app.request.interceptor.ts +++ b/section8/eazybank-end/bank-app-ui/src/app/interceptors/app.request.interceptor.ts @@ -18,10 +18,12 @@ export class XhrInterceptor implements HttpInterceptor { if(this.user && this.user.password && this.user.email){ httpHeaders = httpHeaders.append('Authorization', 'Basic ' + window.btoa(this.user.email + ':' + this.user.password)); } + let xsrf = sessionStorage.getItem('XSRF-TOKEN'); if(xsrf){ - httpHeaders = httpHeaders.append('X-XSRF-TOKEN', xsrf); + httpHeaders = httpHeaders.append('X-XSRF-TOKEN', xsrf); } + httpHeaders = httpHeaders.append('X-Requested-With', 'XMLHttpRequest'); const xhr = req.clone({ headers: httpHeaders diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/model/account.model.ts b/section8/eazybank-end/bank-app-ui/src/app/model/account.model.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/model/account.model.ts rename to section8/eazybank-end/bank-app-ui/src/app/model/account.model.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/model/account.transactions.model.ts b/section8/eazybank-end/bank-app-ui/src/app/model/account.transactions.model.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/model/account.transactions.model.ts rename to section8/eazybank-end/bank-app-ui/src/app/model/account.transactions.model.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/model/cards.model.ts b/section8/eazybank-end/bank-app-ui/src/app/model/cards.model.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/model/cards.model.ts rename to section8/eazybank-end/bank-app-ui/src/app/model/cards.model.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/model/contact.model.ts b/section8/eazybank-end/bank-app-ui/src/app/model/contact.model.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/model/contact.model.ts rename to section8/eazybank-end/bank-app-ui/src/app/model/contact.model.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/model/loans.model.ts b/section8/eazybank-end/bank-app-ui/src/app/model/loans.model.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/model/loans.model.ts rename to section8/eazybank-end/bank-app-ui/src/app/model/loans.model.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/model/user.model.ts b/section8/eazybank-end/bank-app-ui/src/app/model/user.model.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/model/user.model.ts rename to section8/eazybank-end/bank-app-ui/src/app/model/user.model.ts diff --git a/section8/eazybank-end/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section8/eazybank-end/bank-app-ui/src/app/routeguards/auth.routeguard.ts new file mode 100644 index 00000000..0eaee8f8 --- /dev/null +++ b/section8/eazybank-end/bank-app-ui/src/app/routeguards/auth.routeguard.ts @@ -0,0 +1,27 @@ +import { Injectable,inject } from '@angular/core'; +import { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot,Router } from '@angular/router'; +import { User } from '../model/user.model'; + +@Injectable() +export class AuthActivateRouteGuard { + user = new User(); + + constructor(private router: Router){ + + } + + canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ + if(sessionStorage.getItem('userdetails')){ + this.user = JSON.parse(sessionStorage.getItem('userdetails')!); + } + if(this.user.email.length===0){ + this.router.navigate(['login']); + } + return this.user.email.length!==0?true:false; + } + +} + +export const AuthGuard: CanActivateFn = (next: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean => { + return inject(AuthActivateRouteGuard).canActivate(next, state); + } \ No newline at end of file diff --git a/section9/bank-app-ui/src/app/services/dashboard/dashboard.service.ts b/section8/eazybank-end/bank-app-ui/src/app/services/dashboard/dashboard.service.ts similarity index 93% rename from section9/bank-app-ui/src/app/services/dashboard/dashboard.service.ts rename to section8/eazybank-end/bank-app-ui/src/app/services/dashboard/dashboard.service.ts index dafc19ca..6693ed64 100644 --- a/section9/bank-app-ui/src/app/services/dashboard/dashboard.service.ts +++ b/section8/eazybank-end/bank-app-ui/src/app/services/dashboard/dashboard.service.ts @@ -2,7 +2,6 @@ import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { AppConstants } from "../../constants/app.constants"; import { environment } from '../../../environments/environment'; -import { User } from '../../model/user.model'; import { Contact } from '../../model/contact.model'; @Injectable({ @@ -33,7 +32,7 @@ export class DashboardService { } saveMessage(contact : Contact){ - return this.http.post(environment.rooturl + AppConstants.CONTACT_API_URL,contact,{ observe: 'response'}); + return this.http.post(environment.rooturl + AppConstants.CONTACT_API_URL,contact,{ observe: 'response',withCredentials: true }); } } diff --git a/section_13/bank-app-ui/src/app/services/login/login.service.ts b/section8/eazybank-end/bank-app-ui/src/app/services/login/login.service.ts similarity index 100% rename from section_13/bank-app-ui/src/app/services/login/login.service.ts rename to section8/eazybank-end/bank-app-ui/src/app/services/login/login.service.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/.gitkeep b/section8/eazybank-end/bank-app-ui/src/assets/.gitkeep similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/.gitkeep rename to section8/eazybank-end/bank-app-ui/src/assets/.gitkeep diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/css/bootstrap.css b/section8/eazybank-end/bank-app-ui/src/assets/css/bootstrap.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/css/bootstrap.css rename to section8/eazybank-end/bank-app-ui/src/assets/css/bootstrap.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/css/font-awesome.css b/section8/eazybank-end/bank-app-ui/src/assets/css/font-awesome.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/css/font-awesome.css rename to section8/eazybank-end/bank-app-ui/src/assets/css/font-awesome.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/FontAwesome.otf b/section8/eazybank-end/bank-app-ui/src/assets/fonts/FontAwesome.otf similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/FontAwesome.otf rename to section8/eazybank-end/bank-app-ui/src/assets/fonts/FontAwesome.otf diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot b/section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot rename to section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf b/section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf rename to section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff b/section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff rename to section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 b/section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 rename to section8/eazybank-end/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/assets/images/logo.png b/section8/eazybank-end/bank-app-ui/src/assets/images/logo.png similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/assets/images/logo.png rename to section8/eazybank-end/bank-app-ui/src/assets/images/logo.png diff --git a/section_13/bank-app-ui/src/environments/environment.development.ts b/section8/eazybank-end/bank-app-ui/src/environments/environment.development.ts similarity index 100% rename from section_13/bank-app-ui/src/environments/environment.development.ts rename to section8/eazybank-end/bank-app-ui/src/environments/environment.development.ts diff --git a/section_13/bank-app-ui/src/environments/environment.ts b/section8/eazybank-end/bank-app-ui/src/environments/environment.ts similarity index 100% rename from section_13/bank-app-ui/src/environments/environment.ts rename to section8/eazybank-end/bank-app-ui/src/environments/environment.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/favicon.ico b/section8/eazybank-end/bank-app-ui/src/favicon.ico similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/favicon.ico rename to section8/eazybank-end/bank-app-ui/src/favicon.ico diff --git a/section_10/bank-app-ui/src/index.html b/section8/eazybank-end/bank-app-ui/src/index.html similarity index 94% rename from section_10/bank-app-ui/src/index.html rename to section8/eazybank-end/bank-app-ui/src/index.html index 27a48fbf..17b6fd0e 100644 --- a/section_10/bank-app-ui/src/index.html +++ b/section8/eazybank-end/bank-app-ui/src/index.html @@ -1,4 +1,3 @@ - diff --git a/section_13/bank-app-ui/src/main.ts b/section8/eazybank-end/bank-app-ui/src/main.ts similarity index 100% rename from section_13/bank-app-ui/src/main.ts rename to section8/eazybank-end/bank-app-ui/src/main.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/styles.css b/section8/eazybank-end/bank-app-ui/src/styles.css similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/styles.css rename to section8/eazybank-end/bank-app-ui/src/styles.css diff --git a/section_13/bank-app-ui/tsconfig.app.json b/section8/eazybank-end/bank-app-ui/tsconfig.app.json similarity index 100% rename from section_13/bank-app-ui/tsconfig.app.json rename to section8/eazybank-end/bank-app-ui/tsconfig.app.json diff --git a/section_13/bank-app-ui/tsconfig.json b/section8/eazybank-end/bank-app-ui/tsconfig.json similarity index 100% rename from section_13/bank-app-ui/tsconfig.json rename to section8/eazybank-end/bank-app-ui/tsconfig.json diff --git a/section_13/bank-app-ui/tsconfig.spec.json b/section8/eazybank-end/bank-app-ui/tsconfig.spec.json similarity index 100% rename from section_13/bank-app-ui/tsconfig.spec.json rename to section8/eazybank-end/bank-app-ui/tsconfig.spec.json diff --git a/section9/bank-app-ui/.editorconfig b/section8/eazybank-start/bank-app-ui/.editorconfig similarity index 100% rename from section9/bank-app-ui/.editorconfig rename to section8/eazybank-start/bank-app-ui/.editorconfig diff --git a/section6/bank-app-ui/.gitignore b/section8/eazybank-start/bank-app-ui/.gitignore similarity index 100% rename from section6/bank-app-ui/.gitignore rename to section8/eazybank-start/bank-app-ui/.gitignore diff --git a/section6/bank-app-ui/README.md b/section8/eazybank-start/bank-app-ui/README.md similarity index 96% rename from section6/bank-app-ui/README.md rename to section8/eazybank-start/bank-app-ui/README.md index cf38c4ab..1b6d3f87 100644 --- a/section6/bank-app-ui/README.md +++ b/section8/eazybank-start/bank-app-ui/README.md @@ -1,6 +1,6 @@ # BankAppUi -This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.1.2. +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.2.3. ## Development server diff --git a/section_10/bank-app-ui/angular.json b/section8/eazybank-start/bank-app-ui/angular.json similarity index 88% rename from section_10/bank-app-ui/angular.json rename to section8/eazybank-start/bank-app-ui/angular.json index 98fbf15f..e4993108 100644 --- a/section_10/bank-app-ui/angular.json +++ b/section8/eazybank-start/bank-app-ui/angular.json @@ -16,7 +16,9 @@ "outputPath": "dist/bank-app-ui", "index": "src/index.html", "main": "src/main.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js" + ], "tsConfig": "tsconfig.app.json", "assets": [ "src/favicon.ico", @@ -42,12 +44,6 @@ "maximumError": "4kb" } ], - "fileReplacements": [ - { - "replace": "src/environments/environment.ts", - "with": "src/environments/environment.prod.ts" - } - ], "outputHashing": "all" }, "development": { @@ -56,7 +52,13 @@ "vendorChunk": true, "extractLicenses": false, "sourceMap": true, - "namedChunks": true + "namedChunks": true, + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.development.ts" + } + ] } }, "defaultConfiguration": "production" @@ -82,16 +84,16 @@ "test": { "builder": "@angular-devkit/build-angular:karma", "options": { - "main": "src/test.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js", + "zone.js/testing" + ], "tsConfig": "tsconfig.spec.json", - "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ - "node_modules/bootstrap/dist/css/bootstrap.min.css", "src/styles.css" ], "scripts": [] diff --git a/section8/eazybank-start/bank-app-ui/package-lock.json b/section8/eazybank-start/bank-app-ui/package-lock.json new file mode 100644 index 00000000..dae7e8aa --- /dev/null +++ b/section8/eazybank-start/bank-app-ui/package-lock.json @@ -0,0 +1,13038 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "bank-app-ui", + "version": "0.0.0", + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.14.tgz", + "integrity": "sha512-eSdONEV5dbtLNiOMBy9Ue9DdJ1ct6dH9RdZfYiedq6VZn0lejePAjY36MYVXgq2jTE+v/uIiaNy7caea5pt55A==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.14.tgz", + "integrity": "sha512-bXQ6i7QPhwmYHuh+DSNkBhjTIHQF0C6fqZEg2ApJA3NmnzE98oQnmJ9AnGnAkdf1Mjn3xi2gxoZWPDDxGEINMw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "2.2.1", + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/build-webpack": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@babel/core": "7.22.9", + "@babel/generator": "7.22.9", + "@babel/helper-annotate-as-pure": "7.22.5", + "@babel/helper-split-export-declaration": "7.22.6", + "@babel/plugin-proposal-async-generator-functions": "7.20.7", + "@babel/plugin-transform-async-to-generator": "7.22.5", + "@babel/plugin-transform-runtime": "7.22.9", + "@babel/preset-env": "7.22.9", + "@babel/runtime": "7.22.6", + "@babel/template": "7.22.5", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "16.2.14", + "@vitejs/plugin-basic-ssl": "1.0.1", + "ansi-colors": "4.1.3", + "autoprefixer": "10.4.14", + "babel-loader": "9.1.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.21.5", + "chokidar": "3.5.3", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.20", + "css-loader": "6.8.1", + "esbuild-wasm": "0.18.17", + "fast-glob": "3.3.1", + "guess-parser": "0.4.22", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.3", + "less-loader": "11.1.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "magic-string": "0.30.1", + "mini-css-extract-plugin": "2.7.6", + "mrmime": "1.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "7.0.0", + "picomatch": "2.3.1", + "piscina": "4.0.0", + "postcss": "8.4.31", + "postcss-loader": "7.3.3", + "resolve-url-loader": "5.0.0", + "rxjs": "7.8.1", + "sass": "1.64.1", + "sass-loader": "13.3.2", + "semver": "7.5.4", + "source-map-loader": "4.0.1", + "source-map-support": "0.5.21", + "terser": "5.19.2", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.6.1", + "vite": "4.5.3", + "webpack": "5.88.2", + "webpack-dev-middleware": "6.1.2", + "webpack-dev-server": "4.15.1", + "webpack-merge": "5.9.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.18.17" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "@angular/localize": "^16.0.0", + "@angular/platform-server": "^16.0.0", + "@angular/service-worker": "^16.0.0", + "jest": "^29.5.0", + "jest-environment-jsdom": "^29.5.0", + "karma": "^6.3.0", + "ng-packagr": "^16.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.9.3 <5.2" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/platform-server": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "jest": { + "optional": true + }, + "jest-environment-jsdom": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "dev": true + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.14.tgz", + "integrity": "sha512-f+ZTCjOoA1SCQEaX3L/63ubqr/vlHkwDXAtKjBsQgyz6srnETcjy96Us5k/LoK7/hPc85zFneqLinfqOMVWHJQ==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/core": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.14.tgz", + "integrity": "sha512-Ui14/d2+p7lnmXlK/AX2ieQEGInBV75lonNtPQgwrYgskF8ufCuN0DyVZQUy9fJDkC+xQxbJyYrby/BS0R0e7w==", + "dev": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-16.2.14.tgz", + "integrity": "sha512-B6LQKInCT8w5zx5Pbroext5eFFRTCJdTwHN8GhcVS8IeKCnkeqVTQLjB4lBUg7LEm8Y7UHXwzrVxmk+f+MBXhw==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "jsonc-parser": "3.2.0", + "magic-string": "0.30.1", + "ora": "5.4.1", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/animations": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-16.2.12.tgz", + "integrity": "sha512-MD0ElviEfAJY8qMOd6/jjSSvtqER2RDAi0lxe6EtUacC1DHCYkaPrKW4vLqY+tmZBg1yf+6n+uS77pXcHHcA3w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + } + }, + "node_modules/@angular/cli": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-16.2.14.tgz", + "integrity": "sha512-0y71jtitigVolm4Rim1b8xPQ+B22cGp4Spef2Wunpqj67UowN6tsZaVuWBEQh4u5xauX8LAHKqsvy37ZPWCc4A==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "@schematics/angular": "16.2.14", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "ini": "4.1.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "npm-package-arg": "10.1.0", + "npm-pick-manifest": "8.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "pacote": "15.2.0", + "resolve": "1.22.2", + "semver": "7.5.4", + "symbol-observable": "4.0.0", + "yargs": "17.7.2" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/common": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-16.2.12.tgz", + "integrity": "sha512-B+WY/cT2VgEaz9HfJitBmgdk4I333XG/ybC98CMC4Wz8E49T8yzivmmxXB3OD6qvjcOB6ftuicl6WBqLbZNg2w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.12.tgz", + "integrity": "sha512-6SMXUgSVekGM7R6l1Z9rCtUGtlg58GFmgbpMCsGf+VXxP468Njw8rjT2YZkf5aEPxEuRpSHhDYjqz7n14cwCXQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true + } + } + }, + "node_modules/@angular/compiler-cli": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.12.tgz", + "integrity": "sha512-pWSrr152562ujh6lsFZR8NfNc5Ljj+zSTQO44DsuB0tZjwEpnRcjJEgzuhGXr+CoiBf+jTSPZKemtSktDk5aaA==", + "dev": true, + "dependencies": { + "@babel/core": "7.23.2", + "@jridgewell/sourcemap-codec": "^1.4.14", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/index.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/compiler": "16.2.12", + "typescript": ">=4.9.3 <5.2" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/core": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.12.tgz", + "integrity": "sha512-GLLlDeke/NjroaLYOks0uyzFVo6HyLl7VOm0K1QpLXnYvW63W9Ql/T3yguRZa7tRkOAeFZ3jw+1wnBD4O8MoUA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.13.0" + } + }, + "node_modules/@angular/forms": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-16.2.12.tgz", + "integrity": "sha512-1Eao89hlBgLR3v8tU91vccn21BBKL06WWxl7zLpQmG6Hun+2jrThgOE4Pf3os4fkkbH4Apj0tWL2fNIWe/blbw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-16.2.12.tgz", + "integrity": "sha512-NnH7ju1iirmVEsUq432DTm0nZBGQsBrU40M3ZeVHMQ2subnGiyUs3QyzDz8+VWLL/T5xTxWLt9BkDn65vgzlIQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/animations": "16.2.12", + "@angular/common": "16.2.12", + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@angular/platform-browser-dynamic": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-16.2.12.tgz", + "integrity": "sha512-ya54jerNgreCVAR278wZavwjrUWImMr2F8yM5n9HBvsMBbFaAQ83anwbOEiHEF2BlR+gJiEBLfpuPRMw20pHqw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/compiler": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12" + } + }, + "node_modules/@angular/router": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-16.2.12.tgz", + "integrity": "sha512-aU6QnYSza005V9P3W6PpkieL56O0IHps96DjqI1RS8yOJUl3THmokqYN4Fm5+HXy4f390FN9i6ftadYQDKeWmA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true + }, + "node_modules/@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", + "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", + "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz", + "integrity": "sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz", + "integrity": "sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz", + "integrity": "sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz", + "integrity": "sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz", + "integrity": "sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz", + "integrity": "sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz", + "integrity": "sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz", + "integrity": "sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz", + "integrity": "sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz", + "integrity": "sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.4", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz", + "integrity": "sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz", + "integrity": "sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/template": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz", + "integrity": "sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz", + "integrity": "sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz", + "integrity": "sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz", + "integrity": "sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz", + "integrity": "sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz", + "integrity": "sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz", + "integrity": "sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz", + "integrity": "sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz", + "integrity": "sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz", + "integrity": "sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz", + "integrity": "sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz", + "integrity": "sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz", + "integrity": "sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", + "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz", + "integrity": "sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz", + "integrity": "sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz", + "integrity": "sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz", + "integrity": "sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz", + "integrity": "sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz", + "integrity": "sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz", + "integrity": "sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz", + "integrity": "sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz", + "integrity": "sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", + "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz", + "integrity": "sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz", + "integrity": "sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz", + "integrity": "sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz", + "integrity": "sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz", + "integrity": "sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.9.tgz", + "integrity": "sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz", + "integrity": "sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz", + "integrity": "sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz", + "integrity": "sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz", + "integrity": "sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz", + "integrity": "sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz", + "integrity": "sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz", + "integrity": "sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz", + "integrity": "sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz", + "integrity": "sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", + "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.6", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", + "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", + "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz", + "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz", + "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz", + "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz", + "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz", + "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz", + "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz", + "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz", + "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz", + "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz", + "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz", + "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz", + "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz", + "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz", + "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz", + "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz", + "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz", + "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz", + "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz", + "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz", + "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz", + "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@fortawesome/angular-fontawesome": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.13.0.tgz", + "integrity": "sha512-gzSPRdveOXNO7NIiMgTyB46aiHG0i98KinnAEqHXi8qzraM/kCcHn/0y3f4MhemX6kftwsFli0IU8RyHmtXlSQ==", + "dependencies": { + "tslib": "^2.4.1" + }, + "peerDependencies": { + "@angular/core": "^16.0.0", + "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" + } + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.2.tgz", + "integrity": "sha512-gBxPg3aVO6J0kpfHNILc+NMhXnqHumFxOmjYCFfOiLZfwhnnfhtsdA2hfJlDnj+8PjAs6kKQPenOTKj3Rf7zHw==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.5.2.tgz", + "integrity": "sha512-hRILoInAx8GNT5IMkrtIt9blOdrqHOnPBH+k70aWUAqPZPgopb9G5EQJFpaBx/S8zp2fC+mPW349Bziuk1o28Q==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.2.tgz", + "integrity": "sha512-5CdaCBGl8Rh9ohNdxeeTMxIj8oc3KNBgIeLMvJosBMdslK/UnEB8rzyDRrbKdL1kDweqBPo4GT9wvnakHWucZw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.2.tgz", + "integrity": "sha512-QWFZYXFE7O1Gr1dTIp+D6UcFUF0qElOnZptpi7PBUMylJh+vFmIedVe1Ir6RM1t2tEQLLSV1k7bR4o92M+uqlw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "dev": true + }, + "node_modules/@ngtools/webpack": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.14.tgz", + "integrity": "sha512-3+zPP3Wir46qrZ3FEiTz5/emSoVHYUCH+WgBmJ57mZCx1qBOYh2VgllnPr/Yusl1sc/jUZjdwq/es/9ZNw+zDQ==", + "dev": true, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "typescript": ">=4.9.3 <5.2", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dev": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", + "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "dev": true, + "dependencies": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", + "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", + "dev": true, + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "bin/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dev": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/move-file/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", + "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", + "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "dev": true, + "dependencies": { + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", + "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "dev": true, + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@schematics/angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-16.2.14.tgz", + "integrity": "sha512-YqIv727l9Qze8/OL6H9mBHc2jVXzAGRNBYnxYWqWhLbfvuVbbldo6NNIIjgv6lrl2LJSdPAAMNOD5m/f6210ug==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "jsonc-parser": "3.2.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@sigstore/bundle": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", + "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", + "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "make-fetch-happen": "^11.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@sigstore/sign/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/@sigstore/tuf": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", + "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0", + "tuf-js": "^1.1.7" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "dev": true + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@tufjs/canonical-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", + "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", + "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "dev": true, + "dependencies": { + "@tufjs/canonical-json": "1.0.0", + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "dev": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.6.tgz", + "integrity": "sha512-3N0FpQTeiWjm+Oo1WUYWguUS7E6JLceiGTriFrG8k5PU7zRLJCzLcWURU3wjMbZGS//a2/LgjsnO3QxIlwxt9g==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "dev": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dev": true, + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ws": { + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vitejs/plugin-basic-ssl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.0.1.tgz", + "integrity": "sha512-pcub+YbFtFhaGRTo1832FQHQSHvMrlb43974e2eS8EKleR3p1cDdkJFPci1UhwkEf1J9Bz+wKBSzqpKp7nNj2A==", + "dev": true, + "engines": { + "node": ">=14.6.0" + }, + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@wessberg/ts-evaluator": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/@wessberg/ts-evaluator/-/ts-evaluator-0.0.27.tgz", + "integrity": "sha512-7gOpVm3yYojUp/Yn7F4ZybJRxyqfMNf0LXK5KJiawbPfL0XTsJV+0mgrEDjOIR6Bi0OYk2Cyg4tjFu1r8MCZaA==", + "deprecated": "this package has been renamed to ts-evaluator. Please install ts-evaluator instead", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "jsdom": "^16.4.0", + "object-path": "^0.11.5", + "tslib": "^2.0.3" + }, + "engines": { + "node": ">=10.1.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/wessberg/ts-evaluator?sponsor=1" + }, + "peerDependencies": { + "typescript": ">=3.2.x || >= 4.x" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@wessberg/ts-evaluator/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", + "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", + "dev": true, + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-loader": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", + "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", + "dev": true, + "dependencies": { + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.7", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.7.tgz", + "integrity": "sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.4", + "core-js-compat": "^3.33.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.4.tgz", + "integrity": "sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz", + "integrity": "sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz", + "integrity": "sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/bonjour-service": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "17.1.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", + "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/core-js-compat": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", + "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/cosmiconfig/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/cosmiconfig/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/critters": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.20.tgz", + "integrity": "sha512-CImNRorKOl5d8TWcnAz5n5izQ6HFsvz29k327/ELy6UFcmbiZNOsinaKvzv16WZR0P6etfSWYzE47C4/56B3Uw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^5.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.2", + "htmlparser2": "^8.0.2", + "postcss": "^8.4.23", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/critters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/critters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/critters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/critters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/critters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-loader": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.8.1.tgz", + "integrity": "sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==", + "dev": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.21", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.3", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", + "dev": true + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "node_modules/di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "dev": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", + "dev": true, + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.749", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.749.tgz", + "integrity": "sha512-LRMMrM9ITOvue0PoBrvNIraVmuDbJV5QC9ierz/z5VilMdPOVMjOtpICNld3PuXuTZ3CHH/UPxX9gHhAPwi+0Q==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/engine.io": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.4.tgz", + "integrity": "sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz", + "integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/enhanced-resolve": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", + "dev": true + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz", + "integrity": "sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==", + "dev": true + }, + "node_modules/esbuild": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz", + "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.17", + "@esbuild/android-arm64": "0.18.17", + "@esbuild/android-x64": "0.18.17", + "@esbuild/darwin-arm64": "0.18.17", + "@esbuild/darwin-x64": "0.18.17", + "@esbuild/freebsd-arm64": "0.18.17", + "@esbuild/freebsd-x64": "0.18.17", + "@esbuild/linux-arm": "0.18.17", + "@esbuild/linux-arm64": "0.18.17", + "@esbuild/linux-ia32": "0.18.17", + "@esbuild/linux-loong64": "0.18.17", + "@esbuild/linux-mips64el": "0.18.17", + "@esbuild/linux-ppc64": "0.18.17", + "@esbuild/linux-riscv64": "0.18.17", + "@esbuild/linux-s390x": "0.18.17", + "@esbuild/linux-x64": "0.18.17", + "@esbuild/netbsd-x64": "0.18.17", + "@esbuild/openbsd-x64": "0.18.17", + "@esbuild/sunos-x64": "0.18.17", + "@esbuild/win32-arm64": "0.18.17", + "@esbuild/win32-ia32": "0.18.17", + "@esbuild/win32-x64": "0.18.17" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.18.17.tgz", + "integrity": "sha512-9OHGcuRzy+I8ziF9FzjfKLWAPbvi0e/metACVg9k6bK+SI4FFxeV6PcZsz8RIVaMD4YNehw+qj6UMR3+qj/EuQ==", + "dev": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "dev": true + }, + "node_modules/express": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-cache-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", + "dev": true, + "dependencies": { + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", + "integrity": "sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/guess-parser": { + "version": "0.4.22", + "resolved": "https://registry.npmjs.org/guess-parser/-/guess-parser-0.4.22.tgz", + "integrity": "sha512-KcUWZ5ACGaBM69SbqwVIuWGoSAgD+9iJnchR9j/IarVI1jHVeXv+bUXBIMeqVMSKt3zrn0Dgf9UpcOEpPBLbSg==", + "dev": true, + "dependencies": { + "@wessberg/ts-evaluator": "0.0.27" + }, + "peerDependencies": { + "typescript": ">=3.7.5" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", + "dev": true, + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "dev": true + }, + "node_modules/hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "dev": true, + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-entities": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", + "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", + "dev": true, + "dependencies": { + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ignore-walk/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true, + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jasmine-core": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.6.0.tgz", + "integrity": "sha512-O236+gd0ZXS8YAjFx8xKaJ94/erqUliEkJTDedyE7iHvv4ZVqi+q+8acJxu05/WJDKm512EUNn809In37nWlAQ==", + "dev": true + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/karma": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.3.tgz", + "integrity": "sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==", + "dev": true, + "dependencies": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.7.2", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/karma-chrome-launcher": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.2.0.tgz", + "integrity": "sha512-rE9RkUPI7I9mAxByQWkGJFXfFD6lE4gC5nPuZdobf/QdTEJI6EU4yIay/cfU/xV4ZxlM5JiTv7zWYgA64NpS5Q==", + "dev": true, + "dependencies": { + "which": "^1.2.1" + } + }, + "node_modules/karma-coverage": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.1.tgz", + "integrity": "sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-jasmine": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", + "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", + "dev": true, + "dependencies": { + "jasmine-core": "^4.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "karma": "^6.0.0" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.1.0.tgz", + "integrity": "sha512-sPQE1+nlsn6Hwb5t+HHwyy0A1FNCVKuL1192b+XNauMYWThz2kweiBVW1DqloRpVvZIJkIoHVB7XRpK78n1xbQ==", + "dev": true, + "peerDependencies": { + "jasmine-core": "^4.0.0 || ^5.0.0", + "karma": "^6.0.0", + "karma-jasmine": "^5.0.0" + } + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/karma/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma/node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "dev": true, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/karma/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/less": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "dev": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.1.0.tgz", + "integrity": "sha512-C+uDBV7kS7W5fJlUjq5mPBeBVhYpTIm5gB09APT9o3n/ILeaXVsiSFTbZpTJCJwQ/Crczfn3DmfQFwxYusWFug==", + "dev": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "dev": true, + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "dev": true, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log4js": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", + "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dev": true, + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/make-fetch-happen/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/make-fetch-happen/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-fetch-happen/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/make-fetch-happen/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dev": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "dev": true, + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dev": true, + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", + "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", + "dev": true, + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dev": true, + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-fetch/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-fetch/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dev": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true, + "optional": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", + "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", + "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "dev": true, + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-bundled": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "dev": true, + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", + "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-packlist": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", + "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", + "dev": true, + "dependencies": { + "ignore-walk": "^6.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-pick-manifest": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", + "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", + "dev": true, + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch": { + "version": "14.0.5", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", + "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "dev": true, + "dependencies": { + "make-fetch-happen": "^11.0.0", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm-registry-fetch/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nwsapi": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", + "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-path": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz", + "integrity": "sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==", + "dev": true, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pacote": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", + "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "dev": true, + "dependencies": { + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^5.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "sigstore": "^1.3.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parse5-html-rewriting-stream": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.0.0.tgz", + "integrity": "sha512-mazCyGWkmCRWDI15Zp+UiCqMp/0dgEmkZRvhlsqqKYr4SsVm/TvnSpD9fCvqCA2zoWJcfRym846ejWBBHRiYEg==", + "dev": true, + "dependencies": { + "entities": "^4.3.0", + "parse5": "^7.0.0", + "parse5-sax-parser": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-7.0.0.tgz", + "integrity": "sha512-5A+v2SNsq8T6/mG3ahcz8ZtQ0OUFTatxPbeidoMB7tkJSGDY3tdfl4MHovtLQHkEn5CGxijNWRQHhRQ6IRpXKg==", + "dev": true, + "dependencies": { + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/piscina": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.0.0.tgz", + "integrity": "sha512-641nAmJS4k4iqpNUqfggqUBUMmlw0ZoM5VZKdQkV2e970Inn3Tk9kroCc1wpsYLD07vCwpys5iY0d3xI/9WkTg==", + "dev": true, + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/pkg-dir": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", + "dev": true, + "dependencies": { + "find-up": "^6.3.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-loader": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.3.tgz", + "integrity": "sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==", + "dev": true, + "dependencies": { + "cosmiconfig": "^8.2.0", + "jiti": "^1.18.2", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-package-json": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", + "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "dev": true, + "dependencies": { + "glob": "^10.2.2", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", + "dev": true, + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/read-package-json/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==", + "dev": true + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.0.tgz", + "integrity": "sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==", + "dev": true + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "dev": true, + "dependencies": { + "is-core-module": "^2.11.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/sass": { + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", + "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.2.tgz", + "integrity": "sha512-CQbKl57kdEv+KDLquhC+gE3pXt74LEAzm+tzywcA0/aHZuub8wTErbjAoNI57rPUWRYRNC5WUnNl8eGJNbDdwg==", + "dev": true, + "dependencies": { + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", + "dev": true, + "optional": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "dev": true, + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sigstore": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", + "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "@sigstore/sign": "^1.0.0", + "@sigstore/tuf": "^1.0.3", + "make-fetch-happen": "^11.0.1" + }, + "bin": { + "sigstore": "bin/sigstore.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sigstore/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sigstore/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/sigstore/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socket.io": { + "version": "4.7.5", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz", + "integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.4.tgz", + "integrity": "sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg==", + "dev": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.11.0" + } + }, + "node_modules/socket.io-adapter/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dev": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dev": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.1.tgz", + "integrity": "sha512-oqXpzDIByKONVY8g1NUPOTQhe0UTU5bWUl32GSkqK2LjJj0HmwTMVKxcUip0RgAYhY1mqgOxjbQM48a0mmeNfA==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", + "dev": true + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/ssri": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ssri/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/streamroller": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/terser": { + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.30.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", + "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/tuf-js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", + "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "dev": true, + "dependencies": { + "@tufjs/models": "1.0.4", + "debug": "^4.3.4", + "make-fetch-happen": "^11.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/tuf-js/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", + "dev": true + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-cookie": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.6.tgz", + "integrity": "sha512-s+BZr7/9BUG6Kg7jGGcOY/4XJcP+iZRFdF3q4FPTfRSP83ivLWF94OcH8PrzGmnS8Ab9qP7ENu/ikLwNFsIafA==", + "engines": { + "node": ">=14" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.37", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.37.tgz", + "integrity": "sha512-xV8kqRKM+jhMvcHWUKthV9fNebIzrNy//2O9ZwWcfiBFR5f25XVZPLlEajk/sf3Ra15V92isyQqnIEXRDaZWEA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dev": true, + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "dev": true, + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz", + "integrity": "sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/watchpack": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.1.2.tgz", + "integrity": "sha512-Wu+EHmX326YPYUpQLKmKbTyZZJIB8/n6R09pTmB03kJmnMsVPTo9COzHZFr01txwaCAuZvfBJE4ZCHRcKs5JaQ==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.12", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server": { + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", + "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", + "dev": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.5", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/webpack-dev-middleware": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/webpack-merge": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", + "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "dev": true, + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zone.js": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.3.tgz", + "integrity": "sha512-MKPbmZie6fASC/ps4dkmIhaT5eonHkEt6eAy80K42tAm0G2W+AahLJjbfi6X9NPdciOE9GRFTTM8u2IiF6O3ww==", + "dependencies": { + "tslib": "^2.3.0" + } + } + } +} diff --git a/section8/eazybank-start/bank-app-ui/package.json b/section8/eazybank-start/bank-app-ui/package.json new file mode 100644 index 00000000..841628da --- /dev/null +++ b/section8/eazybank-start/bank-app-ui/package.json @@ -0,0 +1,44 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build", + "watch": "ng build --watch --configuration development", + "test": "ng test" + }, + "private": true, + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } +} diff --git a/section6/bank-app-ui/src/app/app-routing.module.ts b/section8/eazybank-start/bank-app-ui/src/app/app-routing.module.ts similarity index 100% rename from section6/bank-app-ui/src/app/app-routing.module.ts rename to section8/eazybank-start/bank-app-ui/src/app/app-routing.module.ts diff --git a/section6/bank-app-ui/src/app/app.component.css b/section8/eazybank-start/bank-app-ui/src/app/app.component.css similarity index 100% rename from section6/bank-app-ui/src/app/app.component.css rename to section8/eazybank-start/bank-app-ui/src/app/app.component.css diff --git a/section6/bank-app-ui/src/app/app.component.html b/section8/eazybank-start/bank-app-ui/src/app/app.component.html similarity index 100% rename from section6/bank-app-ui/src/app/app.component.html rename to section8/eazybank-start/bank-app-ui/src/app/app.component.html diff --git a/section6/bank-app-ui/src/app/app.component.ts b/section8/eazybank-start/bank-app-ui/src/app/app.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/app.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/app.component.ts diff --git a/section6/bank-app-ui/src/app/app.module.ts b/section8/eazybank-start/bank-app-ui/src/app/app.module.ts similarity index 100% rename from section6/bank-app-ui/src/app/app.module.ts rename to section8/eazybank-start/bank-app-ui/src/app/app.module.ts diff --git a/section6/bank-app-ui/src/app/components/account/account.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/account/account.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/account/account.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/account/account.component.css diff --git a/section6/bank-app-ui/src/app/components/account/account.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/account/account.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/account/account.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/account/account.component.html diff --git a/section6/bank-app-ui/src/app/components/account/account.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/account/account.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/account/account.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/account/account.component.ts diff --git a/section6/bank-app-ui/src/app/components/balance/balance.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/balance/balance.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/balance/balance.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/balance/balance.component.css diff --git a/section6/bank-app-ui/src/app/components/balance/balance.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/balance/balance.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/balance/balance.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/balance/balance.component.html diff --git a/section6/bank-app-ui/src/app/components/balance/balance.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/balance/balance.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/balance/balance.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/balance/balance.component.ts diff --git a/section6/bank-app-ui/src/app/components/cards/cards.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/cards/cards.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/cards/cards.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/cards/cards.component.css diff --git a/section6/bank-app-ui/src/app/components/cards/cards.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/cards/cards.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/cards/cards.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/cards/cards.component.html diff --git a/section6/bank-app-ui/src/app/components/cards/cards.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/cards/cards.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/cards/cards.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/cards/cards.component.ts diff --git a/section6/bank-app-ui/src/app/components/contact/contact.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/contact/contact.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/contact/contact.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/contact/contact.component.css diff --git a/section6/bank-app-ui/src/app/components/contact/contact.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/contact/contact.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/contact/contact.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/contact/contact.component.html diff --git a/section6/bank-app-ui/src/app/components/contact/contact.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/contact/contact.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/contact/contact.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/contact/contact.component.ts diff --git a/section6/bank-app-ui/src/app/components/dashboard/dashboard.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/dashboard/dashboard.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/dashboard/dashboard.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/dashboard/dashboard.component.css diff --git a/section6/bank-app-ui/src/app/components/dashboard/dashboard.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/dashboard/dashboard.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/dashboard/dashboard.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/dashboard/dashboard.component.html diff --git a/section6/bank-app-ui/src/app/components/dashboard/dashboard.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/dashboard/dashboard.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/dashboard/dashboard.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/dashboard/dashboard.component.ts diff --git a/section6/bank-app-ui/src/app/components/header/header.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/header/header.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/header/header.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/header/header.component.css diff --git a/section6/bank-app-ui/src/app/components/header/header.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/header/header.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/header/header.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/header/header.component.html diff --git a/section6/bank-app-ui/src/app/components/header/header.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/header/header.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/header/header.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/header/header.component.ts diff --git a/section6/bank-app-ui/src/app/components/home/home.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/home/home.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/home/home.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/home/home.component.css diff --git a/section6/bank-app-ui/src/app/components/home/home.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/home/home.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/home/home.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/home/home.component.html diff --git a/section6/bank-app-ui/src/app/components/home/home.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/home/home.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/home/home.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/home/home.component.ts diff --git a/section6/bank-app-ui/src/app/components/loans/loans.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/loans/loans.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/loans/loans.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/loans/loans.component.css diff --git a/section6/bank-app-ui/src/app/components/loans/loans.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/loans/loans.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/loans/loans.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/loans/loans.component.html diff --git a/section6/bank-app-ui/src/app/components/loans/loans.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/loans/loans.component.ts similarity index 100% rename from section6/bank-app-ui/src/app/components/loans/loans.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/loans/loans.component.ts diff --git a/section6/bank-app-ui/src/app/components/login/login.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/login/login.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/login/login.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/login/login.component.css diff --git a/section6/bank-app-ui/src/app/components/login/login.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/login/login.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/login/login.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/login/login.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/login/login.component.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/login/login.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/login/login.component.ts diff --git a/section6/bank-app-ui/src/app/components/logout/logout.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/logout/logout.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/logout/logout.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/logout/logout.component.css diff --git a/section6/bank-app-ui/src/app/components/logout/logout.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/logout/logout.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/logout/logout.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/logout/logout.component.html diff --git a/section_13/bank-app-ui/src/app/components/logout/logout.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/logout/logout.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/logout/logout.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/logout/logout.component.ts diff --git a/section6/bank-app-ui/src/app/components/notices/notices.component.css b/section8/eazybank-start/bank-app-ui/src/app/components/notices/notices.component.css similarity index 100% rename from section6/bank-app-ui/src/app/components/notices/notices.component.css rename to section8/eazybank-start/bank-app-ui/src/app/components/notices/notices.component.css diff --git a/section6/bank-app-ui/src/app/components/notices/notices.component.html b/section8/eazybank-start/bank-app-ui/src/app/components/notices/notices.component.html similarity index 100% rename from section6/bank-app-ui/src/app/components/notices/notices.component.html rename to section8/eazybank-start/bank-app-ui/src/app/components/notices/notices.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.ts b/section8/eazybank-start/bank-app-ui/src/app/components/notices/notices.component.ts similarity index 91% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.ts rename to section8/eazybank-start/bank-app-ui/src/app/components/notices/notices.component.ts index 170de75c..01049e1b 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/notices/notices.component.ts +++ b/section8/eazybank-start/bank-app-ui/src/app/components/notices/notices.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { Cards } from 'src/app/model/cards.model'; import { DashboardService } from 'src/app/services/dashboard/dashboard.service'; @Component({ diff --git a/section6/bank-app-ui/src/app/constants/app.constants.ts b/section8/eazybank-start/bank-app-ui/src/app/constants/app.constants.ts similarity index 100% rename from section6/bank-app-ui/src/app/constants/app.constants.ts rename to section8/eazybank-start/bank-app-ui/src/app/constants/app.constants.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/interceptors/app.request.interceptor.ts b/section8/eazybank-start/bank-app-ui/src/app/interceptors/app.request.interceptor.ts similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/interceptors/app.request.interceptor.ts rename to section8/eazybank-start/bank-app-ui/src/app/interceptors/app.request.interceptor.ts diff --git a/section6/bank-app-ui/src/app/model/account.model.ts b/section8/eazybank-start/bank-app-ui/src/app/model/account.model.ts similarity index 100% rename from section6/bank-app-ui/src/app/model/account.model.ts rename to section8/eazybank-start/bank-app-ui/src/app/model/account.model.ts diff --git a/section6/bank-app-ui/src/app/model/account.transactions.model.ts b/section8/eazybank-start/bank-app-ui/src/app/model/account.transactions.model.ts similarity index 100% rename from section6/bank-app-ui/src/app/model/account.transactions.model.ts rename to section8/eazybank-start/bank-app-ui/src/app/model/account.transactions.model.ts diff --git a/section6/bank-app-ui/src/app/model/cards.model.ts b/section8/eazybank-start/bank-app-ui/src/app/model/cards.model.ts similarity index 100% rename from section6/bank-app-ui/src/app/model/cards.model.ts rename to section8/eazybank-start/bank-app-ui/src/app/model/cards.model.ts diff --git a/section6/bank-app-ui/src/app/model/contact.model.ts b/section8/eazybank-start/bank-app-ui/src/app/model/contact.model.ts similarity index 100% rename from section6/bank-app-ui/src/app/model/contact.model.ts rename to section8/eazybank-start/bank-app-ui/src/app/model/contact.model.ts diff --git a/section6/bank-app-ui/src/app/model/loans.model.ts b/section8/eazybank-start/bank-app-ui/src/app/model/loans.model.ts similarity index 100% rename from section6/bank-app-ui/src/app/model/loans.model.ts rename to section8/eazybank-start/bank-app-ui/src/app/model/loans.model.ts diff --git a/section6/bank-app-ui/src/app/model/user.model.ts b/section8/eazybank-start/bank-app-ui/src/app/model/user.model.ts similarity index 100% rename from section6/bank-app-ui/src/app/model/user.model.ts rename to section8/eazybank-start/bank-app-ui/src/app/model/user.model.ts diff --git a/section8/eazybank-start/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section8/eazybank-start/bank-app-ui/src/app/routeguards/auth.routeguard.ts new file mode 100644 index 00000000..0eaee8f8 --- /dev/null +++ b/section8/eazybank-start/bank-app-ui/src/app/routeguards/auth.routeguard.ts @@ -0,0 +1,27 @@ +import { Injectable,inject } from '@angular/core'; +import { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot,Router } from '@angular/router'; +import { User } from '../model/user.model'; + +@Injectable() +export class AuthActivateRouteGuard { + user = new User(); + + constructor(private router: Router){ + + } + + canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ + if(sessionStorage.getItem('userdetails')){ + this.user = JSON.parse(sessionStorage.getItem('userdetails')!); + } + if(this.user.email.length===0){ + this.router.navigate(['login']); + } + return this.user.email.length!==0?true:false; + } + +} + +export const AuthGuard: CanActivateFn = (next: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean => { + return inject(AuthActivateRouteGuard).canActivate(next, state); + } \ No newline at end of file diff --git a/section6/bank-app-ui/src/app/services/dashboard/dashboard.service.ts b/section8/eazybank-start/bank-app-ui/src/app/services/dashboard/dashboard.service.ts similarity index 96% rename from section6/bank-app-ui/src/app/services/dashboard/dashboard.service.ts rename to section8/eazybank-start/bank-app-ui/src/app/services/dashboard/dashboard.service.ts index dafc19ca..da7d796e 100644 --- a/section6/bank-app-ui/src/app/services/dashboard/dashboard.service.ts +++ b/section8/eazybank-start/bank-app-ui/src/app/services/dashboard/dashboard.service.ts @@ -2,7 +2,6 @@ import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { AppConstants } from "../../constants/app.constants"; import { environment } from '../../../environments/environment'; -import { User } from '../../model/user.model'; import { Contact } from '../../model/contact.model'; @Injectable({ diff --git a/section6/bank-app-ui/src/app/services/login/login.service.ts b/section8/eazybank-start/bank-app-ui/src/app/services/login/login.service.ts similarity index 82% rename from section6/bank-app-ui/src/app/services/login/login.service.ts rename to section8/eazybank-start/bank-app-ui/src/app/services/login/login.service.ts index 51266d0f..5b72029a 100644 --- a/section6/bank-app-ui/src/app/services/login/login.service.ts +++ b/section8/eazybank-start/bank-app-ui/src/app/services/login/login.service.ts @@ -1,7 +1,6 @@ import { Injectable } from '@angular/core'; -import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http'; +import { HttpClient } from '@angular/common/http'; import { User } from "src/app/model/user.model"; -import { Observable, Subject } from 'rxjs'; import { AppConstants } from 'src/app/constants/app.constants'; import { environment } from '../../../environments/environment'; diff --git a/section6/bank-app-ui/src/assets/.gitkeep b/section8/eazybank-start/bank-app-ui/src/assets/.gitkeep similarity index 100% rename from section6/bank-app-ui/src/assets/.gitkeep rename to section8/eazybank-start/bank-app-ui/src/assets/.gitkeep diff --git a/section6/bank-app-ui/src/assets/css/bootstrap.css b/section8/eazybank-start/bank-app-ui/src/assets/css/bootstrap.css similarity index 100% rename from section6/bank-app-ui/src/assets/css/bootstrap.css rename to section8/eazybank-start/bank-app-ui/src/assets/css/bootstrap.css diff --git a/section6/bank-app-ui/src/assets/css/font-awesome.css b/section8/eazybank-start/bank-app-ui/src/assets/css/font-awesome.css similarity index 100% rename from section6/bank-app-ui/src/assets/css/font-awesome.css rename to section8/eazybank-start/bank-app-ui/src/assets/css/font-awesome.css diff --git a/section6/bank-app-ui/src/assets/fonts/FontAwesome.otf b/section8/eazybank-start/bank-app-ui/src/assets/fonts/FontAwesome.otf similarity index 100% rename from section6/bank-app-ui/src/assets/fonts/FontAwesome.otf rename to section8/eazybank-start/bank-app-ui/src/assets/fonts/FontAwesome.otf diff --git a/section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot b/section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot similarity index 100% rename from section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot rename to section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot diff --git a/section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf b/section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf similarity index 100% rename from section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf rename to section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf diff --git a/section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff b/section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff similarity index 100% rename from section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff rename to section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff diff --git a/section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 b/section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 similarity index 100% rename from section6/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 rename to section8/eazybank-start/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 diff --git a/section6/bank-app-ui/src/assets/images/logo.png b/section8/eazybank-start/bank-app-ui/src/assets/images/logo.png similarity index 100% rename from section6/bank-app-ui/src/assets/images/logo.png rename to section8/eazybank-start/bank-app-ui/src/assets/images/logo.png diff --git a/section8/eazybank-start/bank-app-ui/src/environments/environment.development.ts b/section8/eazybank-start/bank-app-ui/src/environments/environment.development.ts new file mode 100644 index 00000000..2fca8742 --- /dev/null +++ b/section8/eazybank-start/bank-app-ui/src/environments/environment.development.ts @@ -0,0 +1,4 @@ +export const environment = { + production: false, + rooturl : 'http://localhost:8080' +}; diff --git a/section8/eazybank-start/bank-app-ui/src/environments/environment.ts b/section8/eazybank-start/bank-app-ui/src/environments/environment.ts new file mode 100644 index 00000000..6453eee4 --- /dev/null +++ b/section8/eazybank-start/bank-app-ui/src/environments/environment.ts @@ -0,0 +1,4 @@ +export const environment = { + production: true, + rooturl : 'http://localhost:8080' +}; diff --git a/section6/bank-app-ui/src/favicon.ico b/section8/eazybank-start/bank-app-ui/src/favicon.ico similarity index 100% rename from section6/bank-app-ui/src/favicon.ico rename to section8/eazybank-start/bank-app-ui/src/favicon.ico diff --git a/section_13/bank-app-ui/src/index.html b/section8/eazybank-start/bank-app-ui/src/index.html similarity index 94% rename from section_13/bank-app-ui/src/index.html rename to section8/eazybank-start/bank-app-ui/src/index.html index 27a48fbf..17b6fd0e 100644 --- a/section_13/bank-app-ui/src/index.html +++ b/section8/eazybank-start/bank-app-ui/src/index.html @@ -1,4 +1,3 @@ - diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/main.ts b/section8/eazybank-start/bank-app-ui/src/main.ts similarity index 57% rename from section6/00_UI_Initial Code/bank-app-ui/src/main.ts rename to section8/eazybank-start/bank-app-ui/src/main.ts index c7b673cf..c58dc05c 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/src/main.ts +++ b/section8/eazybank-start/bank-app-ui/src/main.ts @@ -1,12 +1,7 @@ -import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; -if (environment.production) { - enableProdMode(); -} platformBrowserDynamic().bootstrapModule(AppModule) .catch(err => console.error(err)); diff --git a/section6/bank-app-ui/src/styles.css b/section8/eazybank-start/bank-app-ui/src/styles.css similarity index 100% rename from section6/bank-app-ui/src/styles.css rename to section8/eazybank-start/bank-app-ui/src/styles.css diff --git a/section6/00_UI_Initial Code/bank-app-ui/tsconfig.app.json b/section8/eazybank-start/bank-app-ui/tsconfig.app.json similarity index 85% rename from section6/00_UI_Initial Code/bank-app-ui/tsconfig.app.json rename to section8/eazybank-start/bank-app-ui/tsconfig.app.json index 82d91dc4..374cc9d2 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/tsconfig.app.json +++ b/section8/eazybank-start/bank-app-ui/tsconfig.app.json @@ -6,8 +6,7 @@ "types": [] }, "files": [ - "src/main.ts", - "src/polyfills.ts" + "src/main.ts" ], "include": [ "src/**/*.d.ts" diff --git a/section6/00_UI_Initial Code/bank-app-ui/tsconfig.json b/section8/eazybank-start/bank-app-ui/tsconfig.json similarity index 88% rename from section6/00_UI_Initial Code/bank-app-ui/tsconfig.json rename to section8/eazybank-start/bank-app-ui/tsconfig.json index ff06eae1..ed966d43 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/tsconfig.json +++ b/section8/eazybank-start/bank-app-ui/tsconfig.json @@ -16,10 +16,11 @@ "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, - "target": "es2020", - "module": "es2020", + "target": "ES2022", + "module": "ES2022", + "useDefineForClassFields": false, "lib": [ - "es2020", + "ES2022", "dom" ] }, diff --git a/section9/bank-app-ui/tsconfig.spec.json b/section8/eazybank-start/bank-app-ui/tsconfig.spec.json similarity index 81% rename from section9/bank-app-ui/tsconfig.spec.json rename to section8/eazybank-start/bank-app-ui/tsconfig.spec.json index 092345b0..be7e9da7 100644 --- a/section9/bank-app-ui/tsconfig.spec.json +++ b/section8/eazybank-start/bank-app-ui/tsconfig.spec.json @@ -7,10 +7,6 @@ "jasmine" ] }, - "files": [ - "src/test.ts", - "src/polyfills.ts" - ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" diff --git a/section8/springsecsection8/.mvn/wrapper/maven-wrapper.jar b/section8/springsecsection8/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 zcmb5W18`>1vNjyPv28mO+cqb*Z6_1kwr$(?#I}=(ZGUs`Jr}3`|DLbDUA3!L?dtC8 zUiH*ktDo+@6r@4HP=SCTA%WmZqm^Ro`Ls)bfPkcdfq?#g1(Fq27W^S8Cq^$TC?_c< zs-#ROD;6C)1wFuk7<3)nGuR^#!H;n&3*IjzXg+s8Z_S!!E0jUq(`}Itt=YdYa5Z_s z&e>2={87knpF*PKNzU;lsbk#P(l^WBvb$yEz)z+nYH43pKodrDkMp@h?;n{;K}hl>Fb^ zqx}C0|D7kg|Cj~3f7hn_zkAE}|6t|cZT|S5Hvb#3nc~C14u5UI{6#F<|FkJ0svs&S zA}S{=DXLT*BM1$`2rK%`D@vEw9l9%*=92X_2g?Fwfi=6Zfpr7+<~sgP#Bav+Df2ts zwtu~70zhqV?mrzM)}r7mMS`Hk_)NrI5K%CTtQtDxqw5iv5F0!ksIon{qqpPVnU?ds zN$|Vm{MHKEReUy>1kVfT-$3))Js0p2W_LFy3cjjZ7za0R zPdBH>y&pb0vr1|ckDpt2p$IQhwnPs5G*^b-y}sg4W!ALn}a`pY0JIa$H0$eV2T8WjWD= zWaENacQhlTyK4O!+aOXBurVR2k$eb8HVTCxy-bcHlZ4Xr!`juLAL#?t6|Ba!g9G4I zSwIt2Lla>C?C4wAZ8cKsZl9-Yd3kqE`%!5HlGdJJaFw0mu#--&**L-i|BcIdc3B$;0FC;FbE-dunVZ; zdIQ=tPKH4iJQQ=$5BeEMLov_Hn>gXib|9nOr}>eZt@B4W^m~>Zp#xhn1dax+?hS!AchWJ4makWZs@dQUeXQ zsI2+425_{X@t2KN zIbqec#)Jg5==VY3^YBeJ2B+%~^Y8|;F!mE8d(`UgNl2B9o>Ir5)qbBr)a?f%nrP zQyW(>FYPZjCVKDOU;Bw#PqPF1CCvp)dGdA&57a5hD&*vIc)jA)Z-!y5pS{5W6%#prH16zgD8s zexvpF#a|=*acp>L^lZ(PT)GiA8BJL-9!r8S$ZvXRKMVtiGe`+!@O%j<1!@msc177U zTDy>WOZu)W5anPrweQyjIu3IJC|ngdjZofGbdW&oj^DJlC7$;|xafB45evT|WBgGf-b|9y0J`fe0W-vw6xh}` z=(Tnq(-K0O{;VUcKe2y63{HXc+`R_#HLwnZ0rzWO*b#VeSuC4NG!H_ApCypbt1qx( z6y7Q$5(JOpQ&pTkc^0f}A0Kq*?;g9lEfzeE?5e2MBNZB)^8W1)YgdjsVyN+I9EZlh z3l}*}*)cFl=dOq|DvF=!ui$V%XhGQ%bDn3PK9 zV%{Y|VkAdt^d9~y4laGDqSwLd@pOnS&^@sI7}YTIb@El1&^_sq+{yAGf0|rq5TMp# z6d~;uAZ(fY3(eH=+rcbItl2=u6mf|P{lD4kiRCv;>GtFaHR3gim?WU9RjHmFZLm+m z+j<}_exaOQ1a}=K#voc~En+Mk_<(L!?1e#Uay~|H5q)LjD*yE6xFYQ-Wx{^iH1@pP zC0De#D6I26&W{;J40sZB!=%{c?XdO?YQvnTMA3TwfhAm@bvkX*(x?JTs*dFDv^=2X z284}AK)1nRn+8(Q2P?f)e>0~;NUI9%p%fnv1wBVpoXL+9OE`Vv1Y7=+nub$o7AN>y zB?R(^G8PYcMk4bxe7XItq@48QqWKb8fa*i9-N)=wdU-Q^=}!nFgTr_uT=Z=9pq z`{7!$U|+fnXFcsJ4GNm3JQQCN+G85k$)ZLhF{NbIy{REj84}Zt;0fe#>MARW)AoSb zrBpwF37ZVBMd>wZn_hAadI*xu8)Y#`aMbwRIA2n^-OS~M58_@j?#P1|PXJ1XBC9{4 zT^8*|xu<@(JlSOT*ILrVGr+7$nZN`Z3GxJJO@nY&mHsv^^duAh*lCu5q+S6zWA+`- z%^*y#)O7ko_RwGJl;bcEpP03FOrhlLWs`V_OUCrR-g>NJz*pN|itmN6O@Hw05Zq;Xtif%+sp4Py0{<7<^c zeoHHhRq>2EtYy9~2dZywm&OSk`u2ECWh6dJY?;fT-3-$U`!c(o$&hhPC%$~fT&bw3 zyj+8aXD;G!p*>BC6rpvx#6!|Qaic;KEv5>`Y+R(6F^1eIeYG6d1q3D3OL{7%7iw3R zwO)W7gMh27ASSB>-=OfP(YrKqBTNFv4hL@Im~~ombbSu44p~VoH$H-6+L_JW>Amkl zhDU~|r77?raaxD!-c$Ta?WAAi{w3T}YV=+S?1HQGC0+{Bny_^b+4Jum}oW4c=$ z#?D<}Ds{#d5v`L`${Pee;W84X*osNQ96xsKp^EAzuUh9#&zDX=eqdAp$UY)EGrkU% z(6m35n=46B$TNnejNSlih_!<)Iu@K!PW5S@Ya^0OK+EMWM=1w=GUKW^(r59U%i?d zzbo?|V4tDWGHHsrAQ}}ma#<`9r=M8%XF#%a=@Hn(p3wFBlkZ2L@8=*@J-^zuyF0aN zzJ7f!Jf8I+^6Tt$e+IIh zb80@?7y#Iz3w-0VEjgbHurqI>$qj<@n916)&O340!_5W9DtwR)P5mk6v2ljyK*DG5 zYjzE~m`>tq8HYXl%1JJ%e-%BqV4kRdPUZB1Cm$BQZr(fzp_@rn_W+;GwI$?L2Y4;b z)}c5D$#LT}2W8Si<`EHKIa_X+>+2PF(C*u~F=8E!jL(=IdQxY40%|( zoNg2Z&Aob@LEui-lJ#@)Ts)tE0_!*3{Uk)r{;-IZpX`N4mZX`#E|A;viQWImB6flI z?M_|xHCXV$5LOY-!U1_O1k;OWa=EchwlDCK4xHwBW2jE-6&%}og+9NILu${v10Z^Z#* zap|)B9a-AMU~>$r)3&|dQuP#MA$jnw54w*Ax~*_$iikp+j^OR8I5Fo<_UR#B-c>$? zeg)=;w^sGeAMi<3RGDRj$jA30Qq$e|zf2z;JyQ}tkU)ZI_k6tY%(`#AvL)p)iYXUy z5W9Su3NJ8mVyy)WqzFSk&vZM!;kUh8dVeA-myqcV%;xUne`PbHCPpvH?br`U2Y&dM zV!nJ!^n%`!H&!QSlpzLWnZpgi;#P0OAleH+<CfLa?&o|kyw1}W%6Pij zp$Vv5=;Z0LFN|j9i&9>zqX>*VnV3h#>n!2L?5gO6HJS3~kpy5G zYAVPMaB-FJOk3@OrxL(*-O~OB9^d{!G0K>wlzXuBm*$&%p1O#6SQ*?Q0CETLQ->XpfkW7< zj&Nep(}eAH1u$wWFvLV*lA{JOltP_%xKXC*a8DB&;{fD&2bATy>rC^kFY+$hFS7us;Y) zy_H?cv9XTHYz<4C<0b`WKC#{nJ15{F=oaq3x5}sYApT?Po+(Cmmo#dHZFO^{M#d~d znRT=TFATGVO%z_FNG-@G;9az|udZ>t@5l+A-K)BUWFn_|T#K3=d3EXRNqHyi#>;hX z*JQ`pT3#&tH>25laFlL6Rllu(seA*OboEd%rxMtz3@5v-+{qDP9&BcoS$2fgjgvp$ zc8!3=p0p@Ee1$u{Gg}Kkxg@M*qgZfYLlnD88{uwG1T?zxCbBR+x(RK$JB(eWJH#~; zZoY6L+esVRV?-*QmRCG}h`rB*Lv=uE%URF@+#l-g!Artx>Y9D;&G=jY2n2`J z{6-J%WX~Glx*QBmOOJ(RDRIzhfk&ibsm1t&&7aU{1P3U0uM%F2zJb4~50uby_ng+# zN)O9lK=dkJpxsUo7u8|e`Y~mmbxOTDn0i!i;d;ml#orN(Lc=j+n422NoSnlH6?0<0?th-qB7u}`5My%#?ES}>@RldOQz}WILz<$+cN~&ET zwUI01HCB((TyU$Ej8bxsE8oLmT-c7gA1Js?Iq`QMzIHV|)v)n2 zT_L(9x5%8*wU(C`VapaHoicWcm|0X@9TiNtbc|<4N6_H1F6&qgEEj=vjegFt;hC7- zLG7_=vedRFZ6Chbw!{#EpAlM?-sc#pc<~j#537n)M%RT)|L}y(ggi_-SLpsE3qi3V z=EEASxc>a{Su)jXcRS41Z@Mxk&0B7B<(?Izt5wpyyIBO|-M}ex8BhbIgi*X4 zDZ+Yk1<6&=PoZ=U-!9`!?sBVpYF#Y!JK<`fx}bXN651o0VVaW;t6ASVF@gq-mIDV_)?F^>rq1XX0NYy~(G=I6x%Fi5C2rMtvs z%P`g2>0{xLUy~#ye)%QAz^NkD5GUyPYl}K#;e-~UQ96`I$U0D!sMdQ>;%+c0h>k*Y z)sD1mi_@|rZnQ+zbWq~QxFlBQXj8WEY7NKaOYjUxAkGB8S#;l@b^C?;twRKl=mt0< zazifrBs`(q7_r14u1ZS`66VmsLpV>b5U!ktX>g4Nq~VPq6`%`3iCdr(>nS~uxxylU z>h(2p$XPJVh9BDpRLLzTDlNdp+oq8sOUlJ#{6boG`k)bwnsw5iy@#d{f_De-I|}vx6evw;ch97=;kLvM)-DBGwl6%fA%JItoMeyqjCR*_5Q70yd!KN zh=>ek8>f#~^6CJR0DXp0;7ifZjjSGBn}Cl{HeX!$iXMbtAU$F+;`%A<3TqbN#PCM& z&ueq$cB%pu2oMm_-@*aYzgn9`OiT@2ter*d+-$Aw42(@2Ng4mKG%M-IqX?q%3R|_( zN|&n$e1L#Ev=YMX5F53!O%))qDG3D(0rsOHblk;9ghWyqEOpg)mC$OduqpHAuIxr_>*|zy+|=EmOFn zFM+Ni%@CymLS-3vRWn=rVk?oZEz0V#y356IE6HR5#>7EigxZ05=cA|4<_tC8jyBJ| zgg!^kNwP7S^ooIj6riI9x`jFeQfRr4JCPumr<82M zto$j^Qb~MPmJ-|*2u{o7?yI8BI``zDaOCg2tG_5X;w<|uj5%oDthnLx-l4l)fmUGx z6N^jR|DC);yLi4q-ztTkf>*U$@2^w5(lhxu=OC|=WuTTp^!?2Nn27R`2FY_ zLHY-zFS}r+4|XyZw9b0D3)DmS!Gr+-LSdI}m{@-gL%^8CFSIYL?UZaCVd)2VI3|ay zwue39zshVrB+s2lp*};!gm<79@0HkjhgF^>`UhoR9Mi`aI#V#fI@x&1K3f&^8kaq% zkHVg$CTBoaGqEjrL)k*Y!rtiD2iQLYZ%|B}oBl8GHvR%n>HiIQN*+$mCN>I=c7H2N z&K4$4e@E^ff-cVHCbrHNMh4Dy|2Q;M{{xu|DYjeaRh2FK5QK!bG_K`kbBk$l$S4UF zq?F-%7UrX_Q?9M)a#WvcZ^R-fzJB5IFP>3uEoeCAAhN5W-ELRB&zsCnWY6#E?!)E56Pe+bxHjGF6;R9Hps)+t092-bf4 z_Wieg+0u5JL++k)#i0r?l`9*k)3ZlHOeMJ1DTdx9E1J2@BtdD3qX;&S_wMExOGv$T zl^T%oxb+)vq6vJvR`8{+YOsc@8}wSXpoK%v0k@8X*04Se3<8f)rE|fRXAoT!$6MdrKSuzeK@L*yug?MQs8oTbofqW)Df# zC2J3irHAaX_e~SGlBoRhEW`W6Z}&YX|5IMfzskAt{B*m z*w=3i!;x5Gfgc~>y9fPXFAPMhO@Si}SQESjh`P|dlV5HPRo7j(hV=$o8UMIT7~7+k z*@Sd>f%#{ARweJYhQs~ECpHie!~YXL|FJA;KS4m|CKFnT{fN`Ws>N?CcV@(>7WMPYN} z1}Wg+XU2(Yjpq7PJ|aSn;THEZ{4s8*@N!dz&bjys_Zk7%HiD+56;cF26`-a zEIo!B(T|L*uMXUvqJs&54`^@sUMtH-i~rOM9%$xGXTpmow$DxI>E5!csP zAHe|);0w%`I<==_Zw9t$e}?R+lIu%|`coRum(1p~*+20mBc?Z=$+z<0n&qS0-}|L4 zrgq|(U*eB%l3nfC=U1Y?(Tf@0x8bhdtsU2w&Y-WvyzkiyJ>GZqUP6c+<_p0`ZOnIK z#a~ynuzRWxO6c;S@*}B1pTjLJQHi(+EuE2;gG*p^Fq%6UoE1x95(^BY$H$$soSf=vpJ)_3E zp&$l=SiNaeoNLAK8x%XaHp3-So@F7 z3NMRRa@%k+Z$a%yb25ud&>Cdcb<+}n>=jZ`91)a z{wcA(j$%z#RoyB|&Z+B4%7Pe*No`pAX0Y;Ju4$wvJE{VF*Qej8C}uVF=xFpG^rY6Y+9mcz$T9^x(VP3uY>G3Zt&eU{pF*Bu<4j9MPbi4NMC=Z$kS6DMW9yN#vhM&1gd1t}8m(*YY9 zh2@s)$1p4yYT`~lYmU>>wKu+DhlnI1#Xn4(Rnv_qidPQHW=w3ZU!w3(@jO*f;4;h? zMH0!08(4=lT}#QA=eR(ZtW1=~llQij7)L6n#?5iY_p>|_mLalXYRH!x#Y?KHyzPB^ z6P3YRD}{ou%9T%|nOpP_??P;Rmra7$Q*Jz-f?42PF_y>d)+0Q^)o5h8@7S=je}xG# z2_?AdFP^t{IZHWK)9+EE_aPtTBahhUcWIQ7Awz?NK)ck2n-a$gplnd4OKbJ;;tvIu zH4vAexlK2f22gTALq5PZ&vfFqqERVT{G_d`X)eGI%+?5k6lRiHoo*Vc?ie6dx75_t z6hmd#0?OB9*OKD7A~P$e-TTv3^aCdZys6@`vq%Vi_D8>=`t&q9`Jn1=M#ktSC>SO3 z1V?vuIlQs6+{aHDHL?BB&3baSv;y#07}(xll9vs9K_vs2f9gC9Biy+9DxS77=)c z6dMbuokO-L*Te5JUSO$MmhIuFJRGR&9cDf)@y5OQu&Q$h@SW-yU&XQd9;_x;l z<`{S&Hnl!5U@%I~5p)BZspK894y7kVQE7&?t7Z|OOlnrCkvEf7$J5dR?0;Jt6oANc zMnb_Xjky|2ID#fhIB2hs-48Er>*M?56YFnjC)ixiCes%fgT?C|1tQupZ0Jon>yr|j z6M66rC(=;vw^orAMk!I1z|k}1Ox9qOILGJFxU*ZrMSfCe?)wByP=U73z+@Pfbcndc=VzYvSUnUy z+-B+_n`=f>kS8QBPwk+aD()=#IqkdxHPQMJ93{JGhP=48oRkmJyQ@i$pk(L&(p6<0 zC9ZEdO*i+t`;%(Ctae(SjV<@i%r5aune9)T4{hdzv33Uo9*K=V18S$6VVm^wgEteF za0zCLO(9~!U9_z@Qrh&rS|L0xG}RWoE1jXiEsrTgIF4qf#{0rl zE}|NGrvYLMtoORV&FWaFadDNCjMt|U8ba8|z&3tvd)s7KQ!Od*Kqe(48&C7=V;?`SQV)Qc?6L^k_vNUPbJ>>!5J?sDYm5kR&h_RZk)MfZ1 znOpQ|T;Me(%mdBJR$sbEmp3!HKDDSmMDnVpeo{S13l#9e6OImR$UPzjd-eCwmMwyT zm5~g6DIbY<_!8;xEUHdT(r_OQ<6QCE9Jy|QLoS>d(B zW6GRzX)~&Mx}})ITysFzl5_6JM*~ciBfVP(WF_r zY>z4gw&AxB%UV3Y{Y6z*t*o!p@~#u3X_t{Q9Us8ar8_9?N% zN&M~6y%2R(mAZ~@Tg1Oapt?vDr&fHuJ=V$wXstq|)eIG_4lB#@eU>fniJh zwJY<8yH5(+SSQ=$Y=-$2f$@^Ak#~kaR^NYFsi{XGlFCvK(eu{S$J(owIv17|p-%0O zL-@NyUg!rx0$Uh~JIeMX6JJE>*t<7vS9ev#^{AGyc;uio_-Je1?u#mA8+JVczhA2( zhD!koe;9$`Qgaxlcly4rdQ1VlmEHUhHe9TwduB+hm3wH2o27edh?|vrY{=;1Doy4& zIhP)IDd91@{`QQqVya(ASth4}6OY z-9BQj2d-%+-N7jO8!$QPq%o$9Fy8ja{4WT$gRP+b=Q1I48g-g|iLNjbhYtoNiR*d- z{sB}~8j*6*C3eM8JQj5Jn?mD#Gd*CrVEIDicLJ-4gBqUwLA-bp58UXko;M|ql+i5` zym-&U5BIS9@iPg#fFbuXCHrprSQKRU0#@yd%qrX1hhs*85R}~hahfFDq=e@bX))mf zWH%mXxMx|h5YhrTy;P_Xi_IDH*m6TYv>|hPX*_-XTW0G9iu!PqonQneKKaCVvvF^% zgBMDpN7!N?|G5t`v{neLaCFB{OyIl>qJQ_^0MJXQ zY2%-si~ej?F^%ytIIHU(pqT+3d+|IQ{ss#!c91R{2l*00e3ry!ha|XIsR%!q=E^Fal`6Oxu`K0fmPM?P6ZgzH7|TVQhl;l2 z)2w0L9CsN-(adU5YsuUw19OY_X69-!=7MIJ^(rUNr@#9l6aB8isAL^M{n2oD0FAHk97;X* z-INjZ5li`a|NYNt9gL2WbKT!`?%?lB^)J)9|025nBcBtEmWBRXQwi21EGg8>!tU>6Wf}S3p!>7vHNFSQR zgC>pb^&OHhRQD~7Q|gh5lV)F6i++k4Hp_F2L2WrcxH&@wK}QgVDg+y~o0gZ=$j&^W zz1aP8*cvnEJ#ffCK!Kz{K>yYW`@fc8ByF9X4XmyIv+h!?4&$YKl*~`ToalM{=Z_#^ zUs<1Do+PA*XaH;&0GW^tDjrctWKPmCF-qo7jGL)MK=XP*vt@O4wN1Y!8o`{DN|Rh) znK?nvyU&`ATc@U*l}=@+D*@l^gYOj&6SE|$n{UvyPwaiRQ_ua2?{Vfa|E~uqV$BhH z^QNqA*9F@*1dA`FLbnq;=+9KC@9Mel*>6i_@oVab95LHpTE)*t@BS>}tZ#9A^X7nP z3mIo+6TpvS$peMe@&=g5EQF9Mi9*W@Q`sYs=% z`J{3llzn$q;2G1{N!-#oTfQDY`8>C|n=Fu=iTk443Ld>>^fIr4-!R3U5_^ftd>VU> zij_ix{`V$I#k6!Oy2-z#QFSZkEPrXWsYyFURAo`Kl$LkN>@A?_);LE0rZIkmjb6T$ zvhc#L-Cv^4Ex*AIo=KQn!)A4;7K`pu-E+atrm@Cpmpl3e>)t(yo4gGOX18pL#xceU zbVB`#5_@(k{4LAygT1m#@(7*7f5zqB)HWH#TCrVLd9}j6Q>?p7HX{avFSb?Msb>Jg z9Q9DChze~0Psl!h0E6mcWh?ky! z$p#@LxUe(TR5sW2tMb#pS1ng@>w3o|r~-o4m&00p$wiWQ5Sh-vx2cv5nemM~Fl1Pn z@3ALEM#_3h4-XQ&z$#6X&r~U-&ge+HK6$)-`hqPj0tb|+kaKy*LS5@a9aSk!=WAEB z7cI`gaUSauMkEbg?nl0$44TYIwTngwzvUu0v0_OhpV;%$5Qgg&)WZm^FN=PNstTzW z5<}$*L;zrw>a$bG5r`q?DRc%V$RwwnGIe?m&(9mClc}9i#aHUKPLdt96(pMxt5u`F zsVoku+IC|TC;_C5rEU!}Gu*`2zKnDQ`WtOc3i#v}_9p>fW{L4(`pY;?uq z$`&LvOMMbLsPDYP*x|AVrmCRaI$UB?QoO(7mlBcHC};gA=!meK)IsI~PL0y1&{Dfm6! zxIajDc1$a0s>QG%WID%>A#`iA+J8HaAGsH z+1JH=+eX5F(AjmZGk|`7}Gpl#jvD6_Z!&{*kn@WkECV-~Ja@tmSR|e_L@9?N9 z3hyyry*D0!XyQh_V=8-SnJco#P{XBd1+7<5S3FA)2dFlkJY!1OO&M7z9uO?$#hp8K z><}uQS-^-B;u7Z^QD!7#V;QFmx0m%{^xtl3ZvPyZdi;^O&c;sNC4CHxzvvOB8&uHl zBN;-lu+P=jNn`2k$=vE0JzL{v67psMe_cb$LsmVfxA?yG z^q7lR00E@Ud3)mBPnT0KM~pwzZiBREupva^PE3~e zBgQ9oh@kcTk2)px3Hv^VzTtMzCG?*X(TDZ1MJ6zx{v- z;$oo46L#QNjk*1przHSQn~Ba#>3BG8`L)xla=P{Ql8aZ!A^Z6rPv%&@SnTI7FhdzT z-x7FR0{9HZg8Bd(puRlmXB(tB?&pxM&<=cA-;RT5}8rI%~CSUsR^{Dr%I2WAQghoqE5 zeQ874(T`vBC+r2Mi(w`h|d zA4x%EfH35I?h933@ic#u`b+%b+T?h=<}m@x_~!>o35p|cvIkkw07W=Ny7YcgssA_^ z|KJQrnu||Nu9@b|xC#C5?8Pin=q|UB?`CTw&AW0b)lKxZVYrBw+whPwZJCl}G&w9r zr7qsqm>f2u_6F@FhZU0%1Ioc3X7bMP%by_Z?hds`Q+&3P9-_AX+3CZ=@n!y7udAV2 zp{GT6;VL4-#t0l_h~?J^;trk1kxNAn8jdoaqgM2+mL&?tVy{I)e`HT9#Tr}HKnAfO zAJZ82j0+49)E0+=x%#1_D;sKu#W>~5HZV6AnZfC`v#unnm=hLTtGWz+21|p)uV+0= zDOyrLYI2^g8m3wtm-=pf^6N4ebLJbV%x`J8yd1!3Avqgg6|ar z=EM0KdG6a2L4YK~_kgr6w5OA;dvw0WPFhMF7`I5vD}#giMbMzRotEs&-q z^ji&t1A?l%UJezWv?>ijh|$1^UCJYXJwLX#IH}_1K@sAR!*q@j(({4#DfT|nj}p7M zFBU=FwOSI=xng>2lYo5*J9K3yZPwv(=7kbl8Xv0biOba>vik>6!sfwnH(pglq1mD-GrQi8H*AmfY*J7&;hny2F zupR}4@kzq+K*BE%5$iX5nQzayWTCLJ^xTam-EEIH-L2;huPSy;32KLb>>4 z#l$W^Sx7Q5j+Sy*E;1eSQQuHHWOT;1#LjoYpL!-{7W3SP4*MXf z<~>V7^&sY|9XSw`B<^9fTGQLPEtj=;<#x^=;O9f2{oR+{Ef^oZ z@N>P$>mypv%_#=lBSIr_5sn zBF-F_WgYS81vyW6$M;D_PoE&%OkNV1&-q+qgg~`A7s}>S`}cn#E$2m z%aeUXwNA(^3tP=;y5%pk#5Yz&H#AD`Jph-xjvZm_3KZ|J>_NR@croB^RUT~K;Exu5%wC}1D4nov3+@b8 zKyU5jYuQ*ZpTK23xXzpN51kB+r*ktnQJ7kee-gP+Ij0J_#rFTS4Gux;pkVB;n(c=6 zMks#)ZuXUcnN>UKDJ-IP-u2de1-AKdHxRZDUGkp)0Q#U$EPKlSLQSlnq)OsCour)+ zIXh@3d!ImInH7VrmR>p8p4%n;Tf6l2jx1qjJu>e3kf5aTzU)&910nXa-g0xn$tFa& z2qZ7UAl*@5o=PAh`6L${6S-0?pe3thPB4pahffb$#nL8ncN(Nyos`}r{%{g64Ji^= zK8BIywT0-g4VrhTt}n~Y;3?FGL74h?EG*QfQy0A8u>BtXuI{C-BYu*$o^}U1)z;8d zVN(ssw?oCbebREPD~I$-t7}`_5{{<0d10So7Pc2%EREdpMWIJI&$|rq<0!LL+BQM4 zn7)cq=qy|8YzdO(?NOsVRk{rW)@e7g^S~r^SCawzq3kj#u(5@C!PKCK0cCy zT@Tey2IeDYafA2~1{gyvaIT^a-Yo9kx!W#P-k6DfasKEgFji`hkzrmJ#JU^Yb%Nc~ zc)+cIfTBA#N0moyxZ~K!`^<>*Nzv-cjOKR(kUa4AkAG#vtWpaD=!Ku&;(D#(>$&~B zI?V}e8@p%s(G|8L+B)&xE<({g^M`#TwqdB=+oP|5pF3Z8u>VA!=w6k)zc6w2=?Q2` zYCjX|)fRKI1gNj{-8ymwDOI5Mx8oNp2JJHG3dGJGg!vK>$ji?n>5qG)`6lEfc&0uV z)te%G&Q1rN;+7EPr-n8LpNz6C6N0*v{_iIbta7OTukSY zt5r@sO!)rjh0aAmShx zd3=DJ3c(pJXGXzIh?#RR_*krI1q)H$FJ#dwIvz);mn;w6Rlw+>LEq4CN6pP4AI;!Y zk-sQ?O=i1Mp5lZX3yka>p+XCraM+a!1)`F`h^cG>0)f0OApGe(^cz-WoOno-Y(EeB zVBy3=Yj}ak7OBj~V259{&B`~tbJCxeVy@OEE|ke4O2=TwIvf-=;Xt_l)y`wuQ-9#D z(xD-!k+2KQzr`l$7dLvWf*$c8=#(`40h6d$m6%!SB1JzK+tYQihGQEwR*-!cM>#LD>x_J*w(LZbcvHW@LTjM?RSN z0@Z*4$Bw~Ki3W|JRI-r3aMSepJNv;mo|5yDfqNLHQ55&A>H5>_V9<_R!Ip`7^ylX=D<5 zr40z>BKiC@4{wSUswebDlvprK4SK2!)w4KkfX~jY9!W|xUKGTVn}g@0fG94sSJGV- z9@a~d2gf5s>8XT@`If?Oway5SNZS!L5=jpB8mceuf2Nd%aK2Zt|2FVcg8~7O{VPgI z#?H*_Kl!9!B}MrK1=O!Aw&faUBluA0v#gWVlAmZt;QN7KC<$;;%p`lmn@d(yu9scs zVjomrund9+p!|LWCOoZ`ur5QXPFJtfr_b5%&Ajig2dI6}s&Fy~t^j}()~4WEpAPL= zTj^d;OoZTUf?weuf2m?|R-7 z*C4M6ZhWF(F@2}nsp85rOqt+!+uZz3$ReX#{MP5-r6b`ztXDWl$_mcjFn*{sEx7f*O(ck+ou8_?~a_2Ztsq6qB|SPw26k!tLk{Q~Rz z$(8F1B;zK-#>AmmDC7;;_!;g&CU7a?qiIT=6Ts0cbUNMT6yPRH9~g zS%x{(kxYd=D&GKCkx;N21sU;OI8@4vLg2}L>Lb{Qv`B*O0*j>yJd#`R5ypf^lp<7V zCc|+>fYgvG`ROo>HK+FAqlDm81MS>&?n2E-(;N7}oF>3T9}4^PhY=Gm`9i(DPpuS- zq)>2qz!TmZ6q8;&M?@B;p1uG6RM_Y8zyId{-~XQD_}bXL{Jp7w`)~IR{l5a2?7!Vg zp!OfP4E$Ty_-K3VY!wdGj%2RL%QPHTL)uKfO5Am5<$`5 zHCBtvI~7q-ochU`=NJF*pPx@^IhAk&ZEA>w$%oPGc-}6~ywV~3-0{>*sb=|ruD{y$ ze%@-m`u28vKDaf*_rmN`tzQT>&2ltg-lofR8~c;p;E@`zK!1lkgi?JR0 z+<61+rEupp7F=mB=Ch?HwEjuQm}1KOh=o@ zMbI}0J>5}!koi&v9?!B?4FJR88jvyXR_v{YDm}C)lp@2G2{a{~6V5CwSrp6vHQsfb-U<{SSrQ zhjRbS;qlDTA&TQ2#?M(4xsRXFZ^;3A+_yLw>o-9GJ5sgsauB`LnB-hGo9sJ~tJ`Q>=X7sVmg<=Fcv=JDe*DjP-SK-0mJ7)>I zaLDLOU*I}4@cro&?@C`hH3tiXmN`!(&>@S2bFyAvI&axlSgd=!4IOi#+W;sS>lQ28 zd}q&dew9=x;5l0kK@1y9JgKWMv9!I`*C;((P>8C@JJRGwP5EL;JAPHi5fI|4MqlLU z^4D!~w+OIklt7dx3^!m6Be{Lp55j{5gSGgJz=hlNd@tt_I>UG(GP5s^O{jFU;m~l0 zfd`QdE~0Ym=6+XN*P`i0ogbgAJVjD9#%eBYJGIbDZ4s(f-KRE_>8D1Dv*kgO1~NSn zigx8f+VcA_xS)V-O^qrs&N9(}L!_3HAcegFfzVAntKxmhgOtsb4k6qHOpGWq6Q0RS zZO=EomYL%;nKgmFqxD<68tSGFOEM^u0M(;;2m1#4GvSsz2$jawEJDNWrrCrbO<}g~ zkM6516erswSi_yWuyR}}+h!VY?-F!&Y5Z!Z`tkJz&`8AyQ=-mEXxkQ%abc`V1s>DE zLXd7!Q6C)`7#dmZ4Lm?>CTlyTOslb(wZbi|6|Pl5fFq3y^VIzE4DALm=q$pK>-WM> z@ETsJj5=7=*4 z#Q8(b#+V=~6Gxl?$xq|?@_yQJ2+hAYmuTj0F76c(B8K%;DPhGGWr)cY>SQS>s7%O- zr6Ml8h`}klA=1&wvbFMqk}6fml`4A%G=o@K@8LHifs$)}wD?ix~Id@9-`;?+I7 zOhQN(D)j=^%EHN16(Z3@mMRM5=V)_z(6y^1b?@Bn6m>LUW7}?nupv*6MUVPSjf!Ym zMPo5YoD~t(`-c9w)tV%RX*mYjAn;5MIsD?0L&NQ#IY`9k5}Fr#5{CeTr)O|C2fRhY z4zq(ltHY2X)P*f?yM#RY75m8c<%{Y?5feq6xvdMWrNuqnR%(o(uo8i|36NaN<#FnT ze-_O*q0DXqR>^*1sAnsz$Ueqe5*AD@Htx?pWR*RP=0#!NjnaE-Gq3oUM~Kc9MO+o6 z7qc6wsBxp7GXx+hwEunnebz!|CX&`z{>loyCFSF-zg za}zec;B1H7rhGMDfn+t9n*wt|C_0-MM~XO*wx7-`@9~-%t?IegrHM(6oVSG^u?q`T zO<+YuVbO2fonR-MCa6@aND4dBy^~awRZcp!&=v+#kH@4jYvxt=)zsHV0;47XjlvDC8M1hSV zm!GB(KGLwSd{F-?dmMAe%W0oxkgDv8ivbs__S{*1U}yQ=tsqHJYI9)jduSKr<63$> zp;a-B^6Hg3OLUPi1UwHnptVSH=_Km$SXrCM2w8P z%F#Boi&CcZ5vAGjR1axw&YNh~Q%)VDYUDZ6f^0;>W7_sZr&QvRWc2v~p^PqkA%m=S zCwFUg2bNM(DaY>=TLmOLaDW&uH;Za?8BAwQo4+Xy4KXX;Z}@D5+}m)U#o?3UF}+(@jr$M4ja*`Y9gy~Y`0 z6Aex1*3ng@2er)@{%E9a3A;cts9cAor=RWt7ege)z=$O3$d5CX&hORZ3htL>jj5qT zW#KGQ;AZ|YbS0fvG~Y)CvVwXnBLJkSps7d~v;cj$D3w=rB9Tx>a&4>(x00yz!o*SOd*M!yIwx;NgqW?(ysFv8XLxs6Lrh8-F`3FO$}V{Avztc4qmZ zoz&YQR`*wWy_^&k-ifJ&N8Qh=E-fH6e}-}0C{h~hYS6L^lP>=pLOmjN-z4eQL27!6 zIe2E}knE;dxIJ_!>Mt|vXj%uGY=I^8(q<4zJy~Q@_^p@JUNiGPr!oUHfL~dw9t7C4I9$7RnG5p9wBpdw^)PtGwLmaQM=KYe z;Dfw@%nquH^nOI6gjP+K@B~0g1+WROmv1sk1tV@SUr>YvK7mxV3$HR4WeQ2&Y-{q~ z4PAR&mPOEsTbo~mRwg&EJE2Dj?TOZPO_@Z|HZX9-6NA!%Pb3h;G3F5J+30BoT8-PU z_kbx`I>&nWEMtfv(-m>LzC}s6q%VdBUVI_GUv3@^6SMkEBeVjWplD5y58LyJhikp4VLHhyf?n%gk0PBr(PZ3 z+V`qF971_d@rCO8p#7*#L0^v$DH>-qB!gy@ut`3 zy3cQ8*t@@{V7F*ti(u{G4i55*xY9Erw3{JZ8T4QPjo5b{n=&z4P^}wxA;x85^fwmD z6mEq9o;kx<5VneT_c-VUqa|zLe+BFgskp_;A)b>&EDmmP7Gx#nU-T@;O+(&&n7ljK zqK7&yV!`FIJAI+SaA6y=-H=tT`zWvBlaed!3X^_Lucc%Q=kuiG%65@@6IeG}e@`ieesOL} zKHBJBso6u&7gzlrpB%_yy<>TFwDI>}Ec|Gieb4=0fGwY|3YGW2Dq46=a1 zVo`Vi%yz+L9)9hbb%FLTC@-G(lODgJ(f&WmSCK9zV3-IV7XI<{2j}ms_Vmb!os)06 zhVIZPZF)hW--kWTCyDVRd2T&t|P&aDrtO5kzXy<*A+5$k7$>4+y%;% znYN-t#1^#}Z6d+ahj*Gzor+@kBD7@f|IGNR$4U=Y0J2#D2)YSxUCtiC1weJg zLp0Q&JFrt|In8!~1?fY0?=fPyaqPy$iQXJDhHP>N%B42Yck`Qz-OM_~GMuWow)>=Q z0pCCC7d0Z^Ipx29`}P3;?b{dO?7z0e{L|O*Z}nxi>X|RL8XAw$1eOLKd5j@f{RQ~Y zG?7$`hy@s7IoRF2@KA%2ZM6{ru9T5Gj)iDCz};VvlG$WuT+>_wCTS~J6`I9D{nsrU z2;X#OyopBgo778Q>D%_E>rMN~Po~d5H<`8|Zcv}F`xL5~NCVLX4Wkg007HhMgj9Pa z94$km3A+F&LzOJlpeFR*j+Y%M!Qm42ziH~cKM&3b;15s)ycD@3_tL-dk{+xP@J7#o z-)bYa-gd2esfy<&-nrj>1{1^_L>j&(MA1#WNPg3UD?reL*}V{ag{b!uT755x>mfbZ z0PzwF+kx91`qqOn`1>xw@801XAJlH>{`~|pyi6J;3s=cTOfelA&K5HX#gBp6s<|r5 zjSSj+CU*-TulqlnlP`}?)JkJ_7fg){;bRlXf+&^e8CWwFqGY@SZ=%NmLCXpYb+}7* z$4k}%iFUi^kBdeJg^kHt)f~<;Ovlz!9frq20cIj>2eIcG(dh57ry;^E^2T)E_8#;_9iJT>4sdCB_db|zO?Z^*lBN zNCs~f+Jkx%EUgkN2-xFF?B%TMr4#)%wq?-~+Nh;g9=n3tM>i5ZcH&nkVcPXgYRjG@ zf(Y7WN@hGV7o0bjx_2@bthJ`hjXXpfaes_(lWIw!(QK_nkyqj?{j#uFKpNVpV@h?7_WC3~&%)xHR1kKo`Cypj15#%0m z-o0GXem63g^|IltM?eZV=b+Z2e8&Z1%{0;*zmFc62mNqLTy$Y_c|9HiH0l>K z+mAx7DVYoHhXfdCE8Bs@j=t0f*uM++Idd25BgIm`Ad;I_{$mO?W%=JF82blr8rl>yMk6?pM z^tMluJ-ckG_}OkxP91t2o>CQ_O8^VZn$s$M_APWIXBGBq0Lt^YrTD5(Vwe2ta4y#DEYa(W~=eLOy7rD^%Vd$kL27M)MSpwgoP3P{ z!yS$zc|uP{yzaIqCwE!AfYNS;KW|OdP1Q%!LZviA0e^WDsIS5#= z!B{TW)VB)VHg{LoS#W7i6W>*sFz!qr^YS0t2kh90y=Je5{p>8)~D@dLS@QM(F# zIp{6M*#(@?tsu1Rq-Mdq+eV}ibRSpv#976C_5xlI`$#1tN`sK1?)5M+sj=OXG6dNu zV1K{y>!i0&9w8O{a>`IA#mo(3a zf*+Q=&HW7&(nX8~C1tiHZj%>;asBEp$p_Q!@Y0T8R~OuPEy3Lq@^t$8=~(FhPVmJJ z#VF8`(fNzK-b%Iin7|cxWP0xr*M&zoz|fCx@=Y!-0j_~cuxsDHHpmSo)qOalZ$bRl z2F$j0k3llJ$>28HH3l_W(KjF^!@LwtLej_b9;i;{ku2x+&WA@jKTO0ad71@_Yta!{ z2oqhO4zaU433LK371>E{bZ?+3kLZ9WQ2+3PTZAP90%P13Yy3lr3mhmy|>eN6(SHs1C%Q39p)YsUr7(kuaoIJGJhXV-PyG zjnxhcAC;fqY@6;MWWBnRK6ocG`%T&0&*k95#yK7DFtZV?;cy;!RD_*YJjsb6Q`$;K zy)&X{P`*5xEgjTQ9r=oh0|>Z_yeFm?ev!p z7q;JA4mtu@qa39v%6i)Z4%qwdxcHuOMO;a1wFMP_290FqH1OsmCG{ zq^afYrz2BQyQ0*JGE}1h!W9fKgk$b!)|!%q(1x?5=}PpmZQ$e;2EB*k4%+&+u;(E* z2n@=9HsqMv;4>Nn^2v&@4T-YTkd`TdWU^U*;sA5|r7TjZGnLY*xC=_K-GmDfkWEGC z;oN&!c1xB-<4J7=9 zJ(BedZwZhG4|64<=wvCn4)}w%Zx_TEs6ehmjVG&p5pi46r zg=3-3Q~;v55KR&8CfG;`Lv6NsXB}RqPVyNeKAfj9=Ol>fQlEUl2cH7=mPV!68+;jgtKvo5F#8&9m? z``w+#S5UR=QHFGM~noocC zVFa#v2%oo{%;wi~_~R2ci}`=B|0@ zinDfNxV3%iHIS(7{h_WEXqu!v~`CMH+7^SkvLe_3i}=pyDRah zN#L)F-`JLj6BiG}sj*WBmrdZuVVEo86Z<6VB}s)T$ZcWvG?i0cqI}WhUq2Y#{f~x# zi1LjxSZCwiKX}*ETGVzZ157=jydo*xC^}mJ<+)!DDCd4sx?VM%Y;&CTpw5;M*ihZ| zJ!FBJj0&j&-oJs?9a_I$;jzd%7|pdsQ3m`bPBe$nLoV1!YV8?Pw~0D zmSD-5Ue60>L$Rw;yk{_2d~v@CnvZa%!7{{7lb$kxWx!pzyh;6G~RbN5+|mFTbxcxf!XyfbLI^zMQSb6P~xzESXmV{9 zCMp)baZSz%)j&JWkc|Gq;_*$K@zQ%tH^91X2|Byv>=SmWR$7-shf|_^>Ll;*9+c(e z{N%43;&e8}_QGW+zE0m0myb-@QU%=Qo>``5UzB(lH0sK=E``{ZBl2Ni^-QtDp0ME1 zK88E-db_XBZQaU}cuvkCgH7crju~9eE-Y`os~0P-J=s;aS#wil$HGdK;Ut?dSO71ssyrdm{QRpMAV2nXslvlIE#+Oh>l7y_~?;}F!;ENCR zO+IG#NWIRI`FLntsz^FldCkky2f!d-%Pij9iLKr>IfCK);=}}?(NL%#4PfE(4kPQN zSC%BpZJ*P+PO5mHw0Wd%!zJsn&4g<$n#_?(=)JnoR2DK(mCPHp6e6VdV>?E5KCUF@ zf7W9wm%G#Wfm*NxTWIcJX-qtR=~NFxz4PSmDVAU8(B2wIm#IdHae-F{3jKQFiX?8NlKEhXR2Z|JCUd@HMnNVwqF~V9YJtD+T zQlOroDX-mg2% zBKV^Q5m5ECK{nWjJ7FHOSUi*a-C_?S_yo~G5HuRZH6R``^dS3Bh6u!nD`kFbxYThD zw~2%zL4tHA26rcdln4^=A(C+f9hLlcuMCv{8`u;?uoEVbU=YVNkBP#s3KnM@Oi)fQ zt_F3VjY)zASub%Q{Y?XgzlD3M5#gUBUuhW;$>uBSJH9UBfBtug*S|-;h?|L#^Z&uE zB&)spqM89dWg9ZrXi#F{KtL@r9g^xeR8J+$EhL~2u@cf`dS{8GUC76JP0hHtCKRg0 zt*rVyl&jaJAez;!fb!yX^+So4-8XMNpP@d3H*eF%t_?I|zN^1Iu5aGBXSm+}eCqn3 z^+vzcM*J>wV-FJRrx@^5;l>h0{OYT)lg{dr8!{s7(i{5T|3bivDoTonV1yo1@nVPR zXxEgGg^x5KHgp?=$xBwm_cKHeDurCgO>$B$GSO`Cd<~J8@>ni>Z-Ef!3+ck(MHVy@ z@#<*kCOb5S$V+Fvc@{Qv$oLfnOAG&YO5z_E2j6E z7a+c(>-`H)>g+6DeY1Y*ag-B6>Cl@@VhkZY@Uihe!{LlRpuTsmIsN4;+UDsHd954n9WZV6qq*{qZ5j<W)`UorOmXtVnLo3T{t#h3q^fooqQ~A+EY<$TDG4RKP*cK0liX95STt= zToC<2M2*(H1tZ)0s|v~iSAa^F-9jMwCy4cK0HM*3$@1Q`Pz}FFYm`PGP0wuamWrt*ehz3(|Fn%;0;K4}!Q~cx{0U0L=cs6lcrY^Y%Vf_rXpQIw~DfxB-72tZU6gdK8C~ea6(2P@kGH}!2N?>r(Ca{ zsI!6B!alPl%j1CHq97PTVRng$!~?s2{+6ffC#;X2z(Xb#9GsSYYe@9zY~7Dc7Hfgh z5Tq!})o30pA3ywg<9W3NpvUs;E%Cehz=s?EfLzcV0H?b{=q?vJCih2y%dhls6w3j$ zk9LB0L&(15mtul3T^QSK7KIZVTod#Sc)?1gzY~M=?ay87V}6G?F>~AIv()-N zD3rHX`;r;L{9N|Z8REN}OZB&SZ|5a80B%dQd-CNESP7HnuNn43T~Agcl1YOF@#W03 z1b*t!>t5G@XwVygHYczDIC|RdMB+ z$s5_5_W-EXN-u_5Pb{((!+8xa+?@_#dwtYHeJ_49Dql%3Fv0yXeV?!cC&Iqx@s~P%$X6%1 zYzS9pqaUv&aBQqO zBQs7d63FZIL1B&<8^oni%CZOdf6&;^oNqQ-9j-NBuQ^|9baQuZ^Jtyt&?cHq$Q9JE z5D>QY1?MU7%VVbvjysl~-a&ImiE(uFwHo{!kp;Jd`OLE!^4k8ID{`e-&>2uB7XB~= z+nIQGZ8-Sbfa}OrVPL}!mdieCrs3Nq8Ic_lpTKMIJ{h>XS$C3`h~ z?p2AbK~%t$t(NcOq5ZB3V|`a0io8A))v_PMt)Hg3x+07RL>i zGUq@t&+VV`kj55_snp?)Y@0rKZr`riC`9Q(B1P^nxffV9AvBLPrE<8D>ZP{HCDY@JIvYcYNRz8 z0Rf+Q0riSU@KaVpK)0M{2}Wuh!o~t*6>)EZSCQD{=}N4Oxjo1KO-MNpPYuPABh}E|rM!=TSl^F%NV^dg+>WNGi@Q5C z%JGsP#em`4LxDdIzA@VF&`2bLDv%J)(7vedDiXDqx{y6$Y0o~j*nVY73pINPCY?9y z$Rd&^64MN)Pkxr-CuZ+WqAJx6vuIAwmjkN{aPkrJ0I4F5-Bl}$hRzhRhZ^xN&Oe5$ za4Wrh6PyFfDG+Nzd8NTp2})j>pGtyejb&;NkU3C5-_H;{?>xK1QQ9S`xaHoMgee=2 zEbEh+*I!ggW@{T{qENlruZT)ODp~ZXHBc_Ngqu{jyC#qjyYGAQsO8VT^lts$z0HP+ z2xs^QjUwWuiEh863(PqO4BAosmhaK`pEI{-geBD9UuIn8ugOt-|6S(xkBLeGhW~)< z8aWBs0)bzOnY4wC$yW{M@&(iTe{8zhDnKP<1yr9J8akUK)1svAuxC)}x-<>S!9(?F zcA?{_C?@ZV2Aei`n#l(9zu`WS-hJsAXWt(SGp4(xg7~3*c5@odW;kXXbGuLOFMj{d z{gx81mQREmRAUHhfp#zoWh>z}GuS|raw1R#en%9R3hSR`qGglQhaq>#K!M%tooG;? zzjo}>sL7a3M5jW*s8R;#Y8b(l;%*I$@YH9)YzWR!T6WLI{$8ScBvw+5&()>NhPzd! z{>P(yk8{(G&2ovV^|#1HbcVMvXU&;0pk&6CxBTvBAB>#tK~qALsH`Ad1P0tAKWHv+BR8Fv4!`+>Obu1UX^Ov zmOpuS@Ui|NK4k-)TbG?+9T$)rkvq+?=0RDa=xdmY#JHLastjqPXdDbShqW>7NrHZ7 z7(9(HjM1-Ef(^`%3TlhySDJ27vQ?H`xr9VOM%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section8/springsecsection8/.mvn/wrapper/maven-wrapper.properties b/section8/springsecsection8/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section8/springsecsection8/.mvn/wrapper/maven-wrapper.properties +++ b/section8/springsecsection8/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section8/springsecsection8/mvnw b/section8/springsecsection8/mvnw index 8a8fb228..ba9212a0 100755 --- a/section8/springsecsection8/mvnw +++ b/section8/springsecsection8/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section8/springsecsection8/mvnw.cmd b/section8/springsecsection8/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section8/springsecsection8/mvnw.cmd +++ b/section8/springsecsection8/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section8/springsecsection8/pom.xml b/section8/springsecsection8/pom.xml index 9bb339e7..dc06bf88 100644 --- a/section8/springsecsection8/pom.xml +++ b/section8/springsecsection8/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,21 +17,17 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - org.springframework.ldap - spring-ldap-core + org.springframework.boot + spring-boot-starter-security - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -42,10 +38,6 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools @@ -53,13 +45,13 @@ true - org.springframework.boot - spring-boot-starter-test - test + org.projectlombok + lombok + true - org.springframework.security - spring-security-test + org.springframework.boot + spring-boot-starter-test test diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section8/springsecsection8/src/main/java/com/eazybytes/EazyBankBackendApplication.java index 55607eed..0308e0f4 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -2,14 +2,12 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; @SpringBootApplication -@EnableWebSecurity(debug = true) public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java b/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..415dfb16 --- /dev/null +++ b/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java @@ -0,0 +1,40 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("prod") +@RequiredArgsConstructor +public class EazyBankProdUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + // Fetch Age details and perform validation to check if age >18 + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + }else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..c7933242 --- /dev/null +++ b/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,30 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = List.of(new SimpleGrantedAuthority(customer.getRole())); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java index 1d45e72f..96185c80 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -1,59 +1,35 @@ package com.eazybytes.config; -import com.eazybytes.model.Authority; -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; import org.springframework.security.authentication.AuthenticationProvider; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - @Component +@Profile("!prod") +@RequiredArgsConstructor public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; @Override public Authentication authenticate(Authentication authentication) throws AuthenticationException { String username = authentication.getName(); String pwd = authentication.getCredentials().toString(); - List customer = customerRepository.findByEmail(username); - if (customer.size() > 0) { - if (passwordEncoder.matches(pwd, customer.get(0).getPwd())) { - return new UsernamePasswordAuthenticationToken(username, pwd, getGrantedAuthorities(customer.get(0).getAuthorities())); - } else { - throw new BadCredentialsException("Invalid password!"); - } - }else { - throw new BadCredentialsException("No user registered with this details!"); - } - } - - private List getGrantedAuthorities(Set authorities) { - List grantedAuthorities = new ArrayList<>(); - for (Authority authority : authorities) { - grantedAuthorities.add(new SimpleGrantedAuthority(authority.getName())); - } - return grantedAuthorities; + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); } @Override public boolean supports(Class authentication) { return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); } - } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index 2e672299..def24ffe 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -1,18 +1,19 @@ package com.eazybytes.config; -import com.eazybytes.filter.AuthoritiesLoggingAfterFilter; -import com.eazybytes.filter.AuthoritiesLoggingAtFilter; +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; import com.eazybytes.filter.CsrfCookieFilter; -import com.eazybytes.filter.RequestValidationBeforeFilter; import jakarta.servlet.http.HttpServletRequest; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; import org.springframework.security.web.csrf.CookieCsrfTokenRepository; import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; @@ -21,48 +22,56 @@ import java.util.Collections; +import static org.springframework.security.config.Customizer.withDefaults; @Configuration +@Profile("!prod") public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - CsrfTokenRequestAttributeHandler requestHandler = new CsrfTokenRequestAttributeHandler(); - requestHandler.setCsrfRequestAttributeName("_csrf"); - http.securityContext((context) -> context.requireExplicitSave(false)) - .sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) - .cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() { - @Override - public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { - CorsConfiguration config = new CorsConfiguration(); - config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); - config.setAllowedMethods(Collections.singletonList("*")); - config.setAllowCredentials(true); - config.setAllowedHeaders(Collections.singletonList("*")); - config.setMaxAge(3600L); - return config; - } - })).csrf((csrf) -> csrf.csrfTokenRequestHandler(requestHandler).ignoringRequestMatchers("/contact","/register") + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.securityContext(contextConfig -> contextConfig.requireExplicitSave(false)) + .sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers( "/contact","/register") .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) - .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) - .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) - .addFilterAt(new AuthoritiesLoggingAtFilter(), BasicAuthenticationFilter.class) - .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) - .authorizeHttpRequests((requests)->requests - .requestMatchers("/myAccount").hasRole("USER") - .requestMatchers("/myBalance").hasAnyRole("USER","ADMIN") - .requestMatchers("/myLoans").hasRole("USER") - .requestMatchers("/myCards").hasRole("USER") - .requestMatchers("/user").authenticated() - .requestMatchers("/notices","/contact","/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards", "/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); return http.build(); } @Bean public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..74d4459d --- /dev/null +++ b/section8/springsecsection8/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,76 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.CsrfCookieFilter; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Collections; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.securityContext(contextConfig -> contextConfig.requireExplicitSave(false)) + .sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("https://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers( "/contact","/register") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount", "/myBalance", "/myLoans", "/myCards", "/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + +} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section8/springsecsection8/src/main/java/com/eazybytes/constants/ApplicationConstants.java deleted file mode 100644 index 7c1aa7ef..00000000 --- a/section8/springsecsection8/src/main/java/com/eazybytes/constants/ApplicationConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public class ApplicationConstants { - - public static final String ERROR_MSG = "An unknown error occured"; - public static final String SUCCESS_MSG = "Request Successfully processed"; - -} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/controller/AccountController.java b/section8/springsecsection8/src/main/java/com/eazybytes/controller/AccountController.java index f4f4025b..b5c3b79b 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/controller/AccountController.java @@ -2,23 +2,23 @@ import com.eazybytes.model.Accounts; import com.eazybytes.repository.AccountsRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController +@RequiredArgsConstructor public class AccountController { - @Autowired - private AccountsRepository accountsRepository; + private final AccountsRepository accountsRepository; @GetMapping("/myAccount") - public Accounts getAccountDetails(@RequestParam int id) { + public Accounts getAccountDetails(@RequestParam long id) { Accounts accounts = accountsRepository.findByCustomerId(id); - if (accounts != null ) { + if (accounts != null) { return accounts; - }else { + } else { return null; } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/controller/BalanceController.java b/section8/springsecsection8/src/main/java/com/eazybytes/controller/BalanceController.java index 71ef84ea..14752a7d 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/controller/BalanceController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.AccountTransactions; import com.eazybytes.repository.AccountTransactionsRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @@ -10,18 +10,18 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class BalanceController { - @Autowired - private AccountTransactionsRepository accountTransactionsRepository; + private final AccountTransactionsRepository accountTransactionsRepository; @GetMapping("/myBalance") - public List getBalanceDetails(@RequestParam int id) { + public List getBalanceDetails(@RequestParam long id) { List accountTransactions = accountTransactionsRepository. findByCustomerIdOrderByTransactionDtDesc(id); - if (accountTransactions != null ) { + if (accountTransactions != null) { return accountTransactions; - }else { + } else { return null; } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/controller/CardsController.java b/section8/springsecsection8/src/main/java/com/eazybytes/controller/CardsController.java index 5aab6d8c..ff93cb36 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/controller/CardsController.java @@ -2,6 +2,7 @@ import com.eazybytes.model.Cards; import com.eazybytes.repository.CardsRepository; +import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -10,13 +11,13 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class CardsController { - @Autowired - private CardsRepository cardsRepository; + private final CardsRepository cardsRepository; @GetMapping("/myCards") - public List getCardDetails(@RequestParam int id) { + public List getCardDetails(@RequestParam long id) { List cards = cardsRepository.findByCustomerId(id); if (cards != null ) { return cards; diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/controller/ContactController.java b/section8/springsecsection8/src/main/java/com/eazybytes/controller/ContactController.java index 32e8899d..78d5a020 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/controller/ContactController.java @@ -1,21 +1,20 @@ package com.eazybytes.controller; -import java.sql.Date; -import java.util.Random; - -import org.springframework.beans.factory.annotation.Autowired; +import com.eazybytes.model.Contact; +import com.eazybytes.repository.ContactRepository; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Contact; -import com.eazybytes.repository.ContactRepository; +import java.sql.Date; +import java.util.Random; @RestController +@RequiredArgsConstructor public class ContactController { - @Autowired - private ContactRepository contactRepository; + private final ContactRepository contactRepository; @PostMapping("/contact") public Contact saveContactInquiryDetails(@RequestBody Contact contact) { @@ -27,6 +26,6 @@ public Contact saveContactInquiryDetails(@RequestBody Contact contact) { public String getServiceReqNumber() { Random random = new Random(); int ranNum = random.nextInt(999999999 - 9999) + 9999; - return "SR"+ranNum; + return "SR" + ranNum; } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/controller/LoansController.java b/section8/springsecsection8/src/main/java/com/eazybytes/controller/LoansController.java index 6405685f..d48467f0 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/controller/LoansController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.Loans; import com.eazybytes.repository.LoanRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @@ -10,17 +10,17 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class LoansController { - @Autowired - private LoanRepository loanRepository; + private final LoanRepository loanRepository; @GetMapping("/myLoans") - public List getLoanDetails(@RequestParam int id) { + public List getLoanDetails(@RequestParam long id) { List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(id); - if (loans != null ) { + if (loans != null) { return loans; - }else { + } else { return null; } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/controller/NoticesController.java b/section8/springsecsection8/src/main/java/com/eazybytes/controller/NoticesController.java index 9943001c..277f7abc 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/controller/NoticesController.java @@ -1,31 +1,30 @@ package com.eazybytes.controller; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.springframework.beans.factory.annotation.Autowired; +import com.eazybytes.model.Notice; +import com.eazybytes.repository.NoticeRepository; +import lombok.RequiredArgsConstructor; import org.springframework.http.CacheControl; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Notice; -import com.eazybytes.repository.NoticeRepository; +import java.util.List; +import java.util.concurrent.TimeUnit; @RestController +@RequiredArgsConstructor public class NoticesController { - @Autowired - private NoticeRepository noticeRepository; + private final NoticeRepository noticeRepository; @GetMapping("/notices") public ResponseEntity> getNotices() { List notices = noticeRepository.findAllActiveNotices(); - if (notices != null ) { + if (notices != null) { return ResponseEntity.ok() .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) .body(notices); - }else { + } else { return null; } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/controller/LoginController.java b/section8/springsecsection8/src/main/java/com/eazybytes/controller/UserController.java similarity index 50% rename from section8/springsecsection8/src/main/java/com/eazybytes/controller/LoginController.java rename to section8/springsecsection8/src/main/java/com/eazybytes/controller/UserController.java index 380e009a..48852074 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/controller/LoginController.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/controller/UserController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.Customer; import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.security.core.Authentication; @@ -13,48 +13,40 @@ import org.springframework.web.bind.annotation.RestController; import java.sql.Date; -import java.util.List; +import java.util.Optional; @RestController -public class LoginController { +@RequiredArgsConstructor +public class UserController { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; @PostMapping("/register") public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; try { String hashPwd = passwordEncoder.encode(customer.getPwd()); customer.setPwd(hashPwd); - customer.setCreateDt(String.valueOf(new Date(System.currentTimeMillis()))); - savedCustomer = customerRepository.save(customer); + customer.setCreateDt(new Date(System.currentTimeMillis())); + Customer savedCustomer = customerRepository.save(customer); + if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); } } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); } - return response; } @RequestMapping("/user") public Customer getUserDetailsAfterLogin(Authentication authentication) { - List customers = customerRepository.findByEmail(authentication.getName()); - if (customers.size() > 0) { - return customers.get(0); - } else { - return null; - } - + Optional optionalCustomer = customerRepository.findByEmail(authentication.getName()); + return optionalCustomer.orElse(null); } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section8/springsecsection8/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section8/springsecsection8/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section8/springsecsection8/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java b/section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java deleted file mode 100644 index ff6b0071..00000000 --- a/section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.eazybytes.filter; - -import jakarta.servlet.*; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.context.SecurityContextHolder; - -import java.io.IOException; -import java.util.logging.Logger; - -public class AuthoritiesLoggingAfterFilter implements Filter { - - private final Logger LOG = - Logger.getLogger(AuthoritiesLoggingAfterFilter.class.getName()); - - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - - Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); - if (null != authentication) { - LOG.info("User " + authentication.getName() + " is successfully authenticated and " - + "has the authorities " + authentication.getAuthorities().toString()); - } - chain.doFilter(request, response); - } - -} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java b/section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java deleted file mode 100644 index 55babbd8..00000000 --- a/section8/springsecsection8/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.eazybytes.filter; - -import jakarta.servlet.*; - -import java.io.IOException; -import java.util.logging.Logger; - -public class AuthoritiesLoggingAtFilter implements Filter { - - private final Logger LOG = - Logger.getLogger(AuthoritiesLoggingAtFilter.class.getName()); - - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - LOG.info("Authentication Validation is in progress"); - chain.doFilter(request, response); - } - -} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java b/section8/springsecsection8/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java index 4e65b58d..be9f9438 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java @@ -11,14 +11,13 @@ public class CsrfCookieFilter extends OncePerRequestFilter { + @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { CsrfToken csrfToken = (CsrfToken) request.getAttribute(CsrfToken.class.getName()); - if(null != csrfToken.getHeaderName()){ - response.setHeader(csrfToken.getHeaderName(), csrfToken.getToken()); - } + // Render the token value to a cookie by causing the deferred token to be loaded + csrfToken.getToken(); filterChain.doFilter(request, response); } - } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/AccountTransactions.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/AccountTransactions.java index 8f40fb16..b2833f59 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/AccountTransactions.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/model/AccountTransactions.java @@ -4,10 +4,14 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; import java.sql.Date; @Entity +@Getter +@Setter @Table(name="account_transactions") public class AccountTransactions { @@ -19,7 +23,7 @@ public class AccountTransactions { private long accountNumber; @Column(name = "customer_id") - private int customerId; + private long customerId; @Column(name="transaction_dt") private Date transactionDt; @@ -37,77 +41,6 @@ public class AccountTransactions { private int closingBalance; @Column(name = "create_dt") - private String createDt; + private Date createDt; - public String getTransactionId() { - return transactionId; - } - - public void setTransactionId(String transactionId) { - this.transactionId = transactionId; - } - - public long getAccountNumber() { - return accountNumber; - } - - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getTransactionDt() { - return transactionDt; - } - - public void setTransactionDt(Date transactionDt) { - this.transactionDt = transactionDt; - } - - public String getTransactionSummary() { - return transactionSummary; - } - - public void setTransactionSummary(String transactionSummary) { - this.transactionSummary = transactionSummary; - } - - public String getTransactionType() { - return transactionType; - } - - public void setTransactionType(String transactionType) { - this.transactionType = transactionType; - } - - public int getTransactionAmt() { - return transactionAmt; - } - - public void setTransactionAmt(int transactionAmt) { - this.transactionAmt = transactionAmt; - } - - public int getClosingBalance() { - return closingBalance; - } - - public void setClosingBalance(int closingBalance) { - this.closingBalance = closingBalance; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/Accounts.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/Accounts.java index dbb62886..30a6bcba 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/Accounts.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/model/Accounts.java @@ -4,12 +4,17 @@ import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; @Entity +@Getter @Setter public class Accounts { @Column(name = "customer_id") - private int customerId; + private long customerId; @Id @Column(name="account_number") @@ -22,38 +27,6 @@ public class Accounts { private String branchAddress; @Column(name = "create_dt") - private String createDt; - - - public int getCustomerId() { - return customerId; - } - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - public long getAccountNumber() { - return accountNumber; - } - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - public String getAccountType() { - return accountType; - } - public void setAccountType(String accountType) { - this.accountType = accountType; - } - public String getBranchAddress() { - return branchAddress; - } - public void setBranchAddress(String branchAddress) { - this.branchAddress = branchAddress; - } - public String getCreateDt() { - return createDt; - } - public void setCreateDt(String createDt) { - this.createDt = createDt; - } + private Date createDt; } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/Authority.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/Authority.java deleted file mode 100644 index c09f62a2..00000000 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/Authority.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "authorities") -public class Authority { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private Long id; - - private String name; - - @ManyToOne - @JoinColumn(name = "customer_id") - private Customer customer; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Customer getCustomer() { - return customer; - } - - public void setCustomer(Customer customer) { - this.customer = customer; - } - -} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/Cards.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/Cards.java index 03a425d5..8a090acb 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/Cards.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/model/Cards.java @@ -1,103 +1,39 @@ package com.eazybytes.model; -import java.sql.Date; - import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; @Entity +@Getter @Setter @Table(name = "cards") public class Cards { - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "card_id") - private int cardId; - - @Column(name = "customer_id") - private int customerId; - - @Column(name = "card_number") - private String cardNumber; - - @Column(name = "card_type") - private String cardType; - - @Column(name = "total_limit") - private int totalLimit; - - @Column(name = "amount_used") - private int amountUsed; - - @Column(name = "available_amount") - private int availableAmount; - - @Column(name = "create_dt") - private Date createDt; - - public int getCardId() { - return cardId; - } - - public void setCardId(int cardId) { - this.cardId = cardId; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public String getCardNumber() { - return cardNumber; - } - - public void setCardNumber(String cardNumber) { - this.cardNumber = cardNumber; - } - - public String getCardType() { - return cardType; - } - - public void setCardType(String cardType) { - this.cardType = cardType; - } + @Id + @Column(name = "card_id") + private long cardId; - public int getTotalLimit() { - return totalLimit; - } + @Column(name = "customer_id") + private long customerId; - public void setTotalLimit(int totalLimit) { - this.totalLimit = totalLimit; - } + @Column(name = "card_number") + private String cardNumber; - public int getAmountUsed() { - return amountUsed; - } + @Column(name = "card_type") + private String cardType; - public void setAmountUsed(int amountUsed) { - this.amountUsed = amountUsed; - } + @Column(name = "total_limit") + private int totalLimit; - public int getAvailableAmount() { - return availableAmount; - } + @Column(name = "amount_used") + private int amountUsed; - public void setAvailableAmount(int availableAmount) { - this.availableAmount = availableAmount; - } + @Column(name = "available_amount") + private int availableAmount; - public Date getCreateDt() { - return createDt; - } + @Column(name = "create_dt") + private Date createDt; - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/Contact.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/Contact.java index fa5c7ff5..3de986d5 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/Contact.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/model/Contact.java @@ -4,10 +4,13 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; import java.sql.Date; @Entity +@Getter @Setter @Table(name = "contact_messages") public class Contact { @@ -27,53 +30,5 @@ public class Contact { @Column(name = "create_dt") private Date createDt; - - public String getContactId() { - return contactId; - } - - public void setContactId(String contactId) { - this.contactId = contactId; - } - - public String getContactName() { - return contactName; - } - - public void setContactName(String contactName) { - this.contactName = contactName; - } - - public String getContactEmail() { - return contactEmail; - } - - public void setContactEmail(String contactEmail) { - this.contactEmail = contactEmail; - } - - public String getSubject() { - return subject; - } - - public void setSubject(String subject) { - this.subject = subject; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/Customer.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/Customer.java index bd3086a5..fe880d27 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/Customer.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/model/Customer.java @@ -3,18 +3,19 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; -import java.util.Set; +import java.sql.Date; @Entity +@Getter @Setter public class Customer { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "customer_id") - private int id; + private long id; private String name; @@ -29,73 +30,7 @@ public class Customer { private String role; @Column(name = "create_dt") - private String createDt; - @JsonIgnore - @OneToMany(mappedBy="customer",fetch=FetchType.EAGER) - private Set authorities; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getMobileNumber() { - return mobileNumber; - } - - public void setMobileNumber(String mobileNumber) { - this.mobileNumber = mobileNumber; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - - public Set getAuthorities() { - return authorities; - } + private Date createDt; - public void setAuthorities(Set authorities) { - this.authorities = authorities; - } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/Loans.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/Loans.java index 0622a955..f779eb20 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/Loans.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/model/Loans.java @@ -1,103 +1,42 @@ package com.eazybytes.model; -import java.sql.Date; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import java.sql.Date; @Entity -@Table(name="loans") +@Getter @Setter +@Table(name = "loans") public class Loans { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "loan_number") - private int loanNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="start_dt") - private Date startDt; - - @Column(name = "loan_type") - private String loanType; - - @Column(name = "total_loan") - private int totalLoan; - - @Column(name = "amount_paid") - private int amountPaid; - - @Column(name = "outstanding_amount") - private int outstandingAmount; - - @Column(name = "create_dt") - private String createDt; - - public int getLoanNumber() { - return loanNumber; - } - - public void setLoanNumber(int loanNumber) { - this.loanNumber = loanNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getStartDt() { - return startDt; - } - - public void setStartDt(Date startDt) { - this.startDt = startDt; - } - - public String getLoanType() { - return loanType; - } - public void setLoanType(String loanType) { - this.loanType = loanType; - } + @Id + @Column(name = "loan_number") + private long loanNumber; - public int getTotalLoan() { - return totalLoan; - } + @Column(name = "customer_id") + private long customerId; - public void setTotalLoan(int totalLoan) { - this.totalLoan = totalLoan; - } + @Column(name = "start_dt") + private Date startDt; - public int getAmountPaid() { - return amountPaid; - } + @Column(name = "loan_type") + private String loanType; - public void setAmountPaid(int amountPaid) { - this.amountPaid = amountPaid; - } + @Column(name = "total_loan") + private int totalLoan; - public int getOutstandingAmount() { - return outstandingAmount; - } + @Column(name = "amount_paid") + private int amountPaid; - public void setOutstandingAmount(int outstandingAmount) { - this.outstandingAmount = outstandingAmount; - } + @Column(name = "outstanding_amount") + private int outstandingAmount; - public String getCreateDt() { - return createDt; - } + @Column(name = "create_dt") + private Date createDt; - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/model/Notice.java b/section8/springsecsection8/src/main/java/com/eazybytes/model/Notice.java index 33e08468..7ed13868 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/model/Notice.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/model/Notice.java @@ -1,91 +1,42 @@ package com.eazybytes.model; -import java.sql.Date; +import com.fasterxml.jackson.annotation.JsonIgnore; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import java.sql.Date; @Entity +@Getter @Setter @Table(name = "notice_details") public class Notice { - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "notice_id") - private int noticeId; - - @Column(name = "notice_summary") - private String noticeSummary; - - @Column(name = "notice_details") - private String noticeDetails; - - @Column(name = "notic_beg_dt") - private Date noticBegDt; - - @Column(name = "notic_end_dt") - private Date noticEndDt; - - @Column(name = "create_dt") - private Date createDt; - - @Column(name = "update_dt") - private Date updateDt; - - public int getNoticeId() { - return noticeId; - } - - public void setNoticeId(int noticeId) { - this.noticeId = noticeId; - } - - public String getNoticeSummary() { - return noticeSummary; - } - - public void setNoticeSummary(String noticeSummary) { - this.noticeSummary = noticeSummary; - } - - public String getNoticeDetails() { - return noticeDetails; - } - - public void setNoticeDetails(String noticeDetails) { - this.noticeDetails = noticeDetails; - } - - public Date getNoticBegDt() { - return noticBegDt; - } + @Id + @Column(name = "notice_id") + private long noticeId; - public void setNoticBegDt(Date noticBegDt) { - this.noticBegDt = noticBegDt; - } + @Column(name = "notice_summary") + private String noticeSummary; - public Date getNoticEndDt() { - return noticEndDt; - } + @Column(name = "notice_details") + private String noticeDetails; - public void setNoticEndDt(Date noticEndDt) { - this.noticEndDt = noticEndDt; - } + @Column(name = "notic_beg_dt") + private Date noticBegDt; - public Date getCreateDt() { - return createDt; - } + @Column(name = "notic_end_dt") + private Date noticEndDt; - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } + @JsonIgnore + @Column(name = "create_dt") + private Date createDt; - public Date getUpdateDt() { - return updateDt; - } + @JsonIgnore + @Column(name = "update_dt") + private Date updateDt; - public void setUpdateDt(Date updateDt) { - this.updateDt = updateDt; - } } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java b/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java index 580d4ee3..a06c2fd7 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java @@ -8,8 +8,8 @@ import com.eazybytes.model.AccountTransactions; @Repository -public interface AccountTransactionsRepository extends CrudRepository { +public interface AccountTransactionsRepository extends CrudRepository { - List findByCustomerIdOrderByTransactionDtDesc(int customerId); + List findByCustomerIdOrderByTransactionDtDesc(long customerId); } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountsRepository.java b/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountsRepository.java index 0bcc1f5a..6ae5d8f4 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountsRepository.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/repository/AccountsRepository.java @@ -1,13 +1,12 @@ package com.eazybytes.repository; +import com.eazybytes.model.Accounts; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import com.eazybytes.model.Accounts; - @Repository public interface AccountsRepository extends CrudRepository { - - Accounts findByCustomerId(int customerId); + + Accounts findByCustomerId(long customerId); } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/repository/CardsRepository.java b/section8/springsecsection8/src/main/java/com/eazybytes/repository/CardsRepository.java index 21b7875c..61e1f4f5 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/repository/CardsRepository.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/repository/CardsRepository.java @@ -2,6 +2,7 @@ import java.util.List; +import com.eazybytes.model.Loans; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; @@ -10,6 +11,6 @@ @Repository public interface CardsRepository extends CrudRepository { - List findByCustomerId(int customerId); + List findByCustomerId(long customerId); } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/repository/ContactRepository.java b/section8/springsecsection8/src/main/java/com/eazybytes/repository/ContactRepository.java index 9a042095..0ec283fd 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/repository/ContactRepository.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/repository/ContactRepository.java @@ -6,7 +6,7 @@ import com.eazybytes.model.Contact; @Repository -public interface ContactRepository extends CrudRepository { +public interface ContactRepository extends CrudRepository { } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section8/springsecsection8/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/repository/LoanRepository.java b/section8/springsecsection8/src/main/java/com/eazybytes/repository/LoanRepository.java index beecb516..7c1a9105 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/repository/LoanRepository.java +++ b/section8/springsecsection8/src/main/java/com/eazybytes/repository/LoanRepository.java @@ -10,6 +10,6 @@ @Repository public interface LoanRepository extends CrudRepository { - List findByCustomerIdOrderByStartDtDesc(int customerId); + List findByCustomerIdOrderByStartDtDesc(long customerId); } diff --git a/section8/springsecsection8/src/main/resources/application.properties b/section8/springsecsection8/src/main/resources/application.properties index 75d0d5c4..d091a248 100644 --- a/section8/springsecsection8/src/main/resources/application.properties +++ b/section8/springsecsection8/src/main/resources/application.properties @@ -1,7 +1,15 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} -logging.level.org.springframework.security.web.FilterChainProxy=DEBUG \ No newline at end of file +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} diff --git a/section8/springsecsection8/src/main/resources/application_prod.properties b/section8/springsecsection8/src/main/resources/application_prod.properties new file mode 100644 index 00000000..9ef98007 --- /dev/null +++ b/section8/springsecsection8/src/main/resources/application_prod.properties @@ -0,0 +1,13 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} diff --git a/section8/springsecsection8/src/main/resources/sql/scripts.sql b/section8/springsecsection8/src/main/resources/sql/scripts.sql index 52c0ad32..0f9bf571 100644 --- a/section8/springsecsection8/src/main/resources/sql/scripts.sql +++ b/section8/springsecsection8/src/main/resources/sql/scripts.sql @@ -1,9 +1,5 @@ -create database eazybank; - -use eazybank; - -drop table `users`; drop table `authorities`; +drop table `users`; drop table `customer`; CREATE TABLE `customer` ( @@ -18,7 +14,7 @@ CREATE TABLE `customer` ( ); INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) - VALUES ('Happy','happy@example.com','9876548337', '$2y$12$oRRbkNfwuR8ug4MlzH5FOeui.//1mkd.RsOAJMbykTSupVy.x/vb2', 'admin',CURDATE()); + VALUES ('Happy','happy@example.com','5334122365', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin',CURDATE()); CREATE TABLE `accounts` ( `customer_id` int NOT NULL, @@ -164,33 +160,4 @@ CREATE TABLE `contact_messages` ( `message` varchar(2000) NOT NULL, `create_dt` date DEFAULT NULL, PRIMARY KEY (`contact_id`) -); - -CREATE TABLE `authorities` ( - `id` int NOT NULL AUTO_INCREMENT, - `customer_id` int NOT NULL, - `name` varchar(50) NOT NULL, - PRIMARY KEY (`id`), - KEY `customer_id` (`customer_id`), - CONSTRAINT `authorities_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) -); - -INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWACCOUNT'); - -INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWCARDS'); - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWLOANS'); - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'VIEWBALANCE'); - - DELETE FROM `authorities`; - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'ROLE_USER'); - - INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'ROLE_ADMIN'); +); \ No newline at end of file diff --git a/section9/bank-app-ui/.browserslistrc b/section9/bank-app-ui/.browserslistrc deleted file mode 100644 index 4f9ac269..00000000 --- a/section9/bank-app-ui/.browserslistrc +++ /dev/null @@ -1,16 +0,0 @@ -# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. -# For additional information regarding the format and rule options, please see: -# https://github.com/browserslist/browserslist#queries - -# For the full list of supported browsers by the Angular framework, please see: -# https://angular.io/guide/browser-support - -# You can see what browsers were selected by your queries by running: -# npx browserslist - -last 1 Chrome version -last 1 Firefox version -last 2 Edge major versions -last 2 Safari major versions -last 2 iOS major versions -Firefox ESR diff --git a/section9/bank-app-ui/.vscode/extensions.json b/section9/bank-app-ui/.vscode/extensions.json deleted file mode 100644 index 77b37457..00000000 --- a/section9/bank-app-ui/.vscode/extensions.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 - "recommendations": ["angular.ng-template"] -} diff --git a/section9/bank-app-ui/.vscode/launch.json b/section9/bank-app-ui/.vscode/launch.json deleted file mode 100644 index 740e35a0..00000000 --- a/section9/bank-app-ui/.vscode/launch.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "ng serve", - "type": "pwa-chrome", - "request": "launch", - "preLaunchTask": "npm: start", - "url": "http://localhost:4200/" - }, - { - "name": "ng test", - "type": "chrome", - "request": "launch", - "preLaunchTask": "npm: test", - "url": "http://localhost:9876/debug.html" - } - ] -} diff --git a/section9/bank-app-ui/.vscode/tasks.json b/section9/bank-app-ui/.vscode/tasks.json deleted file mode 100644 index a298b5bd..00000000 --- a/section9/bank-app-ui/.vscode/tasks.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558 - "version": "2.0.0", - "tasks": [ - { - "type": "npm", - "script": "start", - "isBackground": true, - "problemMatcher": { - "owner": "typescript", - "pattern": "$tsc", - "background": { - "activeOnStart": true, - "beginsPattern": { - "regexp": "(.*?)" - }, - "endsPattern": { - "regexp": "bundle generation complete" - } - } - } - }, - { - "type": "npm", - "script": "test", - "isBackground": true, - "problemMatcher": { - "owner": "typescript", - "pattern": "$tsc", - "background": { - "activeOnStart": true, - "beginsPattern": { - "regexp": "(.*?)" - }, - "endsPattern": { - "regexp": "bundle generation complete" - } - } - } - } - ] -} diff --git a/section9/bank-app-ui/karma.conf.js b/section9/bank-app-ui/karma.conf.js deleted file mode 100644 index fc6f3890..00000000 --- a/section9/bank-app-ui/karma.conf.js +++ /dev/null @@ -1,44 +0,0 @@ -// Karma configuration file, see link for more information -// https://karma-runner.github.io/1.0/config/configuration-file.html - -module.exports = function (config) { - config.set({ - basePath: '', - frameworks: ['jasmine', '@angular-devkit/build-angular'], - plugins: [ - require('karma-jasmine'), - require('karma-chrome-launcher'), - require('karma-jasmine-html-reporter'), - require('karma-coverage'), - require('@angular-devkit/build-angular/plugins/karma') - ], - client: { - jasmine: { - // you can add configuration options for Jasmine here - // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html - // for example, you can disable the random execution with `random: false` - // or set a specific seed with `seed: 4321` - }, - clearContext: false // leave Jasmine Spec Runner output visible in browser - }, - jasmineHtmlReporter: { - suppressAll: true // removes the duplicated traces - }, - coverageReporter: { - dir: require('path').join(__dirname, './coverage/bank-app-ui'), - subdir: '.', - reporters: [ - { type: 'html' }, - { type: 'text-summary' } - ] - }, - reporters: ['progress', 'kjhtml'], - port: 9876, - colors: true, - logLevel: config.LOG_INFO, - autoWatch: true, - browsers: ['Chrome'], - singleRun: false, - restartOnFileChange: true - }); -}; diff --git a/section9/bank-app-ui/package-lock.json b/section9/bank-app-ui/package-lock.json deleted file mode 100644 index 5b1f2905..00000000 --- a/section9/bank-app-ui/package-lock.json +++ /dev/null @@ -1,20540 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "bank-app-ui", - "version": "0.0.0", - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "@types/node": "^18.7.13", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "optionalDependencies": { - "esbuild": "0.14.49" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "@angular/localize": "^14.0.0", - "@angular/service-worker": "^14.0.0", - "karma": "^6.3.0", - "ng-packagr": "^14.0.0", - "protractor": "^7.0.0", - "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=4.6.2 <4.8" - }, - "peerDependenciesMeta": { - "@angular/localize": { - "optional": true - }, - "@angular/service-worker": { - "optional": true - }, - "karma": { - "optional": true - }, - "ng-packagr": { - "optional": true - }, - "protractor": { - "optional": true - }, - "tailwindcss": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "webpack": "^5.30.0", - "webpack-dev-server": "^4.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "dependencies": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^3.5.2" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/core/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - } - }, - "node_modules/@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - }, - "bin": { - "ng": "bin/ng.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/core": { - "optional": true - } - } - }, - "node_modules/@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - }, - "bin": { - "ng-xi18n": "bundles/src/bin/ng_xi18n.js", - "ngc": "bundles/src/bin/ngc.js", - "ngcc": "bundles/ngcc/main-ngcc.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/compiler": "14.1.3", - "typescript": ">=4.6.2 <4.8" - } - }, - "node_modules/@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.11.4" - } - }, - "node_modules/@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/animations": "14.1.3", - "@angular/common": "14.1.3", - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/animations": { - "optional": true - } - } - }, - "node_modules/@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/compiler": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3" - } - }, - "node_modules/@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "dependencies": { - "tslib": "^2.4.0" - }, - "peerDependencies": { - "@angular/core": "^14.0.0", - "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" - } - }, - "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==", - "hasInstallScript": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "node_modules/@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "typescript": ">=4.6.2 <4.8", - "webpack": "^5.54.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "dependencies": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "dependencies": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "installed-package-contents": "index.js" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "dependencies": { - "infer-owner": "^1.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "dependencies": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "node_modules/@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "node_modules/@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "18.7.13", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.13.tgz", - "integrity": "sha512-46yIhxSe5xEaJZXWdIBP7GU4HDTG8/eo0qd9atdiL+lFpA03y8KS+lkTN834TWJj5767GbWv4n/P6efyTFt1Dw==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/agentkeepalive/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" - } - }, - "node_modules/babel-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true, - "engines": { - "node": "^4.5.0 || >= 5.9" - } - }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/twbs" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/bootstrap" - } - ], - "peerDependencies": { - "@popperjs/core": "^2.11.5" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/connect/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/connect/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "node_modules/copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "dependencies": { - "is-what": "^3.14.1" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, - "node_modules/copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - } - }, - "node_modules/critters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/critters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/critters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/critters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/critters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/critters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cross-spawn/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, - "node_modules/css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-blank-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-has-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "bin": { - "css-prefers-color-scheme": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "node_modules/date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "dependencies": { - "clone": "^1.0.2" - } - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "node_modules/di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "node_modules/dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "dependencies": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "dependencies": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "node_modules/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "node_modules/esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "node_modules/esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "node_modules/express/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/finalhandler/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==", - "engines": { - "node": ">=0.10.3" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "dependencies": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "node_modules/hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "node_modules/hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "dependencies": { - "ms": "^2.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "dependencies": { - "minimatch": "^5.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true, - "engines": { - "node": ">= 8.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/gjtorikian/" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true, - "engines": [ - "node >= 0.2.0" - ] - }, - "node_modules/karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "dependencies": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "bin": { - "karma": "bin/karma" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "dependencies": { - "which": "^1.2.1" - } - }, - "node_modules/karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/karma-coverage/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma-coverage/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "dependencies": { - "jasmine-core": "^4.1.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "karma": "^6.0.0" - } - }, - "node_modules/karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "peerDependencies": { - "jasmine-core": "^4.0.0", - "karma": "^6.0.0", - "karma-jasmine": "^5.0.0" - } - }, - "node_modules/karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "dependencies": { - "source-map-support": "^0.5.5" - } - }, - "node_modules/karma/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/karma/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/karma/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/karma/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/karma/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/karma/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "dependencies": { - "copy-anything": "^2.0.1", - "parse-node-version": "^1.0.1", - "tslib": "^2.3.0" - }, - "bin": { - "lessc": "bin/lessc" - }, - "engines": { - "node": ">=6" - }, - "optionalDependencies": { - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "source-map": "~0.6.0" - } - }, - "node_modules/less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "dependencies": { - "klona": "^2.0.4" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "less": "^3.5.0 || ^4.0.0", - "webpack": "^5.0.0" - } - }, - "node_modules/less/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/less/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/less/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "dependencies": { - "webpack-sources": "^3.0.0" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - }, - "webpack-sources": { - "optional": true - } - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.8" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "node_modules/needle/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/needle/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "!win32" - ], - "dependencies": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true, - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": "^12.22 || ^14.13 || >=16" - } - }, - "node_modules/node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/node-gyp/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "node_modules/npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "node_modules/npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "npm-packlist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "dependencies": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "dependencies": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/ora/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-retry/node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "dependencies": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - }, - "bin": { - "pacote": "lib/bin.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "dependencies": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0" - }, - "optionalDependencies": { - "nice-napi": "^1.0.2" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": ">=7.6.0" - }, - "peerDependencies": { - "postcss": "^8.4.6" - } - }, - "node_modules/postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" - } - }, - "node_modules/postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true, - "funding": [ - { - "type": "kofi", - "url": "https://ko-fi.com/mrcgrtz" - }, - { - "type": "liberapay", - "url": "https://liberapay.com/mrcgrtz" - } - ], - "engines": { - "node": "^12 || ^14 || >=16" - } - }, - "node_modules/postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8" - } - }, - "node_modules/postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "dependencies": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.3" - } - }, - "node_modules/postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true, - "engines": { - "node": ">=0.9" - } - }, - "node_modules/qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "dependencies": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "node_modules/regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "node_modules/regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "dependencies": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/resolve-url-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/resolve-url-loader/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "dependencies": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", - "sass": "^1.3.0", - "sass-embedded": "*", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - } - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/schema-utils/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/schema-utils/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/schema-utils/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "node_modules/selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "dependencies": { - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/send/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "node_modules/socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "dependencies": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.72.1" - } - }, - "node_modules/source-map-loader/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "dependencies": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "bin": { - "stylus": "bin/stylus" - }, - "engines": { - "node": "*" - } - }, - "node_modules/stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "stylus": ">=0.52.4", - "webpack": "^5.0.0" - } - }, - "node_modules/stylus/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/stylus/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/stylus/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/test-exclude/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/test-exclude/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "node_modules/typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==", - "engines": { - "node": ">=14" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "dependencies": { - "typed-assert": "^1.0.8" - }, - "engines": { - "node": ">= 12" - }, - "peerDependencies": { - "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", - "webpack": "^5.12.0" - }, - "peerDependenciesMeta": { - "html-webpack-plugin": { - "optional": true - } - } - }, - "node_modules/webpack/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/webpack/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "dependencies": { - "tslib": "^2.3.0" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "requires": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild": "0.14.49", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - } - } - }, - "@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "requires": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - } - }, - "@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "requires": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - } - }, - "@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true - }, - "@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "requires": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "dependencies": { - "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - } - } - } - }, - "@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, - "@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - } - }, - "@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true - }, - "@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "requires": {} - }, - "@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "requires": {} - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true - }, - "@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "requires": { - "tslib": "^2.4.0" - } - }, - "@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==" - }, - "@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "requires": {} - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "requires": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - } - }, - "@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "requires": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, - "@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true - }, - "@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "requires": { - "infer-owner": "^1.0.4" - } - }, - "@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "requires": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true - }, - "@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - } - }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "@types/node": { - "version": "18.7.13", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.13.tgz", - "integrity": "sha512-46yIhxSe5xEaJZXWdIBP7GU4HDTG8/eo0qd9atdiL+lFpA03y8KS+lkTN834TWJj5767GbWv4n/P6efyTFt1Dw==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "requires": {} - }, - "adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "dependencies": { - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - } - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "requires": { - "ajv": "^8.0.0" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "requires": {} - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "requires": { - "semver": "^7.0.0" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "requires": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true - }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, - "colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "requires": { - "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "requires": { - "is-what": "^3.14.1" - } - }, - "copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "dependencies": { - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - } - }, - "css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "requires": {} - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true - }, - "cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "requires": { - "execa": "^5.0.0" - } - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true - }, - "define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - } - }, - "engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true - }, - "enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true - }, - "err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "optional": true, - "requires": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "dev": true, - "optional": true - }, - "esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "dev": true, - "optional": true - }, - "esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "dev": true, - "optional": true - }, - "esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "dev": true, - "optional": true - }, - "esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "dev": true, - "optional": true - }, - "esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "dev": true, - "optional": true - }, - "esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "dev": true, - "optional": true - }, - "esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "dev": true, - "optional": true - }, - "esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "dev": true, - "optional": true - }, - "esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "dev": true, - "optional": true - }, - "esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "dev": true, - "optional": true - }, - "esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "dev": true, - "optional": true - }, - "esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "dev": true, - "optional": true - }, - "esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true - }, - "esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "dev": true, - "optional": true - }, - "esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "dev": true, - "optional": true - }, - "esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "dev": true, - "optional": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true - }, - "eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true - }, - "font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==" - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true - }, - "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - } - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "requires": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "requires": { - "lru-cache": "^7.5.1" - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "dependencies": { - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "requires": {} - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true - }, - "ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "requires": { - "minimatch": "^5.0.1" - } - }, - "image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true - }, - "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true - }, - "inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true - }, - "is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true - }, - "jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true - }, - "karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "requires": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } - } - }, - "karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "requires": { - "which": "^1.2.1" - } - }, - "karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "requires": { - "jasmine-core": "^4.1.0" - } - }, - "karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "requires": {} - }, - "karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "requires": { - "source-map-support": "^0.5.5" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true - }, - "less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "requires": { - "copy-anything": "^2.0.1", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "parse-node-version": "^1.0.1", - "source-map": "~0.6.0", - "tslib": "^2.3.0" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "requires": { - "klona": "^2.0.4" - } - }, - "license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "requires": { - "webpack-sources": "^3.0.0" - } - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true - }, - "loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - } - }, - "lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true - }, - "magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.8" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "requires": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true - }, - "memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "requires": { - "fs-monkey": "^1.0.3" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "requires": { - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "requires": { - "encoding": "^0.1.13", - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "requires": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true - }, - "needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "optional": true, - "requires": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true - }, - "node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true - }, - "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true - }, - "npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "requires": { - "semver": "^7.1.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - } - }, - "npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "requires": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - } - }, - "npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "requires": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - } - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "requires": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - } - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true - }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "requires": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "dependencies": { - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true - } - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "requires": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "requires": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "requires": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0", - "nice-napi": "^1.0.2" - } - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "requires": {} - }, - "postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "requires": {} - }, - "postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - } - }, - "postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "requires": {} - }, - "postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "requires": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - } - }, - "postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "requires": {} - }, - "postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "requires": {} - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true - }, - "postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "requires": {} - }, - "postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "requires": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "requires": {} - }, - "postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true - }, - "proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "requires": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true - } - } - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true - }, - "qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "requires": { - "pify": "^2.3.0" - } - }, - "read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "requires": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "requires": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - } - }, - "regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "requires": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "requires": { - "tslib": "^2.1.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "requires": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - } - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "requires": { - "node-forge": "^1" - } - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true - }, - "socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - } - }, - "socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "requires": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - } - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "requires": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - } - }, - "socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "requires": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - } - }, - "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true - }, - "source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "requires": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - }, - "streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - }, - "stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "requires": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - } - }, - "terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true - }, - "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true - }, - "typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==" - }, - "ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "requires": { - "builtins": "^5.0.0" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "requires": {} - } - } - }, - "webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true - }, - "webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "requires": { - "typed-assert": "^1.0.8" - } - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "requires": {} - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, - "yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true - }, - "zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "requires": { - "tslib": "^2.3.0" - } - } - } -} diff --git a/section9/bank-app-ui/package.json b/section9/bank-app-ui/package.json deleted file mode 100644 index a7c03864..00000000 --- a/section9/bank-app-ui/package.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "scripts": { - "ng": "ng", - "start": "ng serve", - "build": "ng build", - "watch": "ng build --watch --configuration development", - "test": "ng test" - }, - "private": true, - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "@types/node": "^18.7.13", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } -} diff --git a/section9/bank-app-ui/src/app/app.component.spec.ts b/section9/bank-app-ui/src/app/app.component.spec.ts deleted file mode 100644 index c7c59ce9..00000000 --- a/section9/bank-app-ui/src/app/app.component.spec.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { RouterTestingModule } from '@angular/router/testing'; -import { AppComponent } from './app.component'; - -describe('AppComponent', () => { - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [ - RouterTestingModule - ], - declarations: [ - AppComponent - ], - }).compileComponents(); - }); - - it('should create the app', () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app).toBeTruthy(); - }); - - it(`should have as title 'bank-app-ui'`, () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app.title).toEqual('bank-app-ui'); - }); - - it('should render title', () => { - const fixture = TestBed.createComponent(AppComponent); - fixture.detectChanges(); - const compiled = fixture.nativeElement as HTMLElement; - expect(compiled.querySelector('.content span')?.textContent).toContain('bank-app-ui app is running!'); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/account/account.component.spec.ts b/section9/bank-app-ui/src/app/components/account/account.component.spec.ts deleted file mode 100644 index 140216da..00000000 --- a/section9/bank-app-ui/src/app/components/account/account.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AccountComponent } from './account.component'; - -describe('AccountComponent', () => { - let component: AccountComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ AccountComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AccountComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/balance/balance.component.spec.ts b/section9/bank-app-ui/src/app/components/balance/balance.component.spec.ts deleted file mode 100644 index 9b61420f..00000000 --- a/section9/bank-app-ui/src/app/components/balance/balance.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { BalanceComponent } from './balance.component'; - -describe('BalanceComponent', () => { - let component: BalanceComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ BalanceComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(BalanceComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/cards/cards.component.spec.ts b/section9/bank-app-ui/src/app/components/cards/cards.component.spec.ts deleted file mode 100644 index 6b67f12b..00000000 --- a/section9/bank-app-ui/src/app/components/cards/cards.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { CardsComponent } from './cards.component'; - -describe('CardsComponent', () => { - let component: CardsComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ CardsComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(CardsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/header/header.component.spec.ts b/section9/bank-app-ui/src/app/components/header/header.component.spec.ts deleted file mode 100644 index 2d0479d7..00000000 --- a/section9/bank-app-ui/src/app/components/header/header.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HeaderComponent } from './header.component'; - -describe('HeaderComponent', () => { - let component: HeaderComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ HeaderComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(HeaderComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/home/home.component.spec.ts b/section9/bank-app-ui/src/app/components/home/home.component.spec.ts deleted file mode 100644 index 5075be73..00000000 --- a/section9/bank-app-ui/src/app/components/home/home.component.spec.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HomeComponent } from './home.component'; - -describe('HomeComponent', () => { - let component: HomeComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ HomeComponent ] - }) - .compileComponents(); - - fixture = TestBed.createComponent(HomeComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/loans/loans.component.spec.ts b/section9/bank-app-ui/src/app/components/loans/loans.component.spec.ts deleted file mode 100644 index 20346117..00000000 --- a/section9/bank-app-ui/src/app/components/loans/loans.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoansComponent } from './loans.component'; - -describe('LoansComponent', () => { - let component: LoansComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoansComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoansComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/login/login.component.spec.ts b/section9/bank-app-ui/src/app/components/login/login.component.spec.ts deleted file mode 100644 index d6d85a84..00000000 --- a/section9/bank-app-ui/src/app/components/login/login.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoginComponent } from './login.component'; - -describe('LoginComponent', () => { - let component: LoginComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoginComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoginComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/logout/logout.component.spec.ts b/section9/bank-app-ui/src/app/components/logout/logout.component.spec.ts deleted file mode 100644 index c04dbe28..00000000 --- a/section9/bank-app-ui/src/app/components/logout/logout.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LogoutComponent } from './logout.component'; - -describe('LogoutComponent', () => { - let component: LogoutComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LogoutComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LogoutComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/components/notices/notices.component.spec.ts b/section9/bank-app-ui/src/app/components/notices/notices.component.spec.ts deleted file mode 100644 index acf52047..00000000 --- a/section9/bank-app-ui/src/app/components/notices/notices.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { NoticesComponent } from './notices.component'; - -describe('NoticesComponent', () => { - let component: NoticesComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ NoticesComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(NoticesComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section9/bank-app-ui/src/app/routeguards/auth.routeguard.ts deleted file mode 100644 index 25678ed4..00000000 --- a/section9/bank-app-ui/src/app/routeguards/auth.routeguard.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot,Router } from '@angular/router'; -import { User } from '../model/user.model'; - -@Injectable() -export class AuthActivateRouteGuard implements CanActivate { - user = new User(); - - constructor(private router: Router){ - - } - - canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ - if(sessionStorage.getItem('userdetails')){ - this.user = JSON.parse(sessionStorage.getItem('userdetails')!); - } - if(!this.user){ - this.router.navigate(['login']); - } - return this.user?true:false; - } - -} \ No newline at end of file diff --git a/section9/bank-app-ui/src/app/services/login/login.service.spec.ts b/section9/bank-app-ui/src/app/services/login/login.service.spec.ts deleted file mode 100644 index 299b0d50..00000000 --- a/section9/bank-app-ui/src/app/services/login/login.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { LoginService } from './login.service'; - -describe('LoginService', () => { - let service: LoginService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(LoginService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/section9/bank-app-ui/src/environments/environment.prod.ts b/section9/bank-app-ui/src/environments/environment.prod.ts deleted file mode 100644 index 3612073b..00000000 --- a/section9/bank-app-ui/src/environments/environment.prod.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const environment = { - production: true -}; diff --git a/section9/bank-app-ui/src/environments/environment.ts b/section9/bank-app-ui/src/environments/environment.ts deleted file mode 100644 index 2527feff..00000000 --- a/section9/bank-app-ui/src/environments/environment.ts +++ /dev/null @@ -1,17 +0,0 @@ -// This file can be replaced during build by using the `fileReplacements` array. -// `ng build` replaces `environment.ts` with `environment.prod.ts`. -// The list of file replacements can be found in `angular.json`. - -export const environment = { - production: false, - rooturl : 'http://localhost:8080' -}; - -/* - * For easier debugging in development mode, you can import the following file - * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. - * - * This import should be commented out in production mode because it will have a negative impact - * on performance if an error is thrown. - */ -// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/section9/bank-app-ui/src/polyfills.ts b/section9/bank-app-ui/src/polyfills.ts deleted file mode 100644 index 429bb9ef..00000000 --- a/section9/bank-app-ui/src/polyfills.ts +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This file includes polyfills needed by Angular and is loaded before the app. - * You can add your own extra polyfills to this file. - * - * This file is divided into 2 sections: - * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. - * 2. Application imports. Files imported after ZoneJS that should be loaded before your main - * file. - * - * The current setup is for so-called "evergreen" browsers; the last versions of browsers that - * automatically update themselves. This includes recent versions of Safari, Chrome (including - * Opera), Edge on the desktop, and iOS and Chrome on mobile. - * - * Learn more in https://angular.io/guide/browser-support - */ - -/*************************************************************************************************** - * BROWSER POLYFILLS - */ - -/** - * By default, zone.js will patch all possible macroTask and DomEvents - * user can disable parts of macroTask/DomEvents patch by setting following flags - * because those flags need to be set before `zone.js` being loaded, and webpack - * will put import in the top of bundle, so user need to create a separate file - * in this directory (for example: zone-flags.ts), and put the following flags - * into that file, and then add the following code before importing zone.js. - * import './zone-flags'; - * - * The flags allowed in zone-flags.ts are listed here. - * - * The following flags will work for all browsers. - * - * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame - * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick - * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames - * - * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js - * with the following flag, it will bypass `zone.js` patch for IE/Edge - * - * (window as any).__Zone_enable_cross_context_check = true; - * - */ - -/*************************************************************************************************** - * Zone JS is required by default for Angular itself. - */ -import 'zone.js'; // Included with Angular CLI. - - -/*************************************************************************************************** - * APPLICATION IMPORTS - */ diff --git a/section9/bank-app-ui/src/test.ts b/section9/bank-app-ui/src/test.ts deleted file mode 100644 index c04c8760..00000000 --- a/section9/bank-app-ui/src/test.ts +++ /dev/null @@ -1,26 +0,0 @@ -// This file is required by karma.conf.js and loads recursively all the .spec and framework files - -import 'zone.js/testing'; -import { getTestBed } from '@angular/core/testing'; -import { - BrowserDynamicTestingModule, - platformBrowserDynamicTesting -} from '@angular/platform-browser-dynamic/testing'; - -declare const require: { - context(path: string, deep?: boolean, filter?: RegExp): { - (id: string): T; - keys(): string[]; - }; -}; - -// First, initialize the Angular testing environment. -getTestBed().initTestEnvironment( - BrowserDynamicTestingModule, - platformBrowserDynamicTesting(), -); - -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().forEach(context); diff --git a/section9/springsecsection9/.mvn/wrapper/maven-wrapper.jar b/section9/springsecsection9/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section9/springsecsection9/.mvn/wrapper/maven-wrapper.properties b/section9/springsecsection9/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section9/springsecsection9/.mvn/wrapper/maven-wrapper.properties +++ b/section9/springsecsection9/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section9/springsecsection9/mvnw b/section9/springsecsection9/mvnw index 8a8fb228..ba9212a0 100755 --- a/section9/springsecsection9/mvnw +++ b/section9/springsecsection9/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section9/springsecsection9/mvnw.cmd b/section9/springsecsection9/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section9/springsecsection9/mvnw.cmd +++ b/section9/springsecsection9/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section9/springsecsection9/pom.xml b/section9/springsecsection9/pom.xml index 4b881c38..7009bcd4 100644 --- a/section9/springsecsection9/pom.xml +++ b/section9/springsecsection9/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,21 +17,17 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - org.springframework.ldap - spring-ldap-core + org.springframework.boot + spring-boot-starter-security - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -42,10 +38,6 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools @@ -53,32 +45,15 @@ true - io.jsonwebtoken - jjwt-api - 0.12.3 - - - io.jsonwebtoken - jjwt-impl - 0.12.3 - runtime - - - io.jsonwebtoken - jjwt-jackson - 0.12.3 - runtime + org.projectlombok + lombok + true org.springframework.boot spring-boot-starter-test test - - org.springframework.security - spring-security-test - test - diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section9/springsecsection9/src/main/java/com/eazybytes/EazyBankBackendApplication.java index b30aae15..0308e0f4 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -3,12 +3,11 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; - @SpringBootApplication public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java b/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..415dfb16 --- /dev/null +++ b/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java @@ -0,0 +1,40 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("prod") +@RequiredArgsConstructor +public class EazyBankProdUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + // Fetch Age details and perform validation to check if age >18 + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + }else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..712f39f0 --- /dev/null +++ b/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,32 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = customer.getAuthorities().stream().map(authority -> new + SimpleGrantedAuthority(authority.getName())).collect(Collectors.toList()); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java index 1d45e72f..96185c80 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -1,59 +1,35 @@ package com.eazybytes.config; -import com.eazybytes.model.Authority; -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; import org.springframework.security.authentication.AuthenticationProvider; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - @Component +@Profile("!prod") +@RequiredArgsConstructor public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; @Override public Authentication authenticate(Authentication authentication) throws AuthenticationException { String username = authentication.getName(); String pwd = authentication.getCredentials().toString(); - List customer = customerRepository.findByEmail(username); - if (customer.size() > 0) { - if (passwordEncoder.matches(pwd, customer.get(0).getPwd())) { - return new UsernamePasswordAuthenticationToken(username, pwd, getGrantedAuthorities(customer.get(0).getAuthorities())); - } else { - throw new BadCredentialsException("Invalid password!"); - } - }else { - throw new BadCredentialsException("No user registered with this details!"); - } - } - - private List getGrantedAuthorities(Set authorities) { - List grantedAuthorities = new ArrayList<>(); - for (Authority authority : authorities) { - grantedAuthorities.add(new SimpleGrantedAuthority(authority.getName())); - } - return grantedAuthorities; + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); } @Override public boolean supports(Class authentication) { return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); } - } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index 1e8d6a1b..c936de17 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -1,68 +1,85 @@ package com.eazybytes.config; -import com.eazybytes.filter.*; +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.CsrfCookieFilter; import jakarta.servlet.http.HttpServletRequest; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; import org.springframework.security.web.csrf.CookieCsrfTokenRepository; import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.CorsConfigurationSource; -import java.util.Arrays; import java.util.Collections; +import static org.springframework.security.config.Customizer.withDefaults; @Configuration +@Profile("!prod") public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - CsrfTokenRequestAttributeHandler requestHandler = new CsrfTokenRequestAttributeHandler(); - requestHandler.setCsrfRequestAttributeName("_csrf"); - http.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) - .cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() { - @Override - public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { - CorsConfiguration config = new CorsConfiguration(); - config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); - config.setAllowedMethods(Collections.singletonList("*")); - config.setAllowCredentials(true); - config.setAllowedHeaders(Collections.singletonList("*")); - config.setExposedHeaders(Arrays.asList("Authorization")); - config.setMaxAge(3600L); - return config; - } - })).csrf((csrf) -> csrf.csrfTokenRequestHandler(requestHandler).ignoringRequestMatchers("/contact","/register") + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.securityContext(contextConfig -> contextConfig.requireExplicitSave(false)) + .sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers( "/contact","/register") .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) - .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) - .addFilterAt(new AuthoritiesLoggingAtFilter(),BasicAuthenticationFilter.class) - .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) - .addFilterAfter(new JWTTokenGeneratorFilter(), BasicAuthenticationFilter.class) - .addFilterBefore(new JWTTokenValidatorFilter(), BasicAuthenticationFilter.class) - .authorizeHttpRequests((requests)->requests + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .authorizeHttpRequests((requests) -> requests + /*.requestMatchers("/myAccount").hasAuthority("VIEWACCOUNT") + .requestMatchers("/myBalance").hasAnyAuthority("VIEWBALANCE", "VIEWACCOUNT") + .requestMatchers("/myLoans").hasAuthority("VIEWLOANS") + .requestMatchers("/myCards").hasAuthority("VIEWCARDS")*/ .requestMatchers("/myAccount").hasRole("USER") - .requestMatchers("/myBalance").hasAnyRole("USER","ADMIN") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") .requestMatchers("/myLoans").hasRole("USER") .requestMatchers("/myCards").hasRole("USER") .requestMatchers("/user").authenticated() - .requestMatchers("/notices","/contact","/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); return http.build(); } @Bean public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..adae84af --- /dev/null +++ b/section9/springsecsection9/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,85 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.CsrfCookieFilter; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Collections; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.securityContext(contextConfig -> contextConfig.requireExplicitSave(false)) + .sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("https://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .authorizeHttpRequests((requests) -> requests + /*.requestMatchers("/myAccount").hasAuthority("VIEWACCOUNT") + .requestMatchers("/myBalance").hasAnyAuthority("VIEWBALANCE", "VIEWACCOUNT") + .requestMatchers("/myLoans").hasAuthority("VIEWLOANS") + .requestMatchers("/myCards").hasAuthority("VIEWCARDS")*/ + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").hasRole("USER") + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + +} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section9/springsecsection9/src/main/java/com/eazybytes/constants/ApplicationConstants.java deleted file mode 100644 index 7c1aa7ef..00000000 --- a/section9/springsecsection9/src/main/java/com/eazybytes/constants/ApplicationConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public class ApplicationConstants { - - public static final String ERROR_MSG = "An unknown error occured"; - public static final String SUCCESS_MSG = "Request Successfully processed"; - -} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/constants/SecurityConstants.java b/section9/springsecsection9/src/main/java/com/eazybytes/constants/SecurityConstants.java deleted file mode 100644 index 0d47a016..00000000 --- a/section9/springsecsection9/src/main/java/com/eazybytes/constants/SecurityConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public interface SecurityConstants { - - public static final String JWT_KEY = "jxgEQeXHuPq8VdbyYFNkANdudQ53YUn4"; - public static final String JWT_HEADER = "Authorization"; - -} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/controller/AccountController.java b/section9/springsecsection9/src/main/java/com/eazybytes/controller/AccountController.java index f4f4025b..b5c3b79b 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/controller/AccountController.java @@ -2,23 +2,23 @@ import com.eazybytes.model.Accounts; import com.eazybytes.repository.AccountsRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController +@RequiredArgsConstructor public class AccountController { - @Autowired - private AccountsRepository accountsRepository; + private final AccountsRepository accountsRepository; @GetMapping("/myAccount") - public Accounts getAccountDetails(@RequestParam int id) { + public Accounts getAccountDetails(@RequestParam long id) { Accounts accounts = accountsRepository.findByCustomerId(id); - if (accounts != null ) { + if (accounts != null) { return accounts; - }else { + } else { return null; } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/controller/BalanceController.java b/section9/springsecsection9/src/main/java/com/eazybytes/controller/BalanceController.java index 71ef84ea..14752a7d 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/controller/BalanceController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.AccountTransactions; import com.eazybytes.repository.AccountTransactionsRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @@ -10,18 +10,18 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class BalanceController { - @Autowired - private AccountTransactionsRepository accountTransactionsRepository; + private final AccountTransactionsRepository accountTransactionsRepository; @GetMapping("/myBalance") - public List getBalanceDetails(@RequestParam int id) { + public List getBalanceDetails(@RequestParam long id) { List accountTransactions = accountTransactionsRepository. findByCustomerIdOrderByTransactionDtDesc(id); - if (accountTransactions != null ) { + if (accountTransactions != null) { return accountTransactions; - }else { + } else { return null; } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/controller/CardsController.java b/section9/springsecsection9/src/main/java/com/eazybytes/controller/CardsController.java index 5aab6d8c..ff93cb36 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/controller/CardsController.java @@ -2,6 +2,7 @@ import com.eazybytes.model.Cards; import com.eazybytes.repository.CardsRepository; +import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -10,13 +11,13 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class CardsController { - @Autowired - private CardsRepository cardsRepository; + private final CardsRepository cardsRepository; @GetMapping("/myCards") - public List getCardDetails(@RequestParam int id) { + public List getCardDetails(@RequestParam long id) { List cards = cardsRepository.findByCustomerId(id); if (cards != null ) { return cards; diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/controller/ContactController.java b/section9/springsecsection9/src/main/java/com/eazybytes/controller/ContactController.java index 32e8899d..78d5a020 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/controller/ContactController.java @@ -1,21 +1,20 @@ package com.eazybytes.controller; -import java.sql.Date; -import java.util.Random; - -import org.springframework.beans.factory.annotation.Autowired; +import com.eazybytes.model.Contact; +import com.eazybytes.repository.ContactRepository; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Contact; -import com.eazybytes.repository.ContactRepository; +import java.sql.Date; +import java.util.Random; @RestController +@RequiredArgsConstructor public class ContactController { - @Autowired - private ContactRepository contactRepository; + private final ContactRepository contactRepository; @PostMapping("/contact") public Contact saveContactInquiryDetails(@RequestBody Contact contact) { @@ -27,6 +26,6 @@ public Contact saveContactInquiryDetails(@RequestBody Contact contact) { public String getServiceReqNumber() { Random random = new Random(); int ranNum = random.nextInt(999999999 - 9999) + 9999; - return "SR"+ranNum; + return "SR" + ranNum; } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/controller/LoansController.java b/section9/springsecsection9/src/main/java/com/eazybytes/controller/LoansController.java index 6405685f..d48467f0 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/controller/LoansController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.Loans; import com.eazybytes.repository.LoanRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @@ -10,17 +10,17 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class LoansController { - @Autowired - private LoanRepository loanRepository; + private final LoanRepository loanRepository; @GetMapping("/myLoans") - public List getLoanDetails(@RequestParam int id) { + public List getLoanDetails(@RequestParam long id) { List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(id); - if (loans != null ) { + if (loans != null) { return loans; - }else { + } else { return null; } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/controller/NoticesController.java b/section9/springsecsection9/src/main/java/com/eazybytes/controller/NoticesController.java index 9943001c..277f7abc 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/controller/NoticesController.java @@ -1,31 +1,30 @@ package com.eazybytes.controller; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.springframework.beans.factory.annotation.Autowired; +import com.eazybytes.model.Notice; +import com.eazybytes.repository.NoticeRepository; +import lombok.RequiredArgsConstructor; import org.springframework.http.CacheControl; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Notice; -import com.eazybytes.repository.NoticeRepository; +import java.util.List; +import java.util.concurrent.TimeUnit; @RestController +@RequiredArgsConstructor public class NoticesController { - @Autowired - private NoticeRepository noticeRepository; + private final NoticeRepository noticeRepository; @GetMapping("/notices") public ResponseEntity> getNotices() { List notices = noticeRepository.findAllActiveNotices(); - if (notices != null ) { + if (notices != null) { return ResponseEntity.ok() .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) .body(notices); - }else { + } else { return null; } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/controller/LoginController.java b/section9/springsecsection9/src/main/java/com/eazybytes/controller/UserController.java similarity index 50% rename from section9/springsecsection9/src/main/java/com/eazybytes/controller/LoginController.java rename to section9/springsecsection9/src/main/java/com/eazybytes/controller/UserController.java index 380e009a..48852074 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/controller/LoginController.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/controller/UserController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.Customer; import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.security.core.Authentication; @@ -13,48 +13,40 @@ import org.springframework.web.bind.annotation.RestController; import java.sql.Date; -import java.util.List; +import java.util.Optional; @RestController -public class LoginController { +@RequiredArgsConstructor +public class UserController { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; @PostMapping("/register") public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; try { String hashPwd = passwordEncoder.encode(customer.getPwd()); customer.setPwd(hashPwd); - customer.setCreateDt(String.valueOf(new Date(System.currentTimeMillis()))); - savedCustomer = customerRepository.save(customer); + customer.setCreateDt(new Date(System.currentTimeMillis())); + Customer savedCustomer = customerRepository.save(customer); + if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); } } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); } - return response; } @RequestMapping("/user") public Customer getUserDetailsAfterLogin(Authentication authentication) { - List customers = customerRepository.findByEmail(authentication.getName()); - if (customers.size() > 0) { - return customers.get(0); - } else { - return null; - } - + Optional optionalCustomer = customerRepository.findByEmail(authentication.getName()); + return optionalCustomer.orElse(null); } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section9/springsecsection9/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section9/springsecsection9/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/events/AuthorizationEvents.java b/section9/springsecsection9/src/main/java/com/eazybytes/events/AuthorizationEvents.java new file mode 100644 index 00000000..69193055 --- /dev/null +++ b/section9/springsecsection9/src/main/java/com/eazybytes/events/AuthorizationEvents.java @@ -0,0 +1,20 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.authorization.event.AuthorizationDeniedEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthorizationEvents { + + @EventListener + public void onFailure(AuthorizationDeniedEvent deniedEvent) { + log.error("Authorization failed for the user : {} due to : {}", deniedEvent.getAuthentication().get().getName(), + deniedEvent.getAuthorizationDecision().toString()); + } + +} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section9/springsecsection9/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java b/section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java deleted file mode 100644 index ff6b0071..00000000 --- a/section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.eazybytes.filter; - -import jakarta.servlet.*; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.context.SecurityContextHolder; - -import java.io.IOException; -import java.util.logging.Logger; - -public class AuthoritiesLoggingAfterFilter implements Filter { - - private final Logger LOG = - Logger.getLogger(AuthoritiesLoggingAfterFilter.class.getName()); - - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - - Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); - if (null != authentication) { - LOG.info("User " + authentication.getName() + " is successfully authenticated and " - + "has the authorities " + authentication.getAuthorities().toString()); - } - chain.doFilter(request, response); - } - -} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java b/section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java deleted file mode 100644 index 55babbd8..00000000 --- a/section9/springsecsection9/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.eazybytes.filter; - -import jakarta.servlet.*; - -import java.io.IOException; -import java.util.logging.Logger; - -public class AuthoritiesLoggingAtFilter implements Filter { - - private final Logger LOG = - Logger.getLogger(AuthoritiesLoggingAtFilter.class.getName()); - - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - LOG.info("Authentication Validation is in progress"); - chain.doFilter(request, response); - } - -} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java b/section9/springsecsection9/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java index 4e65b58d..be9f9438 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java @@ -11,14 +11,13 @@ public class CsrfCookieFilter extends OncePerRequestFilter { + @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { CsrfToken csrfToken = (CsrfToken) request.getAttribute(CsrfToken.class.getName()); - if(null != csrfToken.getHeaderName()){ - response.setHeader(csrfToken.getHeaderName(), csrfToken.getToken()); - } + // Render the token value to a cookie by causing the deferred token to be loaded + csrfToken.getToken(); filterChain.doFilter(request, response); } - } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java b/section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java deleted file mode 100644 index 0e886bdd..00000000 --- a/section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.eazybytes.filter; - -import com.eazybytes.constants.SecurityConstants; -import io.jsonwebtoken.Jwts; -import io.jsonwebtoken.security.Keys; -import jakarta.servlet.FilterChain; -import jakarta.servlet.ServletException; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.web.filter.OncePerRequestFilter; - -import javax.crypto.SecretKey; -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.util.Collection; -import java.util.Date; -import java.util.HashSet; -import java.util.Set; - -public class JWTTokenGeneratorFilter extends OncePerRequestFilter { - - @Override - protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, - FilterChain filterChain) throws ServletException, IOException { - Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); - if (null != authentication) { - SecretKey key = Keys.hmacShaKeyFor(SecurityConstants.JWT_KEY.getBytes(StandardCharsets.UTF_8)); - String jwt = Jwts.builder().issuer("Eazy Bank").subject("JWT Token") - .claim("username", authentication.getName()) - .claim("authorities", populateAuthorities(authentication.getAuthorities())) - .issuedAt(new Date()) - .expiration(new Date((new Date()).getTime() + 30000000)) - .signWith(key).compact(); - response.setHeader(SecurityConstants.JWT_HEADER, jwt); - } - - filterChain.doFilter(request, response); - } - - @Override - protected boolean shouldNotFilter(HttpServletRequest request) { - return !request.getServletPath().equals("/user"); - } - - private String populateAuthorities(Collection collection) { - Set authoritiesSet = new HashSet<>(); - for (GrantedAuthority authority : collection) { - authoritiesSet.add(authority.getAuthority()); - } - return String.join(",", authoritiesSet); - } - -} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java b/section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java deleted file mode 100644 index 22cb5604..00000000 --- a/section9/springsecsection9/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.eazybytes.filter; - -import com.eazybytes.constants.SecurityConstants; -import io.jsonwebtoken.Claims; -import io.jsonwebtoken.Jwts; -import io.jsonwebtoken.security.Keys; -import jakarta.servlet.FilterChain; -import jakarta.servlet.ServletException; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; -import org.springframework.security.authentication.BadCredentialsException; -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.authority.AuthorityUtils; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.web.filter.OncePerRequestFilter; - -import javax.crypto.SecretKey; -import java.io.IOException; -import java.nio.charset.StandardCharsets; - -public class JWTTokenValidatorFilter extends OncePerRequestFilter { - - @Override - protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, - FilterChain filterChain) throws ServletException, IOException { - String jwt = request.getHeader(SecurityConstants.JWT_HEADER); - if (null != jwt) { - try { - SecretKey key = Keys.hmacShaKeyFor( - SecurityConstants.JWT_KEY.getBytes(StandardCharsets.UTF_8)); - - Claims claims = Jwts.parser() - .verifyWith(key) - .build() - .parseSignedClaims(jwt) - .getPayload(); - String username = String.valueOf(claims.get("username")); - String authorities = (String) claims.get("authorities"); - Authentication auth = new UsernamePasswordAuthenticationToken(username, null, - AuthorityUtils.commaSeparatedStringToAuthorityList(authorities)); - SecurityContextHolder.getContext().setAuthentication(auth); - } catch (Exception e) { - throw new BadCredentialsException("Invalid Token received!"); - } - - } - filterChain.doFilter(request, response); - } - - @Override - protected boolean shouldNotFilter(HttpServletRequest request) { - return request.getServletPath().equals("/user"); - } - -} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/AccountTransactions.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/AccountTransactions.java index 8f40fb16..b2833f59 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/AccountTransactions.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/AccountTransactions.java @@ -4,10 +4,14 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; import java.sql.Date; @Entity +@Getter +@Setter @Table(name="account_transactions") public class AccountTransactions { @@ -19,7 +23,7 @@ public class AccountTransactions { private long accountNumber; @Column(name = "customer_id") - private int customerId; + private long customerId; @Column(name="transaction_dt") private Date transactionDt; @@ -37,77 +41,6 @@ public class AccountTransactions { private int closingBalance; @Column(name = "create_dt") - private String createDt; + private Date createDt; - public String getTransactionId() { - return transactionId; - } - - public void setTransactionId(String transactionId) { - this.transactionId = transactionId; - } - - public long getAccountNumber() { - return accountNumber; - } - - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getTransactionDt() { - return transactionDt; - } - - public void setTransactionDt(Date transactionDt) { - this.transactionDt = transactionDt; - } - - public String getTransactionSummary() { - return transactionSummary; - } - - public void setTransactionSummary(String transactionSummary) { - this.transactionSummary = transactionSummary; - } - - public String getTransactionType() { - return transactionType; - } - - public void setTransactionType(String transactionType) { - this.transactionType = transactionType; - } - - public int getTransactionAmt() { - return transactionAmt; - } - - public void setTransactionAmt(int transactionAmt) { - this.transactionAmt = transactionAmt; - } - - public int getClosingBalance() { - return closingBalance; - } - - public void setClosingBalance(int closingBalance) { - this.closingBalance = closingBalance; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/Accounts.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/Accounts.java index dbb62886..30a6bcba 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/Accounts.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/Accounts.java @@ -4,12 +4,17 @@ import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; @Entity +@Getter @Setter public class Accounts { @Column(name = "customer_id") - private int customerId; + private long customerId; @Id @Column(name="account_number") @@ -22,38 +27,6 @@ public class Accounts { private String branchAddress; @Column(name = "create_dt") - private String createDt; - - - public int getCustomerId() { - return customerId; - } - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - public long getAccountNumber() { - return accountNumber; - } - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - public String getAccountType() { - return accountType; - } - public void setAccountType(String accountType) { - this.accountType = accountType; - } - public String getBranchAddress() { - return branchAddress; - } - public void setBranchAddress(String branchAddress) { - this.branchAddress = branchAddress; - } - public String getCreateDt() { - return createDt; - } - public void setCreateDt(String createDt) { - this.createDt = createDt; - } + private Date createDt; } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/Authority.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/Authority.java index c09f62a2..706f8137 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/Authority.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/Authority.java @@ -1,45 +1,22 @@ package com.eazybytes.model; import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; @Entity -@Table(name = "authorities") +@Getter @Setter +@Table(name="authorities") public class Authority { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private Long id; + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; private String name; @ManyToOne - @JoinColumn(name = "customer_id") + @JoinColumn(name="customer_id") private Customer customer; - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Customer getCustomer() { - return customer; - } - - public void setCustomer(Customer customer) { - this.customer = customer; - } - } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/Cards.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/Cards.java index 03a425d5..8a090acb 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/Cards.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/Cards.java @@ -1,103 +1,39 @@ package com.eazybytes.model; -import java.sql.Date; - import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; @Entity +@Getter @Setter @Table(name = "cards") public class Cards { - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "card_id") - private int cardId; - - @Column(name = "customer_id") - private int customerId; - - @Column(name = "card_number") - private String cardNumber; - - @Column(name = "card_type") - private String cardType; - - @Column(name = "total_limit") - private int totalLimit; - - @Column(name = "amount_used") - private int amountUsed; - - @Column(name = "available_amount") - private int availableAmount; - - @Column(name = "create_dt") - private Date createDt; - - public int getCardId() { - return cardId; - } - - public void setCardId(int cardId) { - this.cardId = cardId; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public String getCardNumber() { - return cardNumber; - } - - public void setCardNumber(String cardNumber) { - this.cardNumber = cardNumber; - } - - public String getCardType() { - return cardType; - } - - public void setCardType(String cardType) { - this.cardType = cardType; - } + @Id + @Column(name = "card_id") + private long cardId; - public int getTotalLimit() { - return totalLimit; - } + @Column(name = "customer_id") + private long customerId; - public void setTotalLimit(int totalLimit) { - this.totalLimit = totalLimit; - } + @Column(name = "card_number") + private String cardNumber; - public int getAmountUsed() { - return amountUsed; - } + @Column(name = "card_type") + private String cardType; - public void setAmountUsed(int amountUsed) { - this.amountUsed = amountUsed; - } + @Column(name = "total_limit") + private int totalLimit; - public int getAvailableAmount() { - return availableAmount; - } + @Column(name = "amount_used") + private int amountUsed; - public void setAvailableAmount(int availableAmount) { - this.availableAmount = availableAmount; - } + @Column(name = "available_amount") + private int availableAmount; - public Date getCreateDt() { - return createDt; - } + @Column(name = "create_dt") + private Date createDt; - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/Contact.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/Contact.java index fa5c7ff5..3de986d5 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/Contact.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/Contact.java @@ -4,10 +4,13 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; import java.sql.Date; @Entity +@Getter @Setter @Table(name = "contact_messages") public class Contact { @@ -27,53 +30,5 @@ public class Contact { @Column(name = "create_dt") private Date createDt; - - public String getContactId() { - return contactId; - } - - public void setContactId(String contactId) { - this.contactId = contactId; - } - - public String getContactName() { - return contactName; - } - - public void setContactName(String contactName) { - this.contactName = contactName; - } - - public String getContactEmail() { - return contactEmail; - } - - public void setContactEmail(String contactEmail) { - this.contactEmail = contactEmail; - } - - public String getSubject() { - return subject; - } - - public void setSubject(String subject) { - this.subject = subject; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/Customer.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/Customer.java index bd3086a5..0395ce85 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/Customer.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/Customer.java @@ -3,18 +3,20 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; +import java.sql.Date; import java.util.Set; @Entity +@Getter @Setter public class Customer { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "customer_id") - private int id; + private long id; private String name; @@ -29,73 +31,11 @@ public class Customer { private String role; @Column(name = "create_dt") - private String createDt; + @JsonIgnore + private Date createDt; + @OneToMany(mappedBy = "customer", fetch = FetchType.EAGER) @JsonIgnore - @OneToMany(mappedBy="customer",fetch=FetchType.EAGER) private Set authorities; - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getMobileNumber() { - return mobileNumber; - } - - public void setMobileNumber(String mobileNumber) { - this.mobileNumber = mobileNumber; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - - public Set getAuthorities() { - return authorities; - } - - public void setAuthorities(Set authorities) { - this.authorities = authorities; - } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/Loans.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/Loans.java index 0622a955..f779eb20 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/Loans.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/Loans.java @@ -1,103 +1,42 @@ package com.eazybytes.model; -import java.sql.Date; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import java.sql.Date; @Entity -@Table(name="loans") +@Getter @Setter +@Table(name = "loans") public class Loans { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "loan_number") - private int loanNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="start_dt") - private Date startDt; - - @Column(name = "loan_type") - private String loanType; - - @Column(name = "total_loan") - private int totalLoan; - - @Column(name = "amount_paid") - private int amountPaid; - - @Column(name = "outstanding_amount") - private int outstandingAmount; - - @Column(name = "create_dt") - private String createDt; - - public int getLoanNumber() { - return loanNumber; - } - - public void setLoanNumber(int loanNumber) { - this.loanNumber = loanNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getStartDt() { - return startDt; - } - - public void setStartDt(Date startDt) { - this.startDt = startDt; - } - - public String getLoanType() { - return loanType; - } - public void setLoanType(String loanType) { - this.loanType = loanType; - } + @Id + @Column(name = "loan_number") + private long loanNumber; - public int getTotalLoan() { - return totalLoan; - } + @Column(name = "customer_id") + private long customerId; - public void setTotalLoan(int totalLoan) { - this.totalLoan = totalLoan; - } + @Column(name = "start_dt") + private Date startDt; - public int getAmountPaid() { - return amountPaid; - } + @Column(name = "loan_type") + private String loanType; - public void setAmountPaid(int amountPaid) { - this.amountPaid = amountPaid; - } + @Column(name = "total_loan") + private int totalLoan; - public int getOutstandingAmount() { - return outstandingAmount; - } + @Column(name = "amount_paid") + private int amountPaid; - public void setOutstandingAmount(int outstandingAmount) { - this.outstandingAmount = outstandingAmount; - } + @Column(name = "outstanding_amount") + private int outstandingAmount; - public String getCreateDt() { - return createDt; - } + @Column(name = "create_dt") + private Date createDt; - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/model/Notice.java b/section9/springsecsection9/src/main/java/com/eazybytes/model/Notice.java index 33e08468..7ed13868 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/model/Notice.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/model/Notice.java @@ -1,91 +1,42 @@ package com.eazybytes.model; -import java.sql.Date; +import com.fasterxml.jackson.annotation.JsonIgnore; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import java.sql.Date; @Entity +@Getter @Setter @Table(name = "notice_details") public class Notice { - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "notice_id") - private int noticeId; - - @Column(name = "notice_summary") - private String noticeSummary; - - @Column(name = "notice_details") - private String noticeDetails; - - @Column(name = "notic_beg_dt") - private Date noticBegDt; - - @Column(name = "notic_end_dt") - private Date noticEndDt; - - @Column(name = "create_dt") - private Date createDt; - - @Column(name = "update_dt") - private Date updateDt; - - public int getNoticeId() { - return noticeId; - } - - public void setNoticeId(int noticeId) { - this.noticeId = noticeId; - } - - public String getNoticeSummary() { - return noticeSummary; - } - - public void setNoticeSummary(String noticeSummary) { - this.noticeSummary = noticeSummary; - } - - public String getNoticeDetails() { - return noticeDetails; - } - - public void setNoticeDetails(String noticeDetails) { - this.noticeDetails = noticeDetails; - } - - public Date getNoticBegDt() { - return noticBegDt; - } + @Id + @Column(name = "notice_id") + private long noticeId; - public void setNoticBegDt(Date noticBegDt) { - this.noticBegDt = noticBegDt; - } + @Column(name = "notice_summary") + private String noticeSummary; - public Date getNoticEndDt() { - return noticEndDt; - } + @Column(name = "notice_details") + private String noticeDetails; - public void setNoticEndDt(Date noticEndDt) { - this.noticEndDt = noticEndDt; - } + @Column(name = "notic_beg_dt") + private Date noticBegDt; - public Date getCreateDt() { - return createDt; - } + @Column(name = "notic_end_dt") + private Date noticEndDt; - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } + @JsonIgnore + @Column(name = "create_dt") + private Date createDt; - public Date getUpdateDt() { - return updateDt; - } + @JsonIgnore + @Column(name = "update_dt") + private Date updateDt; - public void setUpdateDt(Date updateDt) { - this.updateDt = updateDt; - } } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java b/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java index 580d4ee3..a06c2fd7 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java @@ -8,8 +8,8 @@ import com.eazybytes.model.AccountTransactions; @Repository -public interface AccountTransactionsRepository extends CrudRepository { +public interface AccountTransactionsRepository extends CrudRepository { - List findByCustomerIdOrderByTransactionDtDesc(int customerId); + List findByCustomerIdOrderByTransactionDtDesc(long customerId); } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountsRepository.java b/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountsRepository.java index 0bcc1f5a..6ae5d8f4 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountsRepository.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/repository/AccountsRepository.java @@ -1,13 +1,12 @@ package com.eazybytes.repository; +import com.eazybytes.model.Accounts; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import com.eazybytes.model.Accounts; - @Repository public interface AccountsRepository extends CrudRepository { - - Accounts findByCustomerId(int customerId); + + Accounts findByCustomerId(long customerId); } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/repository/CardsRepository.java b/section9/springsecsection9/src/main/java/com/eazybytes/repository/CardsRepository.java index 21b7875c..61e1f4f5 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/repository/CardsRepository.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/repository/CardsRepository.java @@ -2,6 +2,7 @@ import java.util.List; +import com.eazybytes.model.Loans; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; @@ -10,6 +11,6 @@ @Repository public interface CardsRepository extends CrudRepository { - List findByCustomerId(int customerId); + List findByCustomerId(long customerId); } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/repository/ContactRepository.java b/section9/springsecsection9/src/main/java/com/eazybytes/repository/ContactRepository.java index 9a042095..0ec283fd 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/repository/ContactRepository.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/repository/ContactRepository.java @@ -6,7 +6,7 @@ import com.eazybytes.model.Contact; @Repository -public interface ContactRepository extends CrudRepository { +public interface ContactRepository extends CrudRepository { } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section9/springsecsection9/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/repository/LoanRepository.java b/section9/springsecsection9/src/main/java/com/eazybytes/repository/LoanRepository.java index beecb516..7c1a9105 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/repository/LoanRepository.java +++ b/section9/springsecsection9/src/main/java/com/eazybytes/repository/LoanRepository.java @@ -10,6 +10,6 @@ @Repository public interface LoanRepository extends CrudRepository { - List findByCustomerIdOrderByStartDtDesc(int customerId); + List findByCustomerIdOrderByStartDtDesc(long customerId); } diff --git a/section9/springsecsection9/src/main/resources/application.properties b/section9/springsecsection9/src/main/resources/application.properties index 527b9a43..d091a248 100644 --- a/section9/springsecsection9/src/main/resources/application.properties +++ b/section9/springsecsection9/src/main/resources/application.properties @@ -1,5 +1,15 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} diff --git a/section9/springsecsection9/src/main/resources/application_prod.properties b/section9/springsecsection9/src/main/resources/application_prod.properties new file mode 100644 index 00000000..9ef98007 --- /dev/null +++ b/section9/springsecsection9/src/main/resources/application_prod.properties @@ -0,0 +1,13 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} diff --git a/section9/springsecsection9/src/main/resources/sql/scripts.sql b/section9/springsecsection9/src/main/resources/sql/scripts.sql index 52c0ad32..86a4af5e 100644 --- a/section9/springsecsection9/src/main/resources/sql/scripts.sql +++ b/section9/springsecsection9/src/main/resources/sql/scripts.sql @@ -1,9 +1,5 @@ -create database eazybank; - -use eazybank; - -drop table `users`; drop table `authorities`; +drop table `users`; drop table `customer`; CREATE TABLE `customer` ( @@ -18,7 +14,7 @@ CREATE TABLE `customer` ( ); INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) - VALUES ('Happy','happy@example.com','9876548337', '$2y$12$oRRbkNfwuR8ug4MlzH5FOeui.//1mkd.RsOAJMbykTSupVy.x/vb2', 'admin',CURDATE()); + VALUES ('Happy','happy@example.com','5334122365', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin',CURDATE()); CREATE TABLE `accounts` ( `customer_id` int NOT NULL, @@ -187,10 +183,10 @@ INSERT INTO `authorities` (`customer_id`, `name`) INSERT INTO `authorities` (`customer_id`, `name`) VALUES (1, 'VIEWBALANCE'); - DELETE FROM `authorities`; +DELETE FROM `authorities`; INSERT INTO `authorities` (`customer_id`, `name`) VALUES (1, 'ROLE_USER'); INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'ROLE_ADMIN'); + VALUES (1, 'ROLE_ADMIN'); \ No newline at end of file diff --git a/section_10/bank-app-ui/.browserslistrc b/section_10/bank-app-ui/.browserslistrc deleted file mode 100644 index 4f9ac269..00000000 --- a/section_10/bank-app-ui/.browserslistrc +++ /dev/null @@ -1,16 +0,0 @@ -# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. -# For additional information regarding the format and rule options, please see: -# https://github.com/browserslist/browserslist#queries - -# For the full list of supported browsers by the Angular framework, please see: -# https://angular.io/guide/browser-support - -# You can see what browsers were selected by your queries by running: -# npx browserslist - -last 1 Chrome version -last 1 Firefox version -last 2 Edge major versions -last 2 Safari major versions -last 2 iOS major versions -Firefox ESR diff --git a/section_10/bank-app-ui/.vscode/extensions.json b/section_10/bank-app-ui/.vscode/extensions.json deleted file mode 100644 index 77b37457..00000000 --- a/section_10/bank-app-ui/.vscode/extensions.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 - "recommendations": ["angular.ng-template"] -} diff --git a/section_10/bank-app-ui/.vscode/launch.json b/section_10/bank-app-ui/.vscode/launch.json deleted file mode 100644 index 740e35a0..00000000 --- a/section_10/bank-app-ui/.vscode/launch.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "ng serve", - "type": "pwa-chrome", - "request": "launch", - "preLaunchTask": "npm: start", - "url": "http://localhost:4200/" - }, - { - "name": "ng test", - "type": "chrome", - "request": "launch", - "preLaunchTask": "npm: test", - "url": "http://localhost:9876/debug.html" - } - ] -} diff --git a/section_10/bank-app-ui/.vscode/tasks.json b/section_10/bank-app-ui/.vscode/tasks.json deleted file mode 100644 index a298b5bd..00000000 --- a/section_10/bank-app-ui/.vscode/tasks.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - // For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558 - "version": "2.0.0", - "tasks": [ - { - "type": "npm", - "script": "start", - "isBackground": true, - "problemMatcher": { - "owner": "typescript", - "pattern": "$tsc", - "background": { - "activeOnStart": true, - "beginsPattern": { - "regexp": "(.*?)" - }, - "endsPattern": { - "regexp": "bundle generation complete" - } - } - } - }, - { - "type": "npm", - "script": "test", - "isBackground": true, - "problemMatcher": { - "owner": "typescript", - "pattern": "$tsc", - "background": { - "activeOnStart": true, - "beginsPattern": { - "regexp": "(.*?)" - }, - "endsPattern": { - "regexp": "bundle generation complete" - } - } - } - } - ] -} diff --git a/section_10/bank-app-ui/karma.conf.js b/section_10/bank-app-ui/karma.conf.js deleted file mode 100644 index fc6f3890..00000000 --- a/section_10/bank-app-ui/karma.conf.js +++ /dev/null @@ -1,44 +0,0 @@ -// Karma configuration file, see link for more information -// https://karma-runner.github.io/1.0/config/configuration-file.html - -module.exports = function (config) { - config.set({ - basePath: '', - frameworks: ['jasmine', '@angular-devkit/build-angular'], - plugins: [ - require('karma-jasmine'), - require('karma-chrome-launcher'), - require('karma-jasmine-html-reporter'), - require('karma-coverage'), - require('@angular-devkit/build-angular/plugins/karma') - ], - client: { - jasmine: { - // you can add configuration options for Jasmine here - // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html - // for example, you can disable the random execution with `random: false` - // or set a specific seed with `seed: 4321` - }, - clearContext: false // leave Jasmine Spec Runner output visible in browser - }, - jasmineHtmlReporter: { - suppressAll: true // removes the duplicated traces - }, - coverageReporter: { - dir: require('path').join(__dirname, './coverage/bank-app-ui'), - subdir: '.', - reporters: [ - { type: 'html' }, - { type: 'text-summary' } - ] - }, - reporters: ['progress', 'kjhtml'], - port: 9876, - colors: true, - logLevel: config.LOG_INFO, - autoWatch: true, - browsers: ['Chrome'], - singleRun: false, - restartOnFileChange: true - }); -}; diff --git a/section_10/bank-app-ui/package-lock.json b/section_10/bank-app-ui/package-lock.json deleted file mode 100644 index 47df1533..00000000 --- a/section_10/bank-app-ui/package-lock.json +++ /dev/null @@ -1,20539 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "bank-app-ui", - "version": "0.0.0", - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/architect/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "optionalDependencies": { - "esbuild": "0.14.49" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "@angular/localize": "^14.0.0", - "@angular/service-worker": "^14.0.0", - "karma": "^6.3.0", - "ng-packagr": "^14.0.0", - "protractor": "^7.0.0", - "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=4.6.2 <4.8" - }, - "peerDependenciesMeta": { - "@angular/localize": { - "optional": true - }, - "@angular/service-worker": { - "optional": true - }, - "karma": { - "optional": true - }, - "ng-packagr": { - "optional": true - }, - "protractor": { - "optional": true - }, - "tailwindcss": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "webpack": "^5.30.0", - "webpack-dev-server": "^4.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "dependencies": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "chokidar": "^3.5.2" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/@angular-devkit/core/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/@angular-devkit/schematics/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - } - }, - "node_modules/@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "dependencies": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - }, - "bin": { - "ng": "bin/ng.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/core": { - "optional": true - } - } - }, - "node_modules/@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - }, - "bin": { - "ng-xi18n": "bundles/src/bin/ng_xi18n.js", - "ngc": "bundles/src/bin/ngc.js", - "ngcc": "bundles/ngcc/main-ngcc.js" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/compiler": "14.1.3", - "typescript": ">=4.6.2 <4.8" - } - }, - "node_modules/@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.11.4" - } - }, - "node_modules/@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/animations": "14.1.3", - "@angular/common": "14.1.3", - "@angular/core": "14.1.3" - }, - "peerDependenciesMeta": { - "@angular/animations": { - "optional": true - } - } - }, - "node_modules/@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/compiler": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3" - } - }, - "node_modules/@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0" - }, - "peerDependencies": { - "@angular/common": "14.1.3", - "@angular/core": "14.1.3", - "@angular/platform-browser": "14.1.3", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "dependencies": { - "tslib": "^2.4.0" - }, - "peerDependencies": { - "@angular/core": "^14.0.0", - "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" - } - }, - "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==", - "hasInstallScript": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "hasInstallScript": true, - "dependencies": { - "@fortawesome/fontawesome-common-types": "6.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "node_modules/@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - }, - "peerDependencies": { - "@angular/compiler-cli": "^14.0.0", - "typescript": ">=4.6.2 <4.8", - "webpack": "^5.54.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "dependencies": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/git/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "dependencies": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "installed-package-contents": "index.js" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "dependencies": { - "infer-owner": "^1.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "dependencies": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/run-script/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "dependencies": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - }, - "engines": { - "node": "^14.15.0 || >=16.10.0", - "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", - "yarn": ">= 1.13.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "node_modules/@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "node_modules/@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "18.7.13", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.13.tgz", - "integrity": "sha512-46yIhxSe5xEaJZXWdIBP7GU4HDTG8/eo0qd9atdiL+lFpA03y8KS+lkTN834TWJj5767GbWv4n/P6efyTFt1Dw==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/agentkeepalive/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - ], - "dependencies": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" - } - }, - "node_modules/babel-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true, - "engines": { - "node": "^4.5.0 || >= 5.9" - } - }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/twbs" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/bootstrap" - } - ], - "peerDependencies": { - "@popperjs/core": "^2.11.5" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/connect/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/connect/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "node_modules/copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "dependencies": { - "is-what": "^3.14.1" - }, - "funding": { - "url": "https://github.com/sponsors/mesqueeb" - } - }, - "node_modules/copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - } - }, - "node_modules/critters/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/critters/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/critters/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/critters/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/critters/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/critters/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cross-spawn/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, - "node_modules/css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-blank-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-has-pseudo": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "bin": { - "css-prefers-color-scheme": "dist/cli.cjs" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "node_modules/date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "dependencies": { - "clone": "^1.0.2" - } - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "node_modules/di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "node_modules/dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "dependencies": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "dependencies": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "node_modules/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "node_modules/esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "node_modules/esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "node_modules/express/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/finalhandler/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "node_modules/follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==", - "engines": { - "node": ">=0.10.3" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "dependencies": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "node_modules/hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "node_modules/hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "dependencies": { - "ms": "^2.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "dependencies": { - "minimatch": "^5.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true, - "engines": { - "node": ">= 8.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/gjtorikian/" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true, - "engines": [ - "node >= 0.2.0" - ] - }, - "node_modules/karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "dependencies": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "bin": { - "karma": "bin/karma" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "dependencies": { - "which": "^1.2.1" - } - }, - "node_modules/karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/karma-coverage/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma-coverage/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "dependencies": { - "jasmine-core": "^4.1.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "karma": "^6.0.0" - } - }, - "node_modules/karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "peerDependencies": { - "jasmine-core": "^4.0.0", - "karma": "^6.0.0", - "karma-jasmine": "^5.0.0" - } - }, - "node_modules/karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "dependencies": { - "source-map-support": "^0.5.5" - } - }, - "node_modules/karma/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/karma/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/karma/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/karma/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/karma/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/karma/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/karma/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/karma/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "dependencies": { - "copy-anything": "^2.0.1", - "parse-node-version": "^1.0.1", - "tslib": "^2.3.0" - }, - "bin": { - "lessc": "bin/lessc" - }, - "engines": { - "node": ">=6" - }, - "optionalDependencies": { - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "source-map": "~0.6.0" - } - }, - "node_modules/less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "dependencies": { - "klona": "^2.0.4" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "less": "^3.5.0 || ^4.0.0", - "webpack": "^5.0.0" - } - }, - "node_modules/less/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/less/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/less/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/less/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "dependencies": { - "webpack-sources": "^3.0.0" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - }, - "webpack-sources": { - "optional": true - } - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.8" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "dependencies": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 4.4.x" - } - }, - "node_modules/needle/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/needle/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "!win32" - ], - "dependencies": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true, - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": "^12.22 || ^14.13 || >=16" - } - }, - "node_modules/node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/node-gyp/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "node_modules/npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "node_modules/npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "npm-packlist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "dependencies": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "dependencies": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/ora/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-retry/node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "dependencies": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - }, - "bin": { - "pacote": "lib/bin.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "dependencies": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0" - }, - "optionalDependencies": { - "nice-napi": "^1.0.2" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": ">=7.6.0" - }, - "peerDependencies": { - "postcss": "^8.4.6" - } - }, - "node_modules/postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.3" - } - }, - "node_modules/postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "dependencies": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" - } - }, - "node_modules/postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "dependencies": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true, - "funding": [ - { - "type": "kofi", - "url": "https://ko-fi.com/mrcgrtz" - }, - { - "type": "liberapay", - "url": "https://liberapay.com/mrcgrtz" - } - ], - "engines": { - "node": "^12 || ^14 || >=16" - } - }, - "node_modules/postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "peerDependencies": { - "postcss": "^8" - } - }, - "node_modules/postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "dependencies": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "peerDependencies": { - "postcss": "^8.0.3" - } - }, - "node_modules/postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.10" - }, - "engines": { - "node": "^12 || ^14 || >=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - "peerDependencies": { - "postcss": "^8.2" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true, - "engines": { - "node": ">=0.9" - } - }, - "node_modules/qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "dependencies": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "dependencies": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "node_modules/regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "node_modules/regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "dependencies": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/resolve-url-loader/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/resolve-url-loader/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "dependencies": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", - "sass": "^1.3.0", - "sass-embedded": "*", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - } - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/schema-utils/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/schema-utils/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/schema-utils/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "node_modules/selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "dependencies": { - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/send/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "node_modules/socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "dependencies": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.72.1" - } - }, - "node_modules/source-map-loader/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "dependencies": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "dependencies": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "bin": { - "stylus": "bin/stylus" - }, - "engines": { - "node": "*" - } - }, - "node_modules/stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "stylus": ">=0.52.4", - "webpack": "^5.0.0" - } - }, - "node_modules/stylus/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/stylus/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/stylus/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/test-exclude/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/test-exclude/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "node_modules/typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==", - "engines": { - "node": ">=14" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/ua-parser-js" - }, - { - "type": "paypal", - "url": "https://paypal.me/faisalman" - } - ], - "engines": { - "node": "*" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "dependencies": { - "builtins": "^5.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "dependencies": { - "typed-assert": "^1.0.8" - }, - "engines": { - "node": ">= 12" - }, - "peerDependencies": { - "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", - "webpack": "^5.12.0" - }, - "peerDependenciesMeta": { - "html-webpack-plugin": { - "optional": true - } - } - }, - "node_modules/webpack/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/webpack/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "dependencies": { - "tslib": "^2.3.0" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@angular-devkit/architect": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1401.3.tgz", - "integrity": "sha512-DQvKfl8Q9c02jpGqZX1nOL4mAnRBU6BSqPlhi1q17ZrB8sQpYtDBb8Epn2DDq48l7SQVFnRg6Zgje9L1LObURg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/build-angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.1.3.tgz", - "integrity": "sha512-LZCGd68LCVOwgcGC9DVfjc+wmsTbQmrTMIjWPMXkqufmicEFptR7ocr2dBFJRiVPwqRj+/J+A98cck0GYRC5fw==", - "dev": true, - "requires": { - "@ampproject/remapping": "2.2.0", - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/build-webpack": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@babel/core": "7.18.6", - "@babel/generator": "7.18.7", - "@babel/helper-annotate-as-pure": "7.18.6", - "@babel/plugin-proposal-async-generator-functions": "7.18.6", - "@babel/plugin-transform-async-to-generator": "7.18.6", - "@babel/plugin-transform-runtime": "7.18.6", - "@babel/preset-env": "7.18.6", - "@babel/runtime": "7.18.6", - "@babel/template": "7.18.6", - "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "14.1.3", - "ansi-colors": "4.1.3", - "babel-loader": "8.2.5", - "babel-plugin-istanbul": "6.1.1", - "browserslist": "^4.9.1", - "cacache": "16.1.1", - "copy-webpack-plugin": "11.0.0", - "critters": "0.0.16", - "css-loader": "6.7.1", - "esbuild": "0.14.49", - "esbuild-wasm": "0.14.49", - "glob": "8.0.3", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "karma-source-map-support": "1.4.0", - "less": "4.1.3", - "less-loader": "11.0.0", - "license-webpack-plugin": "4.0.2", - "loader-utils": "3.2.0", - "mini-css-extract-plugin": "2.6.1", - "minimatch": "5.1.0", - "open": "8.4.0", - "ora": "5.4.1", - "parse5-html-rewriting-stream": "6.0.1", - "piscina": "3.2.0", - "postcss": "8.4.14", - "postcss-import": "14.1.0", - "postcss-loader": "7.0.1", - "postcss-preset-env": "7.7.2", - "regenerator-runtime": "0.13.9", - "resolve-url-loader": "5.0.0", - "rxjs": "6.6.7", - "sass": "1.53.0", - "sass-loader": "13.0.2", - "semver": "7.3.7", - "source-map-loader": "4.0.0", - "source-map-support": "0.5.21", - "stylus": "0.58.1", - "stylus-loader": "7.0.0", - "terser": "5.14.2", - "text-table": "0.2.0", - "tree-kill": "1.2.2", - "tslib": "2.4.0", - "webpack": "5.73.0", - "webpack-dev-middleware": "5.3.3", - "webpack-dev-server": "4.9.3", - "webpack-merge": "5.8.0", - "webpack-subresource-integrity": "5.1.0" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - } - } - }, - "@angular-devkit/build-webpack": { - "version": "0.1401.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1401.3.tgz", - "integrity": "sha512-CCKinKF1JNy/cDE5Psn1N4Tl18k9eecDXJUhL4uix3DUHpP3qsVRta8sVJrmE4a3z8DYN6MCw6M38GRzOZiXCQ==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.1.3.tgz", - "integrity": "sha512-YBxhRl7hKgirjcKeurfejVrIgmw31GcfKKCyQiIudoLCYjonnSMdDEx2y8BNMANvxe5YmuZsIYJtgVlqp3mMDg==", - "dev": true, - "requires": { - "ajv": "8.11.0", - "ajv-formats": "2.1.1", - "jsonc-parser": "3.1.0", - "rxjs": "6.6.7", - "source-map": "0.7.4" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular-devkit/schematics": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.1.3.tgz", - "integrity": "sha512-i1vuuClGvBzmgQi3qAUWTwLdnGJZ/C8xVeFMHXmgVNZhck9/8xGGusi500SYsGcVzEfetGSJt5hOfUHmVrcpbg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "jsonc-parser": "3.1.0", - "magic-string": "0.26.2", - "ora": "5.4.1", - "rxjs": "6.6.7" - }, - "dependencies": { - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@angular/animations": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.1.3.tgz", - "integrity": "sha512-AmnrsRWJxlIQPnnef3MCo9N7bbFmEWvyyDPB8z4UOYDqBwRBHnDn5g1rrVQzLJH7I1O2DLcm/EhWYJrfagQ2aQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.1.3.tgz", - "integrity": "sha512-JAvxOXXGf4VCJUQLe3g0pDNnOnE5E7tJfhqsn77+TGrhFpYPMmZ8z747ohiFXrTqbSe0dWTwOfqwpAA41R1CeA==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.1401.3", - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "@schematics/angular": "14.1.3", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.3", - "debug": "4.3.4", - "ini": "3.0.0", - "inquirer": "8.2.4", - "jsonc-parser": "3.1.0", - "npm-package-arg": "9.1.0", - "npm-pick-manifest": "7.0.1", - "open": "8.4.0", - "ora": "5.4.1", - "pacote": "13.6.1", - "resolve": "1.22.1", - "semver": "7.3.7", - "symbol-observable": "4.0.0", - "uuid": "8.3.2", - "yargs": "17.5.1" - } - }, - "@angular/common": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.1.3.tgz", - "integrity": "sha512-t5zidNLcQrgrShBFFsEhvJ6yKw5jwv/Td/AQrknQzrAz3kVBH4dOZGC5jolasFipy/P1DNoG2K+igPCGeskc4w==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.1.3.tgz", - "integrity": "sha512-QtBHzhGzym8CwGrZLFYsciaLq/F4lxUxNOBDQdrc5Pd/qYiaJ50rrWfmXpqrFR6CC0E0bgzIj0Uxdf+D/VRmWQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/compiler-cli": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.1.3.tgz", - "integrity": "sha512-GJqUfIKuM7bYeR699ceRSa6LT90vEi2q+s+YIwRrlXSFto7xNCmn5bJsYV6XmslvPPTqiLR5w9K8MNC9qYBbxw==", - "dev": true, - "requires": { - "@babel/core": "^7.17.2", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.11.0", - "magic-string": "^0.26.0", - "reflect-metadata": "^0.1.2", - "semver": "^7.0.0", - "sourcemap-codec": "^1.4.8", - "tslib": "^2.3.0", - "yargs": "^17.2.1" - } - }, - "@angular/core": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.1.3.tgz", - "integrity": "sha512-V3OJD4cShjLzyJAWQ1ogSW0WhKJwti5zsoT1SQ2RoA5UScBPzZN/F/0n/4IupHeaIC+NfaLX916xKTGWA8G8SQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/forms": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.1.3.tgz", - "integrity": "sha512-gCN3my9KRp6BLlBGh4uw8NukUPKCl+quroMO2lkvsodF0MA42uhKHO+EImrpLxNMK7lfENIERwthb4mh4G4cFQ==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.1.3.tgz", - "integrity": "sha512-baEHBj2pCrz5XR9KCb2FaAChWsRrxl9yapDZFNpApucN/OlQpBDVA9UDDvaYeD3PsI8nVL3B6danKUloamd+pw==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser-dynamic": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.1.3.tgz", - "integrity": "sha512-WOWMgXUe8dEXt33jCP8/d8O5NQJKyr+4Dq2sjJ7y1ouCOjJsc9Ybi3y5uMyDCwb6SausGWLJ6w7DweMDWMlsYA==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/router": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.1.3.tgz", - "integrity": "sha512-LjWQBaeaGkgFy814booGmQV2eELDynzACGAZUwrpWmdHKo9p9GCi9dYttYXspNDmxoipXAzYvVPSABlMfhuQ+g==", - "requires": { - "tslib": "^2.3.0" - } - }, - "@assemblyscript/loader": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", - "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", - "dev": true - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "dev": true, - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.18.8.tgz", - "integrity": "sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==", - "dev": true - }, - "@babel/core": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.6.tgz", - "integrity": "sha512-cQbWBpxcbbs/IUredIPkHiAGULLV8iwgNRMFzvbhEXISp4f3rUUXE5+TIw6KwUWUR3DwyI6gmBRnmAtYaWehwQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helpers": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.6", - "@babel/types": "^7.18.6", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.18.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.7.tgz", - "integrity": "sha512-shck+7VLlY72a2w9c3zYWuE1pwOKEiQHV7GTUbSnhyl5eu3i04t30tBY82ZRWrDfo3gkakCFtevExnxbkf2a3A==", - "dev": true, - "requires": { - "@babel/types": "^7.18.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz", - "integrity": "sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.20.2", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz", - "integrity": "sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz", - "integrity": "sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz", - "integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz", - "integrity": "sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz", - "integrity": "sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", - "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz", - "integrity": "sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", - "dev": true, - "requires": { - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.18.11.tgz", - "integrity": "sha512-oBUlbv+rjZLh2Ks9SKi4aL7eKaAXBWleHzU89mP0G6BMUlRxSckk9tSIkgDGydhgFxHuGSlBQZfnaD47oBEB7w==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.18.9", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.18.11", - "@babel/types": "^7.18.10" - }, - "dependencies": { - "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - } - } - } - }, - "@babel/helpers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.9.tgz", - "integrity": "sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==", - "dev": true, - "requires": { - "@babel/template": "^7.18.6", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz", - "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==", - "dev": true - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz", - "integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.18.9.tgz", - "integrity": "sha512-EkRQxsxoytpTlKJmSPYrsOMjCILacAjtSVkd4gChEe2kXjFCun3yohhW5I7plXJhCemM0gKsaGMcO8tinvCA5g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.9.tgz", - "integrity": "sha512-p5VCYNddPLkZTq4XymQIaIfZNJwT9YsjkPOhkVEqt6QIpQFZVM9IltqqYpOEkJoN1DPznmxUDyZ5CTZs/ZCuHA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.9.tgz", - "integrity": "sha512-zY/VSIbbqtoRoJKo2cDTewL364jSlZGvn0LKOf9ntbfxOvjfmyrdtEEOAdswOswhZEb8UH3jDkCKHd1sPgsS0A==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.18.6.tgz", - "integrity": "sha512-UmEOGF8XgaIqD74bC8g7iV3RYj8lMf0Bw7NJzvnS9qQhM4mg+1WHKotUIdjxgD2RGrgFLZZPCFPFj3P/kVDYhg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.6.tgz", - "integrity": "sha512-8uRHk9ZmRSnWqUgyae249EJZ94b0yAGLBIqzZzl+0iEdbno55Pmlt/32JZsHwXD9k/uZj18Aqqk35wBX4CBTXA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.18.9.tgz", - "integrity": "sha512-39Q814wyoOPtIB/qGopNIL9xDChOE1pNU0ZY5dO0owhiVt/5kFm4li+/bBtwc7QotG0u5EPzqhZdjMtmqBqyQA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/preset-env": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.6.tgz", - "integrity": "sha512-WrthhuIIYKrEFAwttYzgRNQ5hULGmwTj+D6l7Zdfsv5M7IWV/OZbUfbeL++Qrzx1nVJwWROIFhCHRYQV4xbPNw==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.18.6", - "@babel/helper-compilation-targets": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-async-generator-functions": "^7.18.6", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.6", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.6", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.6", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.6", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.6", - "@babel/plugin-transform-classes": "^7.18.6", - "@babel/plugin-transform-computed-properties": "^7.18.6", - "@babel/plugin-transform-destructuring": "^7.18.6", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.6", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.6", - "@babel/plugin-transform-function-name": "^7.18.6", - "@babel/plugin-transform-literals": "^7.18.6", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.18.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.6", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.18.6", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.6", - "@babel/plugin-transform-typeof-symbol": "^7.18.6", - "@babel/plugin-transform-unicode-escapes": "^7.18.6", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.18.6", - "babel-plugin-polyfill-corejs2": "^0.3.1", - "babel-plugin-polyfill-corejs3": "^0.5.2", - "babel-plugin-polyfill-regenerator": "^0.3.1", - "core-js-compat": "^3.22.1", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/runtime": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", - "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", - "integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.6", - "@babel/types": "^7.18.6" - } - }, - "@babel/traverse": { - "version": "7.18.11", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.11.tgz", - "integrity": "sha512-TG9PiM2R/cWCAy6BPJKeHzNbu4lPzOSZpeMfeNErskGpTJx6trEvFaVCbDvpcxwy49BKWmEPwiW8mrysNiDvIQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.18.10", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.18.11", - "@babel/types": "^7.18.10", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "@babel/generator": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", - "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.10", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/types": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.10.tgz", - "integrity": "sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.18.6", - "to-fast-properties": "^2.0.0" - } - }, - "@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true - }, - "@csstools/postcss-cascade-layers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.0.5.tgz", - "integrity": "sha512-Id/9wBT7FkgFzdEpiEWrsVd4ltDxN0rI0QS0SChbeQiSuux3z21SJCRLu6h2cvCEUmaRi+VD0mHFj+GJD4GFnw==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.2", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-color-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", - "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-font-format-keywords": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", - "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-hwb-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", - "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-ic-unit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", - "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-is-pseudo-class": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", - "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "@csstools/postcss-normalize-display-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", - "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-oklab-function": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", - "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-progressive-custom-properties": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", - "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-stepped-value-functions": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", - "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-trigonometric-functions": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", - "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "@csstools/postcss-unset-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", - "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", - "dev": true, - "requires": {} - }, - "@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", - "dev": true, - "requires": {} - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true - }, - "@fortawesome/angular-fontawesome": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.11.1.tgz", - "integrity": "sha512-Ngzm5MVxk76ZhYpPTNOI/mpYNz9bzwfBXC5L9mktLgOONjBuYBPVt+bH8lny8hNtDk0ppZzXsMN6CO7hckdfnw==", - "requires": { - "tslib": "^2.4.0" - } - }, - "@fortawesome/fontawesome-common-types": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.2.tgz", - "integrity": "sha512-wBaAPGz1Awxg05e0PBRkDRuTsy4B3dpBm+zreTTyd9TH4uUM27cAL4xWyWR0rLJCrRwzVsQ4hF3FvM6rqydKPA==" - }, - "@fortawesome/fontawesome-svg-core": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.2.tgz", - "integrity": "sha512-853G/Htp0BOdXnPoeCPTjFrVwyrJHpe8MhjB/DYE9XjwhnNDfuBCd3aKc2YUYbEfHEcBws4UAA0kA9dymZKGjA==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@fortawesome/free-solid-svg-icons": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.2.tgz", - "integrity": "sha512-lTgZz+cMpzjkHmCwOG3E1ilUZrnINYdqMmrkv30EC3XbRsGlbIOL8H9LaNp5SV4g0pNJDfQ4EdTWWaMvdwyLiQ==", - "requires": { - "@fortawesome/fontawesome-common-types": "6.1.2" - } - }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "@ngtools/webpack": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.1.3.tgz", - "integrity": "sha512-tP2aiWKezhOVcR/PhVHcxKohO4ShKrhD42wgbJPbcqHeenOv1Hf5nW1nyUviqeF8QbVmPdBPF/ZOB8hIq5o6sw==", - "dev": true, - "requires": {} - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@npmcli/fs": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", - "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", - "dev": true, - "requires": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - } - }, - "@npmcli/git": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", - "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", - "dev": true, - "requires": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@npmcli/installed-package-contents": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", - "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", - "dev": true, - "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "@npmcli/move-file": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", - "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, - "@npmcli/node-gyp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", - "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", - "dev": true - }, - "@npmcli/promise-spawn": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", - "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", - "dev": true, - "requires": { - "infer-owner": "^1.0.4" - } - }, - "@npmcli/run-script": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", - "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", - "dev": true, - "requires": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", - "peer": true - }, - "@schematics/angular": { - "version": "14.1.3", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.1.3.tgz", - "integrity": "sha512-hhH4MGfBD1oxrd9PFZwgaqXAT9dYTK/6AtoIcr40OwEbnS5ZoZwzrgb0OOT2NW3bmL0dg3YeJei3Sf89hlI5eg==", - "dev": true, - "requires": { - "@angular-devkit/core": "14.1.3", - "@angular-devkit/schematics": "14.1.3", - "jsonc-parser": "3.1.0" - } - }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true - }, - "@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.30", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.30.tgz", - "integrity": "sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/jasmine": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.0.3.tgz", - "integrity": "sha512-Opp1LvvEuZdk8fSSvchK2mZwhVrsNT0JgJE9Di6MjnaIpmEXM8TLCPPrVtNTYh8+5MPdY8j9bAHMu2SSfwpZJg==", - "dev": true - }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true - }, - "@types/node": { - "version": "18.7.13", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.13.tgz", - "integrity": "sha512-46yIhxSe5xEaJZXWdIBP7GU4HDTG8/eo0qd9atdiL+lFpA03y8KS+lkTN834TWJj5767GbWv4n/P6efyTFt1Dw==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", - "dev": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", - "dev": true - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "requires": {} - }, - "adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "dependencies": { - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - } - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "requires": { - "ajv": "^8.0.0" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "autoprefixer": { - "version": "10.4.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz", - "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "caniuse-lite": "^1.0.30001373", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", - "dev": true, - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz", - "integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.2", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", - "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.2", - "core-js-compat": "^3.21.0" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "bonjour-service": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.13.tgz", - "integrity": "sha512-LWKRU/7EqDUC9CTAQtuZl5HzBALoCYwtLhffW3et7vZMwv3bWLpJf8bRYlMD5OCcDpTfnPgNCV4yo9ZIaJGMiA==", - "dev": true, - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "bootstrap": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.0.tgz", - "integrity": "sha512-qlnS9GL6YZE6Wnef46GxGv1UpGGzAwO0aPL1yOjzDIJpeApeMvqV24iL+pjr2kU4dduoBA9fINKWKgMToobx9A==", - "requires": {} - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browserslist": { - "version": "4.21.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz", - "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001370", - "electron-to-chromium": "^1.4.202", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.5" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "requires": { - "semver": "^7.0.0" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "cacache": { - "version": "16.1.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.1.tgz", - "integrity": "sha512-VDKN+LHyCQXaaYZ7rA/qtkURU+/yYhviUdvqEv2LT6QPZU8jpyzEkEVAcKlKLt5dJ5BRp11ym8lo3NKLluEPLg==", - "dev": true, - "requires": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^1.1.1" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001379", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001379.tgz", - "integrity": "sha512-zXf+qxuN8OJrK5Bl5HbJg8cc5/Zm01WNW4ooVWUh92YlKqQZW3fwN5lXLB+kI8wkP5vTWkIIN+rutZuJhf4ykw==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true - }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, - "colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "requires": { - "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "copy-anything": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", - "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", - "dev": true, - "requires": { - "is-what": "^3.14.1" - } - }, - "copy-webpack-plugin": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", - "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.1", - "globby": "^13.1.1", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" - }, - "dependencies": { - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "core-js-compat": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.24.1.tgz", - "integrity": "sha512-XhdNAGeRnTpp8xbD+sR/HFDK9CbeeeqXT6TuofXh3urqEevzkWmLRgrVoykodsw8okqo2pu1BOmuCKrHx63zdw==", - "dev": true, - "requires": { - "browserslist": "^4.21.3", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "critters": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", - "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "css-select": "^4.2.0", - "parse5": "^6.0.1", - "parse5-htmlparser2-tree-adapter": "^6.0.1", - "postcss": "^8.3.7", - "pretty-bytes": "^5.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", - "dev": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" - } - }, - "css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", - "dev": true, - "requires": {} - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true - }, - "cssdb": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-6.6.3.tgz", - "integrity": "sha512-7GDvDSmE+20+WcSMhP17Q1EVWUrLlbxxpMDqG731n8P99JhnQZHR9YvtjPvEHfjFUjvQJvdpKCjlKOX+xe4UVA==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "date-format": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.13.tgz", - "integrity": "sha512-bnYCwf8Emc3pTD8pXnre+wfnjGtfi5ncMDKy7+cWZXbmRAsdWkOQHrfC1yz/KiwP5thDp2kCHWYWKBX4HP1hoQ==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", - "dev": true - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "requires": { - "execa": "^5.0.0" - } - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true - }, - "define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "dev": true - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", - "dev": true, - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.225", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.225.tgz", - "integrity": "sha512-ICHvGaCIQR3P88uK8aRtx8gmejbVJyC6bB4LEC3anzBrIzdzC7aiZHY4iFfXhN4st6I7lMO0x4sgBHf/7kBvRw==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "engine.io": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.0.tgz", - "integrity": "sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==", - "dev": true, - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - } - }, - "engine.io-parser": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", - "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", - "dev": true - }, - "enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true - }, - "err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true - }, - "errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "optional": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true - }, - "esbuild": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.49.tgz", - "integrity": "sha512-/TlVHhOaq7Yz8N1OJrjqM3Auzo5wjvHFLk+T8pIue+fhnhIMpfAzsG6PLVMbFveVxqD2WOp3QHei+52IMUNmCw==", - "dev": true, - "optional": true, - "requires": { - "esbuild-android-64": "0.14.49", - "esbuild-android-arm64": "0.14.49", - "esbuild-darwin-64": "0.14.49", - "esbuild-darwin-arm64": "0.14.49", - "esbuild-freebsd-64": "0.14.49", - "esbuild-freebsd-arm64": "0.14.49", - "esbuild-linux-32": "0.14.49", - "esbuild-linux-64": "0.14.49", - "esbuild-linux-arm": "0.14.49", - "esbuild-linux-arm64": "0.14.49", - "esbuild-linux-mips64le": "0.14.49", - "esbuild-linux-ppc64le": "0.14.49", - "esbuild-linux-riscv64": "0.14.49", - "esbuild-linux-s390x": "0.14.49", - "esbuild-netbsd-64": "0.14.49", - "esbuild-openbsd-64": "0.14.49", - "esbuild-sunos-64": "0.14.49", - "esbuild-windows-32": "0.14.49", - "esbuild-windows-64": "0.14.49", - "esbuild-windows-arm64": "0.14.49" - } - }, - "esbuild-android-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.49.tgz", - "integrity": "sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==", - "dev": true, - "optional": true - }, - "esbuild-android-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.49.tgz", - "integrity": "sha512-g2HGr/hjOXCgSsvQZ1nK4nW/ei8JUx04Li74qub9qWrStlysaVmadRyTVuW32FGIpLQyc5sUjjZopj49eGGM2g==", - "dev": true, - "optional": true - }, - "esbuild-darwin-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.49.tgz", - "integrity": "sha512-3rvqnBCtX9ywso5fCHixt2GBCUsogNp9DjGmvbBohh31Ces34BVzFltMSxJpacNki96+WIcX5s/vum+ckXiLYg==", - "dev": true, - "optional": true - }, - "esbuild-darwin-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.49.tgz", - "integrity": "sha512-XMaqDxO846srnGlUSJnwbijV29MTKUATmOLyQSfswbK/2X5Uv28M9tTLUJcKKxzoo9lnkYPsx2o8EJcTYwCs/A==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.49.tgz", - "integrity": "sha512-NJ5Q6AjV879mOHFri+5lZLTp5XsO2hQ+KSJYLbfY9DgCu8s6/Zl2prWXVANYTeCDLlrIlNNYw8y34xqyLDKOmQ==", - "dev": true, - "optional": true - }, - "esbuild-freebsd-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.49.tgz", - "integrity": "sha512-lFLtgXnAc3eXYqj5koPlBZvEbBSOSUbWO3gyY/0+4lBdRqELyz4bAuamHvmvHW5swJYL7kngzIZw6kdu25KGOA==", - "dev": true, - "optional": true - }, - "esbuild-linux-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.49.tgz", - "integrity": "sha512-zTTH4gr2Kb8u4QcOpTDVn7Z8q7QEIvFl/+vHrI3cF6XOJS7iEI1FWslTo3uofB2+mn6sIJEQD9PrNZKoAAMDiA==", - "dev": true, - "optional": true - }, - "esbuild-linux-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.49.tgz", - "integrity": "sha512-hYmzRIDzFfLrB5c1SknkxzM8LdEUOusp6M2TnuQZJLRtxTgyPnZZVtyMeCLki0wKgYPXkFsAVhi8vzo2mBNeTg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.49.tgz", - "integrity": "sha512-iE3e+ZVv1Qz1Sy0gifIsarJMQ89Rpm9mtLSRtG3AH0FPgAzQ5Z5oU6vYzhc/3gSPi2UxdCOfRhw2onXuFw/0lg==", - "dev": true, - "optional": true - }, - "esbuild-linux-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.49.tgz", - "integrity": "sha512-KLQ+WpeuY+7bxukxLz5VgkAAVQxUv67Ft4DmHIPIW+2w3ObBPQhqNoeQUHxopoW/aiOn3m99NSmSV+bs4BSsdA==", - "dev": true, - "optional": true - }, - "esbuild-linux-mips64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.49.tgz", - "integrity": "sha512-n+rGODfm8RSum5pFIqFQVQpYBw+AztL8s6o9kfx7tjfK0yIGF6tm5HlG6aRjodiiKkH2xAiIM+U4xtQVZYU4rA==", - "dev": true, - "optional": true - }, - "esbuild-linux-ppc64le": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.49.tgz", - "integrity": "sha512-WP9zR4HX6iCBmMFH+XHHng2LmdoIeUmBpL4aL2TR8ruzXyT4dWrJ5BSbT8iNo6THN8lod6GOmYDLq/dgZLalGw==", - "dev": true, - "optional": true - }, - "esbuild-linux-riscv64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.49.tgz", - "integrity": "sha512-h66ORBz+Dg+1KgLvzTVQEA1LX4XBd1SK0Fgbhhw4akpG/YkN8pS6OzYI/7SGENiN6ao5hETRDSkVcvU9NRtkMQ==", - "dev": true, - "optional": true - }, - "esbuild-linux-s390x": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.49.tgz", - "integrity": "sha512-DhrUoFVWD+XmKO1y7e4kNCqQHPs6twz6VV6Uezl/XHYGzM60rBewBF5jlZjG0nCk5W/Xy6y1xWeopkrhFFM0sQ==", - "dev": true, - "optional": true - }, - "esbuild-netbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.49.tgz", - "integrity": "sha512-BXaUwFOfCy2T+hABtiPUIpWjAeWK9P8O41gR4Pg73hpzoygVGnj0nI3YK4SJhe52ELgtdgWP/ckIkbn2XaTxjQ==", - "dev": true, - "optional": true - }, - "esbuild-openbsd-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.49.tgz", - "integrity": "sha512-lP06UQeLDGmVPw9Rg437Btu6J9/BmyhdoefnQ4gDEJTtJvKtQaUcOQrhjTq455ouZN4EHFH1h28WOJVANK41kA==", - "dev": true, - "optional": true - }, - "esbuild-sunos-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.49.tgz", - "integrity": "sha512-4c8Zowp+V3zIWje329BeLbGh6XI9c/rqARNaj5yPHdC61pHI9UNdDxT3rePPJeWcEZVKjkiAS6AP6kiITp7FSw==", - "dev": true, - "optional": true - }, - "esbuild-wasm": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.14.49.tgz", - "integrity": "sha512-5ddzZv8M3WI1fWZ5rEfK5cSA9swlWJcceKgqjKLLERC7FnlNW50kF7hxhpkyC0Z/4w7Xeyt3yUJ9QWNMDXLk2Q==", - "dev": true - }, - "esbuild-windows-32": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.49.tgz", - "integrity": "sha512-q7Rb+J9yHTeKr9QTPDYkqfkEj8/kcKz9lOabDuvEXpXuIcosWCJgo5Z7h/L4r7rbtTH4a8U2FGKb6s1eeOHmJA==", - "dev": true, - "optional": true - }, - "esbuild-windows-64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.49.tgz", - "integrity": "sha512-+Cme7Ongv0UIUTniPqfTX6mJ8Deo7VXw9xN0yJEN1lQMHDppTNmKwAM3oGbD/Vqff+07K2gN0WfNkMohmG+dVw==", - "dev": true, - "optional": true - }, - "esbuild-windows-arm64": { - "version": "0.14.49", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.49.tgz", - "integrity": "sha512-v+HYNAXzuANrCbbLFJ5nmO3m5y2PGZWLe3uloAkLt87aXiO2mZr3BTmacZdjwNkNEHuH3bNtN8cak+mzVjVPfA==", - "dev": true, - "optional": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true - }, - "eventemitter-asyncresource": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", - "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dev": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true - }, - "follow-redirects": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", - "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", - "dev": true - }, - "font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==" - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true - }, - "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - } - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", - "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "glob": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", - "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", - "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dev": true, - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "hdr-histogram-js": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", - "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", - "dev": true, - "requires": { - "@assemblyscript/loader": "^0.10.1", - "base64-js": "^1.2.0", - "pako": "^1.0.3" - } - }, - "hdr-histogram-percentiles-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", - "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", - "dev": true - }, - "hosted-git-info": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz", - "integrity": "sha512-Ek+QmMEqZF8XrbFdwoDjSbm7rT23pCgEMOJmz6GPk/s4yH//RQfNPArhIxbguNxROq/+5lNBwCDHMhA903Kx1Q==", - "dev": true, - "requires": { - "lru-cache": "^7.5.1" - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "dependencies": { - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "requires": {} - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true - }, - "ignore-walk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", - "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", - "dev": true, - "requires": { - "minimatch": "^5.0.1" - } - }, - "image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true - }, - "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", - "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", - "dev": true - }, - "inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true - }, - "is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-what": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", - "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jasmine-core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.2.0.tgz", - "integrity": "sha512-OcFpBrIhnbmb9wfI8cqPSJ50pv3Wg4/NSgoZIqHzIwO/2a9qivJWzv8hUvaREIMYYJBas6AvfXATFdVuzzCqVw==", - "dev": true - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true - }, - "jsonc-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", - "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true - }, - "karma": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz", - "integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==", - "dev": true, - "requires": { - "@colors/colors": "1.5.0", - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.5.1", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "glob": "^7.1.7", - "graceful-fs": "^4.2.6", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.8", - "lodash": "^4.17.21", - "log4js": "^6.4.1", - "mime": "^2.5.2", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.5", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^4.4.1", - "source-map": "^0.6.1", - "tmp": "^0.2.1", - "ua-parser-js": "^0.7.30", - "yargs": "^16.1.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } - } - }, - "karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", - "dev": true, - "requires": { - "which": "^1.2.1" - } - }, - "karma-coverage": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.0.tgz", - "integrity": "sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.2.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.1", - "istanbul-reports": "^3.0.5", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "karma-jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", - "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", - "dev": true, - "requires": { - "jasmine-core": "^4.1.0" - } - }, - "karma-jasmine-html-reporter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", - "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", - "dev": true, - "requires": {} - }, - "karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "requires": { - "source-map-support": "^0.5.5" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true - }, - "less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", - "dev": true, - "requires": { - "copy-anything": "^2.0.1", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "make-dir": "^2.1.0", - "mime": "^1.4.1", - "needle": "^3.1.0", - "parse-node-version": "^1.0.1", - "source-map": "~0.6.0", - "tslib": "^2.3.0" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "less-loader": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", - "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", - "dev": true, - "requires": { - "klona": "^2.0.4" - } - }, - "license-webpack-plugin": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", - "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", - "dev": true, - "requires": { - "webpack-sources": "^3.0.0" - } - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true - }, - "loader-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.0.tgz", - "integrity": "sha512-HVl9ZqccQihZ7JM85dco1MvO9G+ONvxoGa9rkhzFsneGLKSUg1gJf9bWzhRhcvm2qChhWpebQhP44qxjKIUCaQ==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "log4js": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.6.1.tgz", - "integrity": "sha512-J8VYFH2UQq/xucdNu71io4Fo+purYYudyErgBbswWKO0MC6QVOERRomt5su/z6d3RJSmLyTGmXl3Q/XjKCf+/A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "flatted": "^3.2.6", - "rfdc": "^1.3.0", - "streamroller": "^3.1.2" - } - }, - "lru-cache": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.0.tgz", - "integrity": "sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ==", - "dev": true - }, - "magic-string": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", - "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.8" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "make-fetch-happen": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", - "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", - "dev": true, - "requires": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true - }, - "memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", - "dev": true, - "requires": { - "fs-monkey": "^1.0.3" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", - "dev": true, - "requires": { - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimatch": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", - "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-fetch": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.1.tgz", - "integrity": "sha512-/kgtXVGS10PTFET6dAbOBWQtgH+iDiI4NhRqAftojRlsOJhk0y45sVVxqCaRQC+AMFH7JkHiWpuKJKQ+mojKiA==", - "dev": true, - "requires": { - "encoding": "^0.1.13", - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "requires": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", - "dev": true - }, - "needle": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-3.1.0.tgz", - "integrity": "sha512-gCE9weDhjVGCRqS8dwDR/D3GTAeyXLXuqp7I8EzH6DllZGXSUyxuqqLh+YX9rMAWaaTFyVAg6rHGL25dqvczKw==", - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.6.3", - "sax": "^1.2.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "nice-napi": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", - "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", - "dev": true, - "optional": true, - "requires": { - "node-addon-api": "^3.0.0", - "node-gyp-build": "^4.2.2" - } - }, - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true, - "optional": true - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true - }, - "node-gyp": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.1.0.tgz", - "integrity": "sha512-HkmN0ZpQJU7FLbJauJTHkHlSVAXlNGDAzH/VYFZGDOnFyn/Na3GlNJfkudmufOdS6/jNFhy88ObzL7ERz9es1g==", - "dev": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", - "dev": true, - "optional": true - }, - "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", - "dev": true - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", - "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true - }, - "npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-install-checks": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", - "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", - "dev": true, - "requires": { - "semver": "^7.1.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "npm-package-arg": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", - "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", - "dev": true, - "requires": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - } - }, - "npm-packlist": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.1.tgz", - "integrity": "sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^1.1.2", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", - "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", - "dev": true, - "requires": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^1.0.1", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - } - }, - "npm-registry-fetch": { - "version": "13.3.1", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", - "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", - "dev": true, - "requires": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - } - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "requires": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - } - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true - }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "ora": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "requires": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "dependencies": { - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true - } - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pacote": { - "version": "13.6.1", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.1.tgz", - "integrity": "sha512-L+2BI1ougAPsFjXRyBhcKmfT016NscRFLv6Pz5EiNf1CCFJFU0pSKKQwsZTyAQB+sTuUL4TyFyp6J1Ork3dOqw==", - "dev": true, - "requires": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "parse5-html-rewriting-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", - "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", - "dev": true, - "requires": { - "parse5": "^6.0.1", - "parse5-sax-parser": "^6.0.1" - } - }, - "parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parse5-sax-parser": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", - "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "piscina": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", - "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", - "dev": true, - "requires": { - "eventemitter-asyncresource": "^1.0.0", - "hdr-histogram-js": "^2.0.1", - "hdr-histogram-percentiles-obj": "^3.0.0", - "nice-napi": "^1.0.2" - } - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "dev": true, - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-attribute-case-insensitive": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", - "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-clamp": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", - "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-functional-notation": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", - "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-hex-alpha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", - "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-color-rebeccapurple": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", - "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-media": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", - "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-properties": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.8.tgz", - "integrity": "sha512-8rbj8kVu00RQh2fQF81oBqtduiANu4MIxhyf0HbbStgPtnFlWn0yiaYTpLHrPnJbffVY1s9apWsIoVZcc68FxA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-custom-selectors": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", - "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-dir-pseudo-class": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", - "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-double-position-gradients": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", - "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-env-function": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", - "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-focus-visible": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", - "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-focus-within": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", - "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9" - } - }, - "postcss-font-variant": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", - "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", - "dev": true, - "requires": {} - }, - "postcss-gap-properties": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", - "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", - "dev": true, - "requires": {} - }, - "postcss-image-set-function": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", - "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - } - }, - "postcss-initial": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", - "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", - "dev": true, - "requires": {} - }, - "postcss-lab-function": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", - "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", - "dev": true, - "requires": { - "@csstools/postcss-progressive-custom-properties": "^1.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", - "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", - "dev": true, - "requires": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.7" - } - }, - "postcss-logical": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", - "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", - "dev": true, - "requires": {} - }, - "postcss-media-minmax": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", - "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", - "dev": true, - "requires": {} - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "postcss-nesting": { - "version": "10.1.10", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.1.10.tgz", - "integrity": "sha512-lqd7LXCq0gWc0wKXtoKDru5wEUNjm3OryLVNRZ8OnW8km6fSNUuFrjEhU3nklxXE2jvd4qrox566acgh+xQt8w==", - "dev": true, - "requires": { - "@csstools/selector-specificity": "^2.0.0", - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-opacity-percentage": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", - "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", - "dev": true - }, - "postcss-overflow-shorthand": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", - "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-page-break": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", - "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", - "dev": true, - "requires": {} - }, - "postcss-place": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", - "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-preset-env": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.7.2.tgz", - "integrity": "sha512-1q0ih7EDsZmCb/FMDRvosna7Gsbdx8CvYO5hYT120hcp2ZAuOHpSzibujZ4JpIUcAC02PG6b+eftxqjTFh5BNA==", - "dev": true, - "requires": { - "@csstools/postcss-cascade-layers": "^1.0.4", - "@csstools/postcss-color-function": "^1.1.0", - "@csstools/postcss-font-format-keywords": "^1.0.0", - "@csstools/postcss-hwb-function": "^1.0.1", - "@csstools/postcss-ic-unit": "^1.0.0", - "@csstools/postcss-is-pseudo-class": "^2.0.6", - "@csstools/postcss-normalize-display-values": "^1.0.0", - "@csstools/postcss-oklab-function": "^1.1.0", - "@csstools/postcss-progressive-custom-properties": "^1.3.0", - "@csstools/postcss-stepped-value-functions": "^1.0.0", - "@csstools/postcss-trigonometric-functions": "^1.0.1", - "@csstools/postcss-unset-value": "^1.0.1", - "autoprefixer": "^10.4.7", - "browserslist": "^4.21.0", - "css-blank-pseudo": "^3.0.3", - "css-has-pseudo": "^3.0.4", - "css-prefers-color-scheme": "^6.0.3", - "cssdb": "^6.6.3", - "postcss-attribute-case-insensitive": "^5.0.1", - "postcss-clamp": "^4.1.0", - "postcss-color-functional-notation": "^4.2.3", - "postcss-color-hex-alpha": "^8.0.4", - "postcss-color-rebeccapurple": "^7.1.0", - "postcss-custom-media": "^8.0.2", - "postcss-custom-properties": "^12.1.8", - "postcss-custom-selectors": "^6.0.3", - "postcss-dir-pseudo-class": "^6.0.4", - "postcss-double-position-gradients": "^3.1.1", - "postcss-env-function": "^4.0.6", - "postcss-focus-visible": "^6.0.4", - "postcss-focus-within": "^5.0.4", - "postcss-font-variant": "^5.0.0", - "postcss-gap-properties": "^3.0.3", - "postcss-image-set-function": "^4.0.6", - "postcss-initial": "^4.0.1", - "postcss-lab-function": "^4.2.0", - "postcss-logical": "^5.0.4", - "postcss-media-minmax": "^5.0.0", - "postcss-nesting": "^10.1.9", - "postcss-opacity-percentage": "^1.1.2", - "postcss-overflow-shorthand": "^3.0.3", - "postcss-page-break": "^3.0.4", - "postcss-place": "^7.0.4", - "postcss-pseudo-class-any-link": "^7.1.5", - "postcss-replace-overflow-wrap": "^4.0.0", - "postcss-selector-not": "^6.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-pseudo-class-any-link": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", - "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-replace-overflow-wrap": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", - "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", - "dev": true, - "requires": {} - }, - "postcss-selector-not": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", - "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.10" - } - }, - "postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "pretty-bytes": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", - "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", - "dev": true - }, - "proc-log": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", - "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "requires": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true - } - } - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true, - "optional": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true - }, - "qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "requires": { - "pify": "^2.3.0" - } - }, - "read-package-json": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz", - "integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==", - "dev": true, - "requires": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "read-package-json-fast": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", - "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", - "dev": true, - "requires": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "regexpu-core": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.1.0.tgz", - "integrity": "sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==", - "dev": true, - "requires": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - } - }, - "regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "requires": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rxjs": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz", - "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==", - "requires": { - "tslib": "^2.1.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sass": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.53.0.tgz", - "integrity": "sha512-zb/oMirbKhUgRQ0/GFz8TSAwRq2IlR29vOUJZOx0l8sV+CkHUfHa4u5nqrG+1VceZp7Jfj59SVW9ogdhTvJDcQ==", - "dev": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "requires": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - } - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "selfsigned": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", - "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", - "dev": true, - "requires": { - "node-forge": "^1" - } - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true - }, - "socket.io": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.1.tgz", - "integrity": "sha512-0y9pnIso5a9i+lJmsCdtmTTgJFFSvNQKDnPQRz28mGNnxbmqYg2QPtJTLFxhymFZhAIn50eHAKzJeiNaKr+yUQ==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.2.0", - "socket.io-adapter": "~2.4.0", - "socket.io-parser": "~4.0.4" - } - }, - "socket.io-adapter": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", - "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", - "dev": true - }, - "socket.io-parser": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.5.tgz", - "integrity": "sha512-sNjbT9dX63nqUFIOv95tTVm6elyIU4RvB1m8dOeZt+IgWwcWklFDOdmGcfo3zSiRsnR/3pJkjY5lfoGqEe4Eig==", - "dev": true, - "requires": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - } - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "socks": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.0.tgz", - "integrity": "sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==", - "dev": true, - "requires": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - } - }, - "socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", - "dev": true, - "requires": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - } - }, - "source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true - }, - "source-map-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", - "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", - "dev": true, - "requires": { - "abab": "^2.0.6", - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "ssri": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", - "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - }, - "streamroller": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.2.tgz", - "integrity": "sha512-wZswqzbgGGsXYIrBYhOE0yP+nQ6XRk7xDcYwuQAGTYXdyAUmvgVFE0YU1g5pvQT0m7GBaQfYcSnlHbapuK0H0A==", - "dev": true, - "requires": { - "date-format": "^4.0.13", - "debug": "^4.3.4", - "fs-extra": "^8.1.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - }, - "stylus": { - "version": "0.58.1", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.58.1.tgz", - "integrity": "sha512-AYiCHm5ogczdCPMfe9aeQa4NklB2gcf4D/IhzYPddJjTgPc+k4D/EVE0yfQbZD43MHP3lPy+8NZ9fcFxkrgs/w==", - "dev": true, - "requires": { - "css": "^3.0.0", - "debug": "^4.3.2", - "glob": "^7.1.6", - "sax": "~1.2.4", - "source-map": "^0.7.3" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "stylus-loader": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", - "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", - "dev": true, - "requires": { - "fast-glob": "^3.2.11", - "klona": "^2.0.5", - "normalize-path": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "symbol-observable": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", - "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "dev": true - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "terser": { - "version": "5.14.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", - "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", - "dev": true, - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - } - }, - "terser-webpack-plugin": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.5.tgz", - "integrity": "sha512-AOEDLDxD2zylUGf/wxHxklEkOe2/r+seuyOWujejFrIxHf11brA1/dWQNIgXa1c6/Wkxgu7zvv0JhOWfc2ELEA==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true - }, - "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-assert": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", - "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", - "dev": true - }, - "typescript": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", - "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", - "dev": true - }, - "typescript-cookie": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.4.tgz", - "integrity": "sha512-vZo252VmoEleD/dbE9Wb2lMK63V3M/8aqFbp2Pdb4Oxq8YqqADJ7iMh8THZenFXN+uZJPE8RXkztEaHkOptH4w==" - }, - "ua-parser-js": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", - "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", - "dev": true - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz", - "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", - "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", - "dev": true, - "requires": { - "builtins": "^5.0.0" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "webpack": { - "version": "5.73.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz", - "integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==", - "dev": true, - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.9.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.9.3", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz", - "integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==", - "dev": true, - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.0.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" - }, - "dependencies": { - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "ws": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.1.tgz", - "integrity": "sha512-bGy2JzvzkPowEJV++hF07hAD6niYSr0JzBNo/J29WsB57A2r7Wlc1UFcTR9IzrPvuNVO4B8LGqF8qcpsVOhJCA==", - "dev": true, - "requires": {} - } - } - }, - "webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true - }, - "webpack-subresource-integrity": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", - "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", - "dev": true, - "requires": { - "typed-assert": "^1.0.8" - } - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true, - "requires": {} - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, - "yargs": { - "version": "17.5.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", - "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true - }, - "zone.js": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", - "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", - "requires": { - "tslib": "^2.3.0" - } - } - } -} diff --git a/section_10/bank-app-ui/package.json b/section_10/bank-app-ui/package.json deleted file mode 100644 index 8184d08c..00000000 --- a/section_10/bank-app-ui/package.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "name": "bank-app-ui", - "version": "0.0.0", - "scripts": { - "ng": "ng", - "start": "ng serve", - "build": "ng build", - "watch": "ng build --watch --configuration development", - "test": "ng test" - }, - "private": true, - "dependencies": { - "@angular/animations": "^14.1.0", - "@angular/common": "^14.1.0", - "@angular/compiler": "^14.1.0", - "@angular/core": "^14.1.0", - "@angular/forms": "^14.1.0", - "@angular/platform-browser": "^14.1.0", - "@angular/platform-browser-dynamic": "^14.1.0", - "@angular/router": "^14.1.0", - "@fortawesome/angular-fontawesome": "^0.11.1", - "@fortawesome/fontawesome-svg-core": "^6.1.2", - "@fortawesome/free-solid-svg-icons": "^6.1.2", - "bootstrap": "^5.2.0", - "font-awesome": "^4.7.0", - "rxjs": "~7.5.0", - "tslib": "^2.3.0", - "typescript-cookie": "^1.0.4", - "zone.js": "~0.11.4" - }, - "devDependencies": { - "@angular-devkit/build-angular": "^14.1.2", - "@angular/cli": "~14.1.2", - "@angular/compiler-cli": "^14.1.0", - "@types/jasmine": "~4.0.0", - "jasmine-core": "~4.2.0", - "karma": "~6.4.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage": "~2.2.0", - "karma-jasmine": "~5.1.0", - "karma-jasmine-html-reporter": "~2.0.0", - "typescript": "~4.7.2" - } -} diff --git a/section_10/bank-app-ui/src/app/app.component.spec.ts b/section_10/bank-app-ui/src/app/app.component.spec.ts deleted file mode 100644 index c7c59ce9..00000000 --- a/section_10/bank-app-ui/src/app/app.component.spec.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { RouterTestingModule } from '@angular/router/testing'; -import { AppComponent } from './app.component'; - -describe('AppComponent', () => { - beforeEach(async () => { - await TestBed.configureTestingModule({ - imports: [ - RouterTestingModule - ], - declarations: [ - AppComponent - ], - }).compileComponents(); - }); - - it('should create the app', () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app).toBeTruthy(); - }); - - it(`should have as title 'bank-app-ui'`, () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.componentInstance; - expect(app.title).toEqual('bank-app-ui'); - }); - - it('should render title', () => { - const fixture = TestBed.createComponent(AppComponent); - fixture.detectChanges(); - const compiled = fixture.nativeElement as HTMLElement; - expect(compiled.querySelector('.content span')?.textContent).toContain('bank-app-ui app is running!'); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/account/account.component.spec.ts b/section_10/bank-app-ui/src/app/components/account/account.component.spec.ts deleted file mode 100644 index 140216da..00000000 --- a/section_10/bank-app-ui/src/app/components/account/account.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AccountComponent } from './account.component'; - -describe('AccountComponent', () => { - let component: AccountComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ AccountComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AccountComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/balance/balance.component.spec.ts b/section_10/bank-app-ui/src/app/components/balance/balance.component.spec.ts deleted file mode 100644 index 9b61420f..00000000 --- a/section_10/bank-app-ui/src/app/components/balance/balance.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { BalanceComponent } from './balance.component'; - -describe('BalanceComponent', () => { - let component: BalanceComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ BalanceComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(BalanceComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/cards/cards.component.spec.ts b/section_10/bank-app-ui/src/app/components/cards/cards.component.spec.ts deleted file mode 100644 index 6b67f12b..00000000 --- a/section_10/bank-app-ui/src/app/components/cards/cards.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { CardsComponent } from './cards.component'; - -describe('CardsComponent', () => { - let component: CardsComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ CardsComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(CardsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/header/header.component.spec.ts b/section_10/bank-app-ui/src/app/components/header/header.component.spec.ts deleted file mode 100644 index 2d0479d7..00000000 --- a/section_10/bank-app-ui/src/app/components/header/header.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HeaderComponent } from './header.component'; - -describe('HeaderComponent', () => { - let component: HeaderComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ HeaderComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(HeaderComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/home/home.component.spec.ts b/section_10/bank-app-ui/src/app/components/home/home.component.spec.ts deleted file mode 100644 index 5075be73..00000000 --- a/section_10/bank-app-ui/src/app/components/home/home.component.spec.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HomeComponent } from './home.component'; - -describe('HomeComponent', () => { - let component: HomeComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ HomeComponent ] - }) - .compileComponents(); - - fixture = TestBed.createComponent(HomeComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/loans/loans.component.spec.ts b/section_10/bank-app-ui/src/app/components/loans/loans.component.spec.ts deleted file mode 100644 index 20346117..00000000 --- a/section_10/bank-app-ui/src/app/components/loans/loans.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoansComponent } from './loans.component'; - -describe('LoansComponent', () => { - let component: LoansComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoansComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoansComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/login/login.component.spec.ts b/section_10/bank-app-ui/src/app/components/login/login.component.spec.ts deleted file mode 100644 index d6d85a84..00000000 --- a/section_10/bank-app-ui/src/app/components/login/login.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LoginComponent } from './login.component'; - -describe('LoginComponent', () => { - let component: LoginComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LoginComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LoginComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/logout/logout.component.spec.ts b/section_10/bank-app-ui/src/app/components/logout/logout.component.spec.ts deleted file mode 100644 index c04dbe28..00000000 --- a/section_10/bank-app-ui/src/app/components/logout/logout.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LogoutComponent } from './logout.component'; - -describe('LogoutComponent', () => { - let component: LogoutComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ LogoutComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(LogoutComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/components/notices/notices.component.spec.ts b/section_10/bank-app-ui/src/app/components/notices/notices.component.spec.ts deleted file mode 100644 index acf52047..00000000 --- a/section_10/bank-app-ui/src/app/components/notices/notices.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { NoticesComponent } from './notices.component'; - -describe('NoticesComponent', () => { - let component: NoticesComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ NoticesComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(NoticesComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section_10/bank-app-ui/src/app/routeguards/auth.routeguard.ts deleted file mode 100644 index 25678ed4..00000000 --- a/section_10/bank-app-ui/src/app/routeguards/auth.routeguard.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Injectable } from '@angular/core'; -import { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot,Router } from '@angular/router'; -import { User } from '../model/user.model'; - -@Injectable() -export class AuthActivateRouteGuard implements CanActivate { - user = new User(); - - constructor(private router: Router){ - - } - - canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ - if(sessionStorage.getItem('userdetails')){ - this.user = JSON.parse(sessionStorage.getItem('userdetails')!); - } - if(!this.user){ - this.router.navigate(['login']); - } - return this.user?true:false; - } - -} \ No newline at end of file diff --git a/section_10/bank-app-ui/src/app/services/login/login.service.spec.ts b/section_10/bank-app-ui/src/app/services/login/login.service.spec.ts deleted file mode 100644 index 299b0d50..00000000 --- a/section_10/bank-app-ui/src/app/services/login/login.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { LoginService } from './login.service'; - -describe('LoginService', () => { - let service: LoginService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(LoginService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/section_10/bank-app-ui/src/environments/environment.prod.ts b/section_10/bank-app-ui/src/environments/environment.prod.ts deleted file mode 100644 index 3612073b..00000000 --- a/section_10/bank-app-ui/src/environments/environment.prod.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const environment = { - production: true -}; diff --git a/section_10/bank-app-ui/src/environments/environment.ts b/section_10/bank-app-ui/src/environments/environment.ts deleted file mode 100644 index 2527feff..00000000 --- a/section_10/bank-app-ui/src/environments/environment.ts +++ /dev/null @@ -1,17 +0,0 @@ -// This file can be replaced during build by using the `fileReplacements` array. -// `ng build` replaces `environment.ts` with `environment.prod.ts`. -// The list of file replacements can be found in `angular.json`. - -export const environment = { - production: false, - rooturl : 'http://localhost:8080' -}; - -/* - * For easier debugging in development mode, you can import the following file - * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. - * - * This import should be commented out in production mode because it will have a negative impact - * on performance if an error is thrown. - */ -// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/section_10/bank-app-ui/src/polyfills.ts b/section_10/bank-app-ui/src/polyfills.ts deleted file mode 100644 index 429bb9ef..00000000 --- a/section_10/bank-app-ui/src/polyfills.ts +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This file includes polyfills needed by Angular and is loaded before the app. - * You can add your own extra polyfills to this file. - * - * This file is divided into 2 sections: - * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. - * 2. Application imports. Files imported after ZoneJS that should be loaded before your main - * file. - * - * The current setup is for so-called "evergreen" browsers; the last versions of browsers that - * automatically update themselves. This includes recent versions of Safari, Chrome (including - * Opera), Edge on the desktop, and iOS and Chrome on mobile. - * - * Learn more in https://angular.io/guide/browser-support - */ - -/*************************************************************************************************** - * BROWSER POLYFILLS - */ - -/** - * By default, zone.js will patch all possible macroTask and DomEvents - * user can disable parts of macroTask/DomEvents patch by setting following flags - * because those flags need to be set before `zone.js` being loaded, and webpack - * will put import in the top of bundle, so user need to create a separate file - * in this directory (for example: zone-flags.ts), and put the following flags - * into that file, and then add the following code before importing zone.js. - * import './zone-flags'; - * - * The flags allowed in zone-flags.ts are listed here. - * - * The following flags will work for all browsers. - * - * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame - * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick - * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames - * - * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js - * with the following flag, it will bypass `zone.js` patch for IE/Edge - * - * (window as any).__Zone_enable_cross_context_check = true; - * - */ - -/*************************************************************************************************** - * Zone JS is required by default for Angular itself. - */ -import 'zone.js'; // Included with Angular CLI. - - -/*************************************************************************************************** - * APPLICATION IMPORTS - */ diff --git a/section_10/bank-app-ui/src/test.ts b/section_10/bank-app-ui/src/test.ts deleted file mode 100644 index c04c8760..00000000 --- a/section_10/bank-app-ui/src/test.ts +++ /dev/null @@ -1,26 +0,0 @@ -// This file is required by karma.conf.js and loads recursively all the .spec and framework files - -import 'zone.js/testing'; -import { getTestBed } from '@angular/core/testing'; -import { - BrowserDynamicTestingModule, - platformBrowserDynamicTesting -} from '@angular/platform-browser-dynamic/testing'; - -declare const require: { - context(path: string, deep?: boolean, filter?: RegExp): { - (id: string): T; - keys(): string[]; - }; -}; - -// First, initialize the Angular testing environment. -getTestBed().initTestEnvironment( - BrowserDynamicTestingModule, - platformBrowserDynamicTesting(), -); - -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().forEach(context); diff --git a/section_10/springsecsection_10/.mvn/wrapper/maven-wrapper.jar b/section_10/springsecsection_10/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section_10/springsecsection_10/.mvn/wrapper/maven-wrapper.properties b/section_10/springsecsection_10/.mvn/wrapper/maven-wrapper.properties index b74bf7fc..aeccdfdb 100644 --- a/section_10/springsecsection_10/.mvn/wrapper/maven-wrapper.properties +++ b/section_10/springsecsection_10/.mvn/wrapper/maven-wrapper.properties @@ -1,2 +1,18 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section_10/springsecsection_10/mvnw b/section_10/springsecsection_10/mvnw index 8a8fb228..ba9212a0 100755 --- a/section_10/springsecsection_10/mvnw +++ b/section_10/springsecsection_10/mvnw @@ -19,298 +19,232 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir +# Apache Maven Wrapper startup batch script, version 3.3.1 # # Optional ENV vars # ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /usr/local/etc/mavenrc ] ; then - . /usr/local/etc/mavenrc - fi - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac -fi +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 fi fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" +} - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" done + printf %x\\n $h +} - saveddir=`pwd` +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - M2_HOME=`dirname "$PRG"`/.. +die() { + printf %s\\n "$1" >&2 + exit 1 +} - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" fi -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`\\unset -f command; \\command -v java`" - fi -fi +mkdir -p -- "${MAVEN_HOME%/*}" -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" fi -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; fi -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" -exec "$JAVACMD" \ - $MAVEN_OPTS \ - $MAVEN_DEBUG_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" \ - "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" +clean || : +exec_maven "$@" diff --git a/section_10/springsecsection_10/mvnw.cmd b/section_10/springsecsection_10/mvnw.cmd index 1d8ab018..406932da 100644 --- a/section_10/springsecsection_10/mvnw.cmd +++ b/section_10/springsecsection_10/mvnw.cmd @@ -1,3 +1,4 @@ +<# : batch portion @REM ---------------------------------------------------------------------------- @REM Licensed to the Apache Software Foundation (ASF) under one @REM or more contributor license agreements. See the NOTICE file @@ -18,171 +19,128 @@ @REM ---------------------------------------------------------------------------- @REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir +@REM Apache Maven Wrapper startup batch script, version 3.3.1 @REM @REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output @REM ---------------------------------------------------------------------------- -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) ) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section_10/springsecsection_10/pom.xml b/section_10/springsecsection_10/pom.xml index 9c8eca47..86d2c794 100644 --- a/section_10/springsecsection_10/pom.xml +++ b/section_10/springsecsection_10/pom.xml @@ -1,11 +1,11 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes @@ -17,21 +17,17 @@ 21 - - org.springframework.boot - spring-boot-starter-security - org.springframework.boot spring-boot-starter-web - org.springframework.ldap - spring-ldap-core + org.springframework.boot + spring-boot-starter-security - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -42,10 +38,6 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools @@ -53,32 +45,15 @@ true - io.jsonwebtoken - jjwt-api - 0.12.3 - - - io.jsonwebtoken - jjwt-impl - 0.12.3 - runtime - - - io.jsonwebtoken - jjwt-jackson - 0.12.3 - runtime + org.projectlombok + lombok + true org.springframework.boot spring-boot-starter-test test - - org.springframework.security - spring-security-test - test - diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/EazyBankBackendApplication.java index 503cfe8c..44e48d4a 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/EazyBankBackendApplication.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -2,14 +2,14 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; @SpringBootApplication -@EnableMethodSecurity(prePostEnabled = true, securedEnabled = true, jsr250Enabled = true) +@EnableWebSecurity(debug = true) public class EazyBankBackendApplication { - public static void main(String[] args) { - SpringApplication.run(EazyBankBackendApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..415dfb16 --- /dev/null +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java @@ -0,0 +1,40 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("prod") +@RequiredArgsConstructor +public class EazyBankProdUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + // Fetch Age details and perform validation to check if age >18 + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + }else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..712f39f0 --- /dev/null +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,32 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = customer.getAuthorities().stream().map(authority -> new + SimpleGrantedAuthority(authority.getName())).collect(Collectors.toList()); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java index 1d45e72f..96185c80 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -1,59 +1,35 @@ package com.eazybytes.config; -import com.eazybytes.model.Authority; -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; import org.springframework.security.authentication.AuthenticationProvider; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - @Component +@Profile("!prod") +@RequiredArgsConstructor public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; @Override public Authentication authenticate(Authentication authentication) throws AuthenticationException { String username = authentication.getName(); String pwd = authentication.getCredentials().toString(); - List customer = customerRepository.findByEmail(username); - if (customer.size() > 0) { - if (passwordEncoder.matches(pwd, customer.get(0).getPwd())) { - return new UsernamePasswordAuthenticationToken(username, pwd, getGrantedAuthorities(customer.get(0).getAuthorities())); - } else { - throw new BadCredentialsException("Invalid password!"); - } - }else { - throw new BadCredentialsException("No user registered with this details!"); - } - } - - private List getGrantedAuthorities(Set authorities) { - List grantedAuthorities = new ArrayList<>(); - for (Authority authority : authorities) { - grantedAuthorities.add(new SimpleGrantedAuthority(authority.getName())); - } - return grantedAuthorities; + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); } @Override public boolean supports(Class authentication) { return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); } - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java index 62bc3447..b47dc18d 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -1,68 +1,87 @@ package com.eazybytes.config; -import com.eazybytes.filter.*; +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.AuthoritiesLoggingAfterFilter; +import com.eazybytes.filter.AuthoritiesLoggingAtFilter; +import com.eazybytes.filter.CsrfCookieFilter; +import com.eazybytes.filter.RequestValidationBeforeFilter; import jakarta.servlet.http.HttpServletRequest; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; import org.springframework.security.web.csrf.CookieCsrfTokenRepository; import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.CorsConfigurationSource; -import java.util.Arrays; import java.util.Collections; +import static org.springframework.security.config.Customizer.withDefaults; @Configuration +@Profile("!prod") public class ProjectSecurityConfig { @Bean SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - CsrfTokenRequestAttributeHandler requestHandler = new CsrfTokenRequestAttributeHandler(); - requestHandler.setCsrfRequestAttributeName("_csrf"); - http.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) - .cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() { - @Override - public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { - CorsConfiguration config = new CorsConfiguration(); - config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); - config.setAllowedMethods(Collections.singletonList("*")); - config.setAllowCredentials(true); - config.setAllowedHeaders(Collections.singletonList("*")); - config.setExposedHeaders(Arrays.asList("Authorization")); - config.setMaxAge(3600L); - return config; - } - })).csrf((csrf) -> csrf.csrfTokenRequestHandler(requestHandler).ignoringRequestMatchers("/contact","/register") + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.securityContext(contextConfig -> contextConfig.requireExplicitSave(false)) + .sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers( "/contact","/register") .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) - .addFilterAt(new AuthoritiesLoggingAtFilter(),BasicAuthenticationFilter.class) .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) - .addFilterAfter(new JWTTokenGeneratorFilter(), BasicAuthenticationFilter.class) - .addFilterBefore(new JWTTokenValidatorFilter(), BasicAuthenticationFilter.class) - .authorizeHttpRequests((requests)->requests + .addFilterAt(new AuthoritiesLoggingAtFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .authorizeHttpRequests((requests) -> requests .requestMatchers("/myAccount").hasRole("USER") - .requestMatchers("/myBalance").hasAnyRole("USER","ADMIN") - .requestMatchers("/myLoans").authenticated() + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").hasRole("USER") .requestMatchers("/myCards").hasRole("USER") .requestMatchers("/user").authenticated() - .requestMatchers("/notices","/contact","/register").permitAll()) - .formLogin(Customizer.withDefaults()) - .httpBasic(Customizer.withDefaults()); + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); return http.build(); } @Bean public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..9a4b3fce --- /dev/null +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,87 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.AuthoritiesLoggingAfterFilter; +import com.eazybytes.filter.AuthoritiesLoggingAtFilter; +import com.eazybytes.filter.CsrfCookieFilter; +import com.eazybytes.filter.RequestValidationBeforeFilter; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Collections; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.securityContext(contextConfig -> contextConfig.requireExplicitSave(false)) + .sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.ALWAYS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("https://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) + .addFilterAt(new AuthoritiesLoggingAtFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").hasRole("USER") + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + +} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/constants/ApplicationConstants.java deleted file mode 100644 index 7c1aa7ef..00000000 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/constants/ApplicationConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public class ApplicationConstants { - - public static final String ERROR_MSG = "An unknown error occured"; - public static final String SUCCESS_MSG = "Request Successfully processed"; - -} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/constants/SecurityConstants.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/constants/SecurityConstants.java deleted file mode 100644 index 0d47a016..00000000 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/constants/SecurityConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public interface SecurityConstants { - - public static final String JWT_KEY = "jxgEQeXHuPq8VdbyYFNkANdudQ53YUn4"; - public static final String JWT_HEADER = "Authorization"; - -} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/AccountController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/AccountController.java index f4f4025b..b5c3b79b 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/AccountController.java @@ -2,23 +2,23 @@ import com.eazybytes.model.Accounts; import com.eazybytes.repository.AccountsRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController +@RequiredArgsConstructor public class AccountController { - @Autowired - private AccountsRepository accountsRepository; + private final AccountsRepository accountsRepository; @GetMapping("/myAccount") - public Accounts getAccountDetails(@RequestParam int id) { + public Accounts getAccountDetails(@RequestParam long id) { Accounts accounts = accountsRepository.findByCustomerId(id); - if (accounts != null ) { + if (accounts != null) { return accounts; - }else { + } else { return null; } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/BalanceController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/BalanceController.java index 71ef84ea..14752a7d 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/BalanceController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.AccountTransactions; import com.eazybytes.repository.AccountTransactionsRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @@ -10,18 +10,18 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class BalanceController { - @Autowired - private AccountTransactionsRepository accountTransactionsRepository; + private final AccountTransactionsRepository accountTransactionsRepository; @GetMapping("/myBalance") - public List getBalanceDetails(@RequestParam int id) { + public List getBalanceDetails(@RequestParam long id) { List accountTransactions = accountTransactionsRepository. findByCustomerIdOrderByTransactionDtDesc(id); - if (accountTransactions != null ) { + if (accountTransactions != null) { return accountTransactions; - }else { + } else { return null; } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/CardsController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/CardsController.java index 5aab6d8c..ff93cb36 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/CardsController.java @@ -2,6 +2,7 @@ import com.eazybytes.model.Cards; import com.eazybytes.repository.CardsRepository; +import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -10,13 +11,13 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class CardsController { - @Autowired - private CardsRepository cardsRepository; + private final CardsRepository cardsRepository; @GetMapping("/myCards") - public List getCardDetails(@RequestParam int id) { + public List getCardDetails(@RequestParam long id) { List cards = cardsRepository.findByCustomerId(id); if (cards != null ) { return cards; diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/ContactController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/ContactController.java index 9e282e5f..78d5a020 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/ContactController.java @@ -1,42 +1,31 @@ package com.eazybytes.controller; -import java.sql.Date; -import java.util.ArrayList; -import java.util.List; -import java.util.Random; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PostFilter; -import org.springframework.security.access.prepost.PreFilter; +import com.eazybytes.model.Contact; +import com.eazybytes.repository.ContactRepository; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Contact; -import com.eazybytes.repository.ContactRepository; +import java.sql.Date; +import java.util.Random; @RestController +@RequiredArgsConstructor public class ContactController { - @Autowired - private ContactRepository contactRepository; + private final ContactRepository contactRepository; @PostMapping("/contact") - // @PreFilter("filterObject.contactName != 'Test'") - @PostFilter("filterObject.contactName != 'Test'") - public List saveContactInquiryDetails(@RequestBody List contacts) { - Contact contact = contacts.get(0); + public Contact saveContactInquiryDetails(@RequestBody Contact contact) { contact.setContactId(getServiceReqNumber()); contact.setCreateDt(new Date(System.currentTimeMillis())); - contact = contactRepository.save(contact); - List returnContacts = new ArrayList<>(); - returnContacts.add(contact); - return returnContacts; + return contactRepository.save(contact); } public String getServiceReqNumber() { Random random = new Random(); int ranNum = random.nextInt(999999999 - 9999) + 9999; - return "SR"+ranNum; + return "SR" + ranNum; } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoansController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoansController.java index 3b7c8c81..d48467f0 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoansController.java @@ -2,8 +2,7 @@ import com.eazybytes.model.Loans; import com.eazybytes.repository.LoanRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PostAuthorize; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @@ -11,18 +10,17 @@ import java.util.List; @RestController +@RequiredArgsConstructor public class LoansController { - @Autowired - private LoanRepository loanRepository; + private final LoanRepository loanRepository; @GetMapping("/myLoans") - @PostAuthorize("hasRole('USER')") - public List getLoanDetails(@RequestParam int id) { + public List getLoanDetails(@RequestParam long id) { List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(id); - if (loans != null ) { + if (loans != null) { return loans; - }else { + } else { return null; } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoginController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoginController.java deleted file mode 100644 index 380e009a..00000000 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/LoginController.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.eazybytes.controller; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.security.core.Authentication; -import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.sql.Date; -import java.util.List; - -@RestController -public class LoginController { - - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; - - @PostMapping("/register") - public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; - try { - String hashPwd = passwordEncoder.encode(customer.getPwd()); - customer.setPwd(hashPwd); - customer.setCreateDt(String.valueOf(new Date(System.currentTimeMillis()))); - savedCustomer = customerRepository.save(customer); - if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); - } - } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); - } - return response; - } - - @RequestMapping("/user") - public Customer getUserDetailsAfterLogin(Authentication authentication) { - List customers = customerRepository.findByEmail(authentication.getName()); - if (customers.size() > 0) { - return customers.get(0); - } else { - return null; - } - - } - -} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/NoticesController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/NoticesController.java index 9943001c..277f7abc 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/NoticesController.java @@ -1,31 +1,30 @@ package com.eazybytes.controller; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.springframework.beans.factory.annotation.Autowired; +import com.eazybytes.model.Notice; +import com.eazybytes.repository.NoticeRepository; +import lombok.RequiredArgsConstructor; import org.springframework.http.CacheControl; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Notice; -import com.eazybytes.repository.NoticeRepository; +import java.util.List; +import java.util.concurrent.TimeUnit; @RestController +@RequiredArgsConstructor public class NoticesController { - @Autowired - private NoticeRepository noticeRepository; + private final NoticeRepository noticeRepository; @GetMapping("/notices") public ResponseEntity> getNotices() { List notices = noticeRepository.findAllActiveNotices(); - if (notices != null ) { + if (notices != null) { return ResponseEntity.ok() .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) .body(notices); - }else { + } else { return null; } } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/controller/LoginController.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/UserController.java similarity index 50% rename from section7/springsecsection7/src/main/java/com/eazybytes/controller/LoginController.java rename to section_10/springsecsection_10/src/main/java/com/eazybytes/controller/UserController.java index 380e009a..48852074 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/controller/LoginController.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/controller/UserController.java @@ -2,7 +2,7 @@ import com.eazybytes.model.Customer; import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.security.core.Authentication; @@ -13,48 +13,40 @@ import org.springframework.web.bind.annotation.RestController; import java.sql.Date; -import java.util.List; +import java.util.Optional; @RestController -public class LoginController { +@RequiredArgsConstructor +public class UserController { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private PasswordEncoder passwordEncoder; + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; @PostMapping("/register") public ResponseEntity registerUser(@RequestBody Customer customer) { - Customer savedCustomer = null; - ResponseEntity response = null; try { String hashPwd = passwordEncoder.encode(customer.getPwd()); customer.setPwd(hashPwd); - customer.setCreateDt(String.valueOf(new Date(System.currentTimeMillis()))); - savedCustomer = customerRepository.save(customer); + customer.setCreateDt(new Date(System.currentTimeMillis())); + Customer savedCustomer = customerRepository.save(customer); + if (savedCustomer.getId() > 0) { - response = ResponseEntity - .status(HttpStatus.CREATED) - .body("Given user details are successfully registered"); + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); } } catch (Exception ex) { - response = ResponseEntity - .status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("An exception occured due to " + ex.getMessage()); + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); } - return response; } @RequestMapping("/user") public Customer getUserDetailsAfterLogin(Authentication authentication) { - List customers = customerRepository.findByEmail(authentication.getName()); - if (customers.size() > 0) { - return customers.get(0); - } else { - return null; - } - + Optional optionalCustomer = customerRepository.findByEmail(authentication.getName()); + return optionalCustomer.orElse(null); } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthorizationEvents.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthorizationEvents.java new file mode 100644 index 00000000..69193055 --- /dev/null +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/events/AuthorizationEvents.java @@ -0,0 +1,20 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.authorization.event.AuthorizationDeniedEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthorizationEvents { + + @EventListener + public void onFailure(AuthorizationDeniedEvent deniedEvent) { + log.error("Authorization failed for the user : {} due to : {}", deniedEvent.getAuthentication().get().getName(), + deniedEvent.getAuthorizationDecision().toString()); + } + +} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java index ff6b0071..febb0863 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java @@ -1,27 +1,29 @@ package com.eazybytes.filter; import jakarta.servlet.*; +import lombok.extern.slf4j.Slf4j; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import java.io.IOException; -import java.util.logging.Logger; +@Slf4j public class AuthoritiesLoggingAfterFilter implements Filter { - - private final Logger LOG = - Logger.getLogger(AuthoritiesLoggingAfterFilter.class.getName()); - + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException { - + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); - if (null != authentication) { - LOG.info("User " + authentication.getName() + " is successfully authenticated and " + if(null != authentication) { + log.info("User " + authentication.getName() + " is successfully authenticated and " + "has the authorities " + authentication.getAuthorities().toString()); } - chain.doFilter(request, response); + chain.doFilter(request,response); } - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java index 55babbd8..0286d2c6 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java @@ -1,20 +1,24 @@ package com.eazybytes.filter; import jakarta.servlet.*; +import lombok.extern.slf4j.Slf4j; import java.io.IOException; -import java.util.logging.Logger; +@Slf4j public class AuthoritiesLoggingAtFilter implements Filter { - - private final Logger LOG = - Logger.getLogger(AuthoritiesLoggingAtFilter.class.getName()); - + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { - LOG.info("Authentication Validation is in progress"); - chain.doFilter(request, response); + log.info("Authentication Validation is in progress"); + chain.doFilter(request,response); } - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java index 4e65b58d..be9f9438 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java @@ -11,14 +11,13 @@ public class CsrfCookieFilter extends OncePerRequestFilter { + @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { CsrfToken csrfToken = (CsrfToken) request.getAttribute(CsrfToken.class.getName()); - if(null != csrfToken.getHeaderName()){ - response.setHeader(csrfToken.getHeaderName(), csrfToken.getToken()); - } + // Render the token value to a cookie by causing the deferred token to be loaded + csrfToken.getToken(); filterChain.doFilter(request, response); } - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java deleted file mode 100644 index 0e886bdd..00000000 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.eazybytes.filter; - -import com.eazybytes.constants.SecurityConstants; -import io.jsonwebtoken.Jwts; -import io.jsonwebtoken.security.Keys; -import jakarta.servlet.FilterChain; -import jakarta.servlet.ServletException; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.web.filter.OncePerRequestFilter; - -import javax.crypto.SecretKey; -import java.io.IOException; -import java.nio.charset.StandardCharsets; -import java.util.Collection; -import java.util.Date; -import java.util.HashSet; -import java.util.Set; - -public class JWTTokenGeneratorFilter extends OncePerRequestFilter { - - @Override - protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, - FilterChain filterChain) throws ServletException, IOException { - Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); - if (null != authentication) { - SecretKey key = Keys.hmacShaKeyFor(SecurityConstants.JWT_KEY.getBytes(StandardCharsets.UTF_8)); - String jwt = Jwts.builder().issuer("Eazy Bank").subject("JWT Token") - .claim("username", authentication.getName()) - .claim("authorities", populateAuthorities(authentication.getAuthorities())) - .issuedAt(new Date()) - .expiration(new Date((new Date()).getTime() + 30000000)) - .signWith(key).compact(); - response.setHeader(SecurityConstants.JWT_HEADER, jwt); - } - - filterChain.doFilter(request, response); - } - - @Override - protected boolean shouldNotFilter(HttpServletRequest request) { - return !request.getServletPath().equals("/user"); - } - - private String populateAuthorities(Collection collection) { - Set authoritiesSet = new HashSet<>(); - for (GrantedAuthority authority : collection) { - authoritiesSet.add(authority.getAuthority()); - } - return String.join(",", authoritiesSet); - } - -} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java deleted file mode 100644 index 22cb5604..00000000 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.eazybytes.filter; - -import com.eazybytes.constants.SecurityConstants; -import io.jsonwebtoken.Claims; -import io.jsonwebtoken.Jwts; -import io.jsonwebtoken.security.Keys; -import jakarta.servlet.FilterChain; -import jakarta.servlet.ServletException; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; -import org.springframework.security.authentication.BadCredentialsException; -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.authority.AuthorityUtils; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.web.filter.OncePerRequestFilter; - -import javax.crypto.SecretKey; -import java.io.IOException; -import java.nio.charset.StandardCharsets; - -public class JWTTokenValidatorFilter extends OncePerRequestFilter { - - @Override - protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, - FilterChain filterChain) throws ServletException, IOException { - String jwt = request.getHeader(SecurityConstants.JWT_HEADER); - if (null != jwt) { - try { - SecretKey key = Keys.hmacShaKeyFor( - SecurityConstants.JWT_KEY.getBytes(StandardCharsets.UTF_8)); - - Claims claims = Jwts.parser() - .verifyWith(key) - .build() - .parseSignedClaims(jwt) - .getPayload(); - String username = String.valueOf(claims.get("username")); - String authorities = (String) claims.get("authorities"); - Authentication auth = new UsernamePasswordAuthenticationToken(username, null, - AuthorityUtils.commaSeparatedStringToAuthorityList(authorities)); - SecurityContextHolder.getContext().setAuthentication(auth); - } catch (Exception e) { - throw new BadCredentialsException("Invalid Token received!"); - } - - } - filterChain.doFilter(request, response); - } - - @Override - protected boolean shouldNotFilter(HttpServletRequest request) { - return request.getServletPath().equals("/user"); - } - -} diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java index 75fbec4d..1ab1588b 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java @@ -1,48 +1,52 @@ package com.eazybytes.filter; + import jakarta.servlet.*; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpHeaders; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.util.StringUtils; import java.io.IOException; -import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.Base64; -import static org.springframework.http.HttpHeaders.AUTHORIZATION; - - -public class RequestValidationBeforeFilter implements Filter { +public class RequestValidationBeforeFilter implements Filter { - public static final String AUTHENTICATION_SCHEME_BASIC = "Basic"; - private Charset credentialsCharset = StandardCharsets.UTF_8; + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; - String header = req.getHeader(AUTHORIZATION); - if (header != null) { + String header = req.getHeader(HttpHeaders.AUTHORIZATION); + if(null != header) { header = header.trim(); - if (StringUtils.startsWithIgnoreCase(header, AUTHENTICATION_SCHEME_BASIC)) { + if(StringUtils.startsWithIgnoreCase(header, "Basic ")) { byte[] base64Token = header.substring(6).getBytes(StandardCharsets.UTF_8); byte[] decoded; try { decoded = Base64.getDecoder().decode(base64Token); - String token = new String(decoded, credentialsCharset); + String token = new String(decoded, StandardCharsets.UTF_8); // un:pwd int delim = token.indexOf(":"); - if (delim == -1) { + if(delim== -1) { throw new BadCredentialsException("Invalid basic authentication token"); } - String email = token.substring(0, delim); - if (email.toLowerCase().contains("test")) { + String email = token.substring(0,delim); + if(email.toLowerCase().contains("test")) { res.setStatus(HttpServletResponse.SC_BAD_REQUEST); return; } - } catch (IllegalArgumentException e) { + } catch (IllegalArgumentException exception) { throw new BadCredentialsException("Failed to decode basic authentication token"); } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/AccountTransactions.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/AccountTransactions.java index 8f40fb16..b2833f59 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/AccountTransactions.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/AccountTransactions.java @@ -4,10 +4,14 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; import java.sql.Date; @Entity +@Getter +@Setter @Table(name="account_transactions") public class AccountTransactions { @@ -19,7 +23,7 @@ public class AccountTransactions { private long accountNumber; @Column(name = "customer_id") - private int customerId; + private long customerId; @Column(name="transaction_dt") private Date transactionDt; @@ -37,77 +41,6 @@ public class AccountTransactions { private int closingBalance; @Column(name = "create_dt") - private String createDt; + private Date createDt; - public String getTransactionId() { - return transactionId; - } - - public void setTransactionId(String transactionId) { - this.transactionId = transactionId; - } - - public long getAccountNumber() { - return accountNumber; - } - - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getTransactionDt() { - return transactionDt; - } - - public void setTransactionDt(Date transactionDt) { - this.transactionDt = transactionDt; - } - - public String getTransactionSummary() { - return transactionSummary; - } - - public void setTransactionSummary(String transactionSummary) { - this.transactionSummary = transactionSummary; - } - - public String getTransactionType() { - return transactionType; - } - - public void setTransactionType(String transactionType) { - this.transactionType = transactionType; - } - - public int getTransactionAmt() { - return transactionAmt; - } - - public void setTransactionAmt(int transactionAmt) { - this.transactionAmt = transactionAmt; - } - - public int getClosingBalance() { - return closingBalance; - } - - public void setClosingBalance(int closingBalance) { - this.closingBalance = closingBalance; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Accounts.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Accounts.java index dbb62886..30a6bcba 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Accounts.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Accounts.java @@ -4,12 +4,17 @@ import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; @Entity +@Getter @Setter public class Accounts { @Column(name = "customer_id") - private int customerId; + private long customerId; @Id @Column(name="account_number") @@ -22,38 +27,6 @@ public class Accounts { private String branchAddress; @Column(name = "create_dt") - private String createDt; - - - public int getCustomerId() { - return customerId; - } - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - public long getAccountNumber() { - return accountNumber; - } - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - public String getAccountType() { - return accountType; - } - public void setAccountType(String accountType) { - this.accountType = accountType; - } - public String getBranchAddress() { - return branchAddress; - } - public void setBranchAddress(String branchAddress) { - this.branchAddress = branchAddress; - } - public String getCreateDt() { - return createDt; - } - public void setCreateDt(String createDt) { - this.createDt = createDt; - } + private Date createDt; } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Authority.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Authority.java index c09f62a2..706f8137 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Authority.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Authority.java @@ -1,45 +1,22 @@ package com.eazybytes.model; import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; @Entity -@Table(name = "authorities") +@Getter @Setter +@Table(name="authorities") public class Authority { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private Long id; + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; private String name; @ManyToOne - @JoinColumn(name = "customer_id") + @JoinColumn(name="customer_id") private Customer customer; - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Customer getCustomer() { - return customer; - } - - public void setCustomer(Customer customer) { - this.customer = customer; - } - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Cards.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Cards.java index 03a425d5..8a090acb 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Cards.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Cards.java @@ -1,103 +1,39 @@ package com.eazybytes.model; -import java.sql.Date; - import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; @Entity +@Getter @Setter @Table(name = "cards") public class Cards { - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "card_id") - private int cardId; - - @Column(name = "customer_id") - private int customerId; - - @Column(name = "card_number") - private String cardNumber; - - @Column(name = "card_type") - private String cardType; - - @Column(name = "total_limit") - private int totalLimit; - - @Column(name = "amount_used") - private int amountUsed; - - @Column(name = "available_amount") - private int availableAmount; - - @Column(name = "create_dt") - private Date createDt; - - public int getCardId() { - return cardId; - } - - public void setCardId(int cardId) { - this.cardId = cardId; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public String getCardNumber() { - return cardNumber; - } - - public void setCardNumber(String cardNumber) { - this.cardNumber = cardNumber; - } - - public String getCardType() { - return cardType; - } - - public void setCardType(String cardType) { - this.cardType = cardType; - } + @Id + @Column(name = "card_id") + private long cardId; - public int getTotalLimit() { - return totalLimit; - } + @Column(name = "customer_id") + private long customerId; - public void setTotalLimit(int totalLimit) { - this.totalLimit = totalLimit; - } + @Column(name = "card_number") + private String cardNumber; - public int getAmountUsed() { - return amountUsed; - } + @Column(name = "card_type") + private String cardType; - public void setAmountUsed(int amountUsed) { - this.amountUsed = amountUsed; - } + @Column(name = "total_limit") + private int totalLimit; - public int getAvailableAmount() { - return availableAmount; - } + @Column(name = "amount_used") + private int amountUsed; - public void setAvailableAmount(int availableAmount) { - this.availableAmount = availableAmount; - } + @Column(name = "available_amount") + private int availableAmount; - public Date getCreateDt() { - return createDt; - } + @Column(name = "create_dt") + private Date createDt; - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Contact.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Contact.java index fa5c7ff5..3de986d5 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Contact.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Contact.java @@ -4,10 +4,13 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; import java.sql.Date; @Entity +@Getter @Setter @Table(name = "contact_messages") public class Contact { @@ -27,53 +30,5 @@ public class Contact { @Column(name = "create_dt") private Date createDt; - - public String getContactId() { - return contactId; - } - - public void setContactId(String contactId) { - this.contactId = contactId; - } - - public String getContactName() { - return contactName; - } - - public void setContactName(String contactName) { - this.contactName = contactName; - } - - public String getContactEmail() { - return contactEmail; - } - - public void setContactEmail(String contactEmail) { - this.contactEmail = contactEmail; - } - - public String getSubject() { - return subject; - } - - public void setSubject(String subject) { - this.subject = subject; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Customer.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Customer.java index bd3086a5..0395ce85 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Customer.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Customer.java @@ -3,18 +3,20 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import lombok.Getter; +import lombok.Setter; +import java.sql.Date; import java.util.Set; @Entity +@Getter @Setter public class Customer { @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") + @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "customer_id") - private int id; + private long id; private String name; @@ -29,73 +31,11 @@ public class Customer { private String role; @Column(name = "create_dt") - private String createDt; + @JsonIgnore + private Date createDt; + @OneToMany(mappedBy = "customer", fetch = FetchType.EAGER) @JsonIgnore - @OneToMany(mappedBy="customer",fetch=FetchType.EAGER) private Set authorities; - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getMobileNumber() { - return mobileNumber; - } - - public void setMobileNumber(String mobileNumber) { - this.mobileNumber = mobileNumber; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - - public Set getAuthorities() { - return authorities; - } - - public void setAuthorities(Set authorities) { - this.authorities = authorities; - } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Loans.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Loans.java index 0622a955..f779eb20 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Loans.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Loans.java @@ -1,103 +1,42 @@ package com.eazybytes.model; -import java.sql.Date; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import java.sql.Date; @Entity -@Table(name="loans") +@Getter @Setter +@Table(name = "loans") public class Loans { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "loan_number") - private int loanNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="start_dt") - private Date startDt; - - @Column(name = "loan_type") - private String loanType; - - @Column(name = "total_loan") - private int totalLoan; - - @Column(name = "amount_paid") - private int amountPaid; - - @Column(name = "outstanding_amount") - private int outstandingAmount; - - @Column(name = "create_dt") - private String createDt; - - public int getLoanNumber() { - return loanNumber; - } - - public void setLoanNumber(int loanNumber) { - this.loanNumber = loanNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getStartDt() { - return startDt; - } - - public void setStartDt(Date startDt) { - this.startDt = startDt; - } - - public String getLoanType() { - return loanType; - } - public void setLoanType(String loanType) { - this.loanType = loanType; - } + @Id + @Column(name = "loan_number") + private long loanNumber; - public int getTotalLoan() { - return totalLoan; - } + @Column(name = "customer_id") + private long customerId; - public void setTotalLoan(int totalLoan) { - this.totalLoan = totalLoan; - } + @Column(name = "start_dt") + private Date startDt; - public int getAmountPaid() { - return amountPaid; - } + @Column(name = "loan_type") + private String loanType; - public void setAmountPaid(int amountPaid) { - this.amountPaid = amountPaid; - } + @Column(name = "total_loan") + private int totalLoan; - public int getOutstandingAmount() { - return outstandingAmount; - } + @Column(name = "amount_paid") + private int amountPaid; - public void setOutstandingAmount(int outstandingAmount) { - this.outstandingAmount = outstandingAmount; - } + @Column(name = "outstanding_amount") + private int outstandingAmount; - public String getCreateDt() { - return createDt; - } + @Column(name = "create_dt") + private Date createDt; - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Notice.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Notice.java index 33e08468..7ed13868 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Notice.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/model/Notice.java @@ -1,91 +1,42 @@ package com.eazybytes.model; -import java.sql.Date; +import com.fasterxml.jackson.annotation.JsonIgnore; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; +import java.sql.Date; @Entity +@Getter @Setter @Table(name = "notice_details") public class Notice { - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "notice_id") - private int noticeId; - - @Column(name = "notice_summary") - private String noticeSummary; - - @Column(name = "notice_details") - private String noticeDetails; - - @Column(name = "notic_beg_dt") - private Date noticBegDt; - - @Column(name = "notic_end_dt") - private Date noticEndDt; - - @Column(name = "create_dt") - private Date createDt; - - @Column(name = "update_dt") - private Date updateDt; - - public int getNoticeId() { - return noticeId; - } - - public void setNoticeId(int noticeId) { - this.noticeId = noticeId; - } - - public String getNoticeSummary() { - return noticeSummary; - } - - public void setNoticeSummary(String noticeSummary) { - this.noticeSummary = noticeSummary; - } - - public String getNoticeDetails() { - return noticeDetails; - } - - public void setNoticeDetails(String noticeDetails) { - this.noticeDetails = noticeDetails; - } - - public Date getNoticBegDt() { - return noticBegDt; - } + @Id + @Column(name = "notice_id") + private long noticeId; - public void setNoticBegDt(Date noticBegDt) { - this.noticBegDt = noticBegDt; - } + @Column(name = "notice_summary") + private String noticeSummary; - public Date getNoticEndDt() { - return noticEndDt; - } + @Column(name = "notice_details") + private String noticeDetails; - public void setNoticEndDt(Date noticEndDt) { - this.noticEndDt = noticEndDt; - } + @Column(name = "notic_beg_dt") + private Date noticBegDt; - public Date getCreateDt() { - return createDt; - } + @Column(name = "notic_end_dt") + private Date noticEndDt; - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } + @JsonIgnore + @Column(name = "create_dt") + private Date createDt; - public Date getUpdateDt() { - return updateDt; - } + @JsonIgnore + @Column(name = "update_dt") + private Date updateDt; - public void setUpdateDt(Date updateDt) { - this.updateDt = updateDt; - } } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java index 580d4ee3..a06c2fd7 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java @@ -8,8 +8,8 @@ import com.eazybytes.model.AccountTransactions; @Repository -public interface AccountTransactionsRepository extends CrudRepository { +public interface AccountTransactionsRepository extends CrudRepository { - List findByCustomerIdOrderByTransactionDtDesc(int customerId); + List findByCustomerIdOrderByTransactionDtDesc(long customerId); } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountsRepository.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountsRepository.java index 0bcc1f5a..6ae5d8f4 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountsRepository.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/AccountsRepository.java @@ -1,13 +1,12 @@ package com.eazybytes.repository; +import com.eazybytes.model.Accounts; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import com.eazybytes.model.Accounts; - @Repository public interface AccountsRepository extends CrudRepository { - - Accounts findByCustomerId(int customerId); + + Accounts findByCustomerId(long customerId); } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CardsRepository.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CardsRepository.java index 21b7875c..61e1f4f5 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CardsRepository.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CardsRepository.java @@ -2,6 +2,7 @@ import java.util.List; +import com.eazybytes.model.Loans; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; @@ -10,6 +11,6 @@ @Repository public interface CardsRepository extends CrudRepository { - List findByCustomerId(int customerId); + List findByCustomerId(long customerId); } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/ContactRepository.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/ContactRepository.java index 9a042095..0ec283fd 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/ContactRepository.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/ContactRepository.java @@ -6,7 +6,7 @@ import com.eazybytes.model.Contact; @Repository -public interface ContactRepository extends CrudRepository { +public interface ContactRepository extends CrudRepository { } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/LoanRepository.java b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/LoanRepository.java index 32e086aa..7c1a9105 100644 --- a/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/LoanRepository.java +++ b/section_10/springsecsection_10/src/main/java/com/eazybytes/repository/LoanRepository.java @@ -3,15 +3,13 @@ import java.util.List; import org.springframework.data.repository.CrudRepository; -import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Repository; import com.eazybytes.model.Loans; @Repository public interface LoanRepository extends CrudRepository { - - // @PreAuthorize("hasRole('USER')") - List findByCustomerIdOrderByStartDtDesc(int customerId); + + List findByCustomerIdOrderByStartDtDesc(long customerId); } diff --git a/section_10/springsecsection_10/src/main/resources/application.properties b/section_10/springsecsection_10/src/main/resources/application.properties index 78fdb8f8..d091a248 100644 --- a/section_10/springsecsection_10/src/main/resources/application.properties +++ b/section_10/springsecsection_10/src/main/resources/application.properties @@ -1,5 +1,15 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true \ No newline at end of file +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} diff --git a/section_10/springsecsection_10/src/main/resources/application_prod.properties b/section_10/springsecsection_10/src/main/resources/application_prod.properties new file mode 100644 index 00000000..9ef98007 --- /dev/null +++ b/section_10/springsecsection_10/src/main/resources/application_prod.properties @@ -0,0 +1,13 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} diff --git a/section_10/springsecsection_10/src/main/resources/sql/scripts.sql b/section_10/springsecsection_10/src/main/resources/sql/scripts.sql index 52c0ad32..86a4af5e 100644 --- a/section_10/springsecsection_10/src/main/resources/sql/scripts.sql +++ b/section_10/springsecsection_10/src/main/resources/sql/scripts.sql @@ -1,9 +1,5 @@ -create database eazybank; - -use eazybank; - -drop table `users`; drop table `authorities`; +drop table `users`; drop table `customer`; CREATE TABLE `customer` ( @@ -18,7 +14,7 @@ CREATE TABLE `customer` ( ); INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) - VALUES ('Happy','happy@example.com','9876548337', '$2y$12$oRRbkNfwuR8ug4MlzH5FOeui.//1mkd.RsOAJMbykTSupVy.x/vb2', 'admin',CURDATE()); + VALUES ('Happy','happy@example.com','5334122365', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin',CURDATE()); CREATE TABLE `accounts` ( `customer_id` int NOT NULL, @@ -187,10 +183,10 @@ INSERT INTO `authorities` (`customer_id`, `name`) INSERT INTO `authorities` (`customer_id`, `name`) VALUES (1, 'VIEWBALANCE'); - DELETE FROM `authorities`; +DELETE FROM `authorities`; INSERT INTO `authorities` (`customer_id`, `name`) VALUES (1, 'ROLE_USER'); INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'ROLE_ADMIN'); + VALUES (1, 'ROLE_ADMIN'); \ No newline at end of file diff --git a/section_10/bank-app-ui/.editorconfig b/section_11/bank-app-ui/.editorconfig similarity index 100% rename from section_10/bank-app-ui/.editorconfig rename to section_11/bank-app-ui/.editorconfig diff --git a/section9/bank-app-ui/.gitignore b/section_11/bank-app-ui/.gitignore similarity index 100% rename from section9/bank-app-ui/.gitignore rename to section_11/bank-app-ui/.gitignore diff --git a/section_11/bank-app-ui/.vscode/launch.json b/section_11/bank-app-ui/.vscode/launch.json new file mode 100644 index 00000000..2ba986f6 --- /dev/null +++ b/section_11/bank-app-ui/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome against localhost", + "url": "http://localhost:8080", + "webRoot": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/section9/bank-app-ui/README.md b/section_11/bank-app-ui/README.md similarity index 96% rename from section9/bank-app-ui/README.md rename to section_11/bank-app-ui/README.md index cf38c4ab..1b6d3f87 100644 --- a/section9/bank-app-ui/README.md +++ b/section_11/bank-app-ui/README.md @@ -1,6 +1,6 @@ # BankAppUi -This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.1.2. +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.2.3. ## Development server diff --git a/section6/00_UI_Initial Code/bank-app-ui/angular.json b/section_11/bank-app-ui/angular.json similarity index 88% rename from section6/00_UI_Initial Code/bank-app-ui/angular.json rename to section_11/bank-app-ui/angular.json index 98fbf15f..e4993108 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/angular.json +++ b/section_11/bank-app-ui/angular.json @@ -16,7 +16,9 @@ "outputPath": "dist/bank-app-ui", "index": "src/index.html", "main": "src/main.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js" + ], "tsConfig": "tsconfig.app.json", "assets": [ "src/favicon.ico", @@ -42,12 +44,6 @@ "maximumError": "4kb" } ], - "fileReplacements": [ - { - "replace": "src/environments/environment.ts", - "with": "src/environments/environment.prod.ts" - } - ], "outputHashing": "all" }, "development": { @@ -56,7 +52,13 @@ "vendorChunk": true, "extractLicenses": false, "sourceMap": true, - "namedChunks": true + "namedChunks": true, + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.development.ts" + } + ] } }, "defaultConfiguration": "production" @@ -82,16 +84,16 @@ "test": { "builder": "@angular-devkit/build-angular:karma", "options": { - "main": "src/test.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js", + "zone.js/testing" + ], "tsConfig": "tsconfig.spec.json", - "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ - "node_modules/bootstrap/dist/css/bootstrap.min.css", "src/styles.css" ], "scripts": [] diff --git a/section_11/bank-app-ui/package-lock.json b/section_11/bank-app-ui/package-lock.json new file mode 100644 index 00000000..dae7e8aa --- /dev/null +++ b/section_11/bank-app-ui/package-lock.json @@ -0,0 +1,13038 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "bank-app-ui", + "version": "0.0.0", + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.14.tgz", + "integrity": "sha512-eSdONEV5dbtLNiOMBy9Ue9DdJ1ct6dH9RdZfYiedq6VZn0lejePAjY36MYVXgq2jTE+v/uIiaNy7caea5pt55A==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.14.tgz", + "integrity": "sha512-bXQ6i7QPhwmYHuh+DSNkBhjTIHQF0C6fqZEg2ApJA3NmnzE98oQnmJ9AnGnAkdf1Mjn3xi2gxoZWPDDxGEINMw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "2.2.1", + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/build-webpack": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@babel/core": "7.22.9", + "@babel/generator": "7.22.9", + "@babel/helper-annotate-as-pure": "7.22.5", + "@babel/helper-split-export-declaration": "7.22.6", + "@babel/plugin-proposal-async-generator-functions": "7.20.7", + "@babel/plugin-transform-async-to-generator": "7.22.5", + "@babel/plugin-transform-runtime": "7.22.9", + "@babel/preset-env": "7.22.9", + "@babel/runtime": "7.22.6", + "@babel/template": "7.22.5", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "16.2.14", + "@vitejs/plugin-basic-ssl": "1.0.1", + "ansi-colors": "4.1.3", + "autoprefixer": "10.4.14", + "babel-loader": "9.1.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.21.5", + "chokidar": "3.5.3", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.20", + "css-loader": "6.8.1", + "esbuild-wasm": "0.18.17", + "fast-glob": "3.3.1", + "guess-parser": "0.4.22", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.3", + "less-loader": "11.1.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "magic-string": "0.30.1", + "mini-css-extract-plugin": "2.7.6", + "mrmime": "1.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "7.0.0", + "picomatch": "2.3.1", + "piscina": "4.0.0", + "postcss": "8.4.31", + "postcss-loader": "7.3.3", + "resolve-url-loader": "5.0.0", + "rxjs": "7.8.1", + "sass": "1.64.1", + "sass-loader": "13.3.2", + "semver": "7.5.4", + "source-map-loader": "4.0.1", + "source-map-support": "0.5.21", + "terser": "5.19.2", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.6.1", + "vite": "4.5.3", + "webpack": "5.88.2", + "webpack-dev-middleware": "6.1.2", + "webpack-dev-server": "4.15.1", + "webpack-merge": "5.9.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.18.17" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "@angular/localize": "^16.0.0", + "@angular/platform-server": "^16.0.0", + "@angular/service-worker": "^16.0.0", + "jest": "^29.5.0", + "jest-environment-jsdom": "^29.5.0", + "karma": "^6.3.0", + "ng-packagr": "^16.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.9.3 <5.2" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/platform-server": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "jest": { + "optional": true + }, + "jest-environment-jsdom": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "dev": true + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.14.tgz", + "integrity": "sha512-f+ZTCjOoA1SCQEaX3L/63ubqr/vlHkwDXAtKjBsQgyz6srnETcjy96Us5k/LoK7/hPc85zFneqLinfqOMVWHJQ==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/core": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.14.tgz", + "integrity": "sha512-Ui14/d2+p7lnmXlK/AX2ieQEGInBV75lonNtPQgwrYgskF8ufCuN0DyVZQUy9fJDkC+xQxbJyYrby/BS0R0e7w==", + "dev": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-16.2.14.tgz", + "integrity": "sha512-B6LQKInCT8w5zx5Pbroext5eFFRTCJdTwHN8GhcVS8IeKCnkeqVTQLjB4lBUg7LEm8Y7UHXwzrVxmk+f+MBXhw==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "jsonc-parser": "3.2.0", + "magic-string": "0.30.1", + "ora": "5.4.1", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/animations": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-16.2.12.tgz", + "integrity": "sha512-MD0ElviEfAJY8qMOd6/jjSSvtqER2RDAi0lxe6EtUacC1DHCYkaPrKW4vLqY+tmZBg1yf+6n+uS77pXcHHcA3w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + } + }, + "node_modules/@angular/cli": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-16.2.14.tgz", + "integrity": "sha512-0y71jtitigVolm4Rim1b8xPQ+B22cGp4Spef2Wunpqj67UowN6tsZaVuWBEQh4u5xauX8LAHKqsvy37ZPWCc4A==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "@schematics/angular": "16.2.14", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "ini": "4.1.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "npm-package-arg": "10.1.0", + "npm-pick-manifest": "8.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "pacote": "15.2.0", + "resolve": "1.22.2", + "semver": "7.5.4", + "symbol-observable": "4.0.0", + "yargs": "17.7.2" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/common": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-16.2.12.tgz", + "integrity": "sha512-B+WY/cT2VgEaz9HfJitBmgdk4I333XG/ybC98CMC4Wz8E49T8yzivmmxXB3OD6qvjcOB6ftuicl6WBqLbZNg2w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.12.tgz", + "integrity": "sha512-6SMXUgSVekGM7R6l1Z9rCtUGtlg58GFmgbpMCsGf+VXxP468Njw8rjT2YZkf5aEPxEuRpSHhDYjqz7n14cwCXQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true + } + } + }, + "node_modules/@angular/compiler-cli": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.12.tgz", + "integrity": "sha512-pWSrr152562ujh6lsFZR8NfNc5Ljj+zSTQO44DsuB0tZjwEpnRcjJEgzuhGXr+CoiBf+jTSPZKemtSktDk5aaA==", + "dev": true, + "dependencies": { + "@babel/core": "7.23.2", + "@jridgewell/sourcemap-codec": "^1.4.14", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/index.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/compiler": "16.2.12", + "typescript": ">=4.9.3 <5.2" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/core": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.12.tgz", + "integrity": "sha512-GLLlDeke/NjroaLYOks0uyzFVo6HyLl7VOm0K1QpLXnYvW63W9Ql/T3yguRZa7tRkOAeFZ3jw+1wnBD4O8MoUA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.13.0" + } + }, + "node_modules/@angular/forms": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-16.2.12.tgz", + "integrity": "sha512-1Eao89hlBgLR3v8tU91vccn21BBKL06WWxl7zLpQmG6Hun+2jrThgOE4Pf3os4fkkbH4Apj0tWL2fNIWe/blbw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-16.2.12.tgz", + "integrity": "sha512-NnH7ju1iirmVEsUq432DTm0nZBGQsBrU40M3ZeVHMQ2subnGiyUs3QyzDz8+VWLL/T5xTxWLt9BkDn65vgzlIQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/animations": "16.2.12", + "@angular/common": "16.2.12", + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@angular/platform-browser-dynamic": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-16.2.12.tgz", + "integrity": "sha512-ya54jerNgreCVAR278wZavwjrUWImMr2F8yM5n9HBvsMBbFaAQ83anwbOEiHEF2BlR+gJiEBLfpuPRMw20pHqw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/compiler": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12" + } + }, + "node_modules/@angular/router": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-16.2.12.tgz", + "integrity": "sha512-aU6QnYSza005V9P3W6PpkieL56O0IHps96DjqI1RS8yOJUl3THmokqYN4Fm5+HXy4f390FN9i6ftadYQDKeWmA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true + }, + "node_modules/@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", + "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", + "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz", + "integrity": "sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz", + "integrity": "sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz", + "integrity": "sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz", + "integrity": "sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz", + "integrity": "sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz", + "integrity": "sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz", + "integrity": "sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz", + "integrity": "sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz", + "integrity": "sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz", + "integrity": "sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.4", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz", + "integrity": "sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz", + "integrity": "sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/template": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz", + "integrity": "sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz", + "integrity": "sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz", + "integrity": "sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz", + "integrity": "sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz", + "integrity": "sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz", + "integrity": "sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz", + "integrity": "sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz", + "integrity": "sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz", + "integrity": "sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz", + "integrity": "sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz", + "integrity": "sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz", + "integrity": "sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz", + "integrity": "sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", + "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz", + "integrity": "sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz", + "integrity": "sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz", + "integrity": "sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz", + "integrity": "sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz", + "integrity": "sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz", + "integrity": "sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz", + "integrity": "sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz", + "integrity": "sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz", + "integrity": "sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", + "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz", + "integrity": "sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz", + "integrity": "sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz", + "integrity": "sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz", + "integrity": "sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz", + "integrity": "sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.9.tgz", + "integrity": "sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz", + "integrity": "sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz", + "integrity": "sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz", + "integrity": "sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz", + "integrity": "sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz", + "integrity": "sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz", + "integrity": "sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz", + "integrity": "sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz", + "integrity": "sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz", + "integrity": "sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", + "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.6", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", + "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", + "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz", + "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz", + "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz", + "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz", + "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz", + "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz", + "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz", + "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz", + "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz", + "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz", + "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz", + "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz", + "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz", + "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz", + "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz", + "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz", + "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz", + "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz", + "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz", + "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz", + "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz", + "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@fortawesome/angular-fontawesome": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.13.0.tgz", + "integrity": "sha512-gzSPRdveOXNO7NIiMgTyB46aiHG0i98KinnAEqHXi8qzraM/kCcHn/0y3f4MhemX6kftwsFli0IU8RyHmtXlSQ==", + "dependencies": { + "tslib": "^2.4.1" + }, + "peerDependencies": { + "@angular/core": "^16.0.0", + "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" + } + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.2.tgz", + "integrity": "sha512-gBxPg3aVO6J0kpfHNILc+NMhXnqHumFxOmjYCFfOiLZfwhnnfhtsdA2hfJlDnj+8PjAs6kKQPenOTKj3Rf7zHw==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.5.2.tgz", + "integrity": "sha512-hRILoInAx8GNT5IMkrtIt9blOdrqHOnPBH+k70aWUAqPZPgopb9G5EQJFpaBx/S8zp2fC+mPW349Bziuk1o28Q==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.2.tgz", + "integrity": "sha512-5CdaCBGl8Rh9ohNdxeeTMxIj8oc3KNBgIeLMvJosBMdslK/UnEB8rzyDRrbKdL1kDweqBPo4GT9wvnakHWucZw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.2.tgz", + "integrity": "sha512-QWFZYXFE7O1Gr1dTIp+D6UcFUF0qElOnZptpi7PBUMylJh+vFmIedVe1Ir6RM1t2tEQLLSV1k7bR4o92M+uqlw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "dev": true + }, + "node_modules/@ngtools/webpack": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.14.tgz", + "integrity": "sha512-3+zPP3Wir46qrZ3FEiTz5/emSoVHYUCH+WgBmJ57mZCx1qBOYh2VgllnPr/Yusl1sc/jUZjdwq/es/9ZNw+zDQ==", + "dev": true, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "typescript": ">=4.9.3 <5.2", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dev": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", + "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "dev": true, + "dependencies": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", + "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", + "dev": true, + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "bin/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dev": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/move-file/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", + "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", + "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "dev": true, + "dependencies": { + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", + "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "dev": true, + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@schematics/angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-16.2.14.tgz", + "integrity": "sha512-YqIv727l9Qze8/OL6H9mBHc2jVXzAGRNBYnxYWqWhLbfvuVbbldo6NNIIjgv6lrl2LJSdPAAMNOD5m/f6210ug==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "jsonc-parser": "3.2.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@sigstore/bundle": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", + "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", + "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "make-fetch-happen": "^11.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@sigstore/sign/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/@sigstore/tuf": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", + "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0", + "tuf-js": "^1.1.7" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "dev": true + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@tufjs/canonical-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", + "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", + "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "dev": true, + "dependencies": { + "@tufjs/canonical-json": "1.0.0", + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "dev": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.6.tgz", + "integrity": "sha512-3N0FpQTeiWjm+Oo1WUYWguUS7E6JLceiGTriFrG8k5PU7zRLJCzLcWURU3wjMbZGS//a2/LgjsnO3QxIlwxt9g==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "dev": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dev": true, + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ws": { + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vitejs/plugin-basic-ssl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.0.1.tgz", + "integrity": "sha512-pcub+YbFtFhaGRTo1832FQHQSHvMrlb43974e2eS8EKleR3p1cDdkJFPci1UhwkEf1J9Bz+wKBSzqpKp7nNj2A==", + "dev": true, + "engines": { + "node": ">=14.6.0" + }, + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@wessberg/ts-evaluator": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/@wessberg/ts-evaluator/-/ts-evaluator-0.0.27.tgz", + "integrity": "sha512-7gOpVm3yYojUp/Yn7F4ZybJRxyqfMNf0LXK5KJiawbPfL0XTsJV+0mgrEDjOIR6Bi0OYk2Cyg4tjFu1r8MCZaA==", + "deprecated": "this package has been renamed to ts-evaluator. Please install ts-evaluator instead", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "jsdom": "^16.4.0", + "object-path": "^0.11.5", + "tslib": "^2.0.3" + }, + "engines": { + "node": ">=10.1.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/wessberg/ts-evaluator?sponsor=1" + }, + "peerDependencies": { + "typescript": ">=3.2.x || >= 4.x" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@wessberg/ts-evaluator/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", + "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", + "dev": true, + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-loader": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", + "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", + "dev": true, + "dependencies": { + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.7", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.7.tgz", + "integrity": "sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.4", + "core-js-compat": "^3.33.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.4.tgz", + "integrity": "sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz", + "integrity": "sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz", + "integrity": "sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/bonjour-service": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "17.1.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", + "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/core-js-compat": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", + "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/cosmiconfig/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/cosmiconfig/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/critters": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.20.tgz", + "integrity": "sha512-CImNRorKOl5d8TWcnAz5n5izQ6HFsvz29k327/ELy6UFcmbiZNOsinaKvzv16WZR0P6etfSWYzE47C4/56B3Uw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^5.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.2", + "htmlparser2": "^8.0.2", + "postcss": "^8.4.23", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/critters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/critters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/critters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/critters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/critters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-loader": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.8.1.tgz", + "integrity": "sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==", + "dev": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.21", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.3", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", + "dev": true + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "node_modules/di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "dev": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", + "dev": true, + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.749", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.749.tgz", + "integrity": "sha512-LRMMrM9ITOvue0PoBrvNIraVmuDbJV5QC9ierz/z5VilMdPOVMjOtpICNld3PuXuTZ3CHH/UPxX9gHhAPwi+0Q==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/engine.io": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.4.tgz", + "integrity": "sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz", + "integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/enhanced-resolve": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", + "dev": true + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz", + "integrity": "sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==", + "dev": true + }, + "node_modules/esbuild": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz", + "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.17", + "@esbuild/android-arm64": "0.18.17", + "@esbuild/android-x64": "0.18.17", + "@esbuild/darwin-arm64": "0.18.17", + "@esbuild/darwin-x64": "0.18.17", + "@esbuild/freebsd-arm64": "0.18.17", + "@esbuild/freebsd-x64": "0.18.17", + "@esbuild/linux-arm": "0.18.17", + "@esbuild/linux-arm64": "0.18.17", + "@esbuild/linux-ia32": "0.18.17", + "@esbuild/linux-loong64": "0.18.17", + "@esbuild/linux-mips64el": "0.18.17", + "@esbuild/linux-ppc64": "0.18.17", + "@esbuild/linux-riscv64": "0.18.17", + "@esbuild/linux-s390x": "0.18.17", + "@esbuild/linux-x64": "0.18.17", + "@esbuild/netbsd-x64": "0.18.17", + "@esbuild/openbsd-x64": "0.18.17", + "@esbuild/sunos-x64": "0.18.17", + "@esbuild/win32-arm64": "0.18.17", + "@esbuild/win32-ia32": "0.18.17", + "@esbuild/win32-x64": "0.18.17" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.18.17.tgz", + "integrity": "sha512-9OHGcuRzy+I8ziF9FzjfKLWAPbvi0e/metACVg9k6bK+SI4FFxeV6PcZsz8RIVaMD4YNehw+qj6UMR3+qj/EuQ==", + "dev": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "dev": true + }, + "node_modules/express": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-cache-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", + "dev": true, + "dependencies": { + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", + "integrity": "sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/guess-parser": { + "version": "0.4.22", + "resolved": "https://registry.npmjs.org/guess-parser/-/guess-parser-0.4.22.tgz", + "integrity": "sha512-KcUWZ5ACGaBM69SbqwVIuWGoSAgD+9iJnchR9j/IarVI1jHVeXv+bUXBIMeqVMSKt3zrn0Dgf9UpcOEpPBLbSg==", + "dev": true, + "dependencies": { + "@wessberg/ts-evaluator": "0.0.27" + }, + "peerDependencies": { + "typescript": ">=3.7.5" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", + "dev": true, + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "dev": true + }, + "node_modules/hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "dev": true, + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-entities": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", + "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", + "dev": true, + "dependencies": { + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ignore-walk/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true, + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jasmine-core": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.6.0.tgz", + "integrity": "sha512-O236+gd0ZXS8YAjFx8xKaJ94/erqUliEkJTDedyE7iHvv4ZVqi+q+8acJxu05/WJDKm512EUNn809In37nWlAQ==", + "dev": true + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/karma": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.3.tgz", + "integrity": "sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==", + "dev": true, + "dependencies": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.7.2", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/karma-chrome-launcher": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.2.0.tgz", + "integrity": "sha512-rE9RkUPI7I9mAxByQWkGJFXfFD6lE4gC5nPuZdobf/QdTEJI6EU4yIay/cfU/xV4ZxlM5JiTv7zWYgA64NpS5Q==", + "dev": true, + "dependencies": { + "which": "^1.2.1" + } + }, + "node_modules/karma-coverage": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.1.tgz", + "integrity": "sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-jasmine": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", + "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", + "dev": true, + "dependencies": { + "jasmine-core": "^4.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "karma": "^6.0.0" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.1.0.tgz", + "integrity": "sha512-sPQE1+nlsn6Hwb5t+HHwyy0A1FNCVKuL1192b+XNauMYWThz2kweiBVW1DqloRpVvZIJkIoHVB7XRpK78n1xbQ==", + "dev": true, + "peerDependencies": { + "jasmine-core": "^4.0.0 || ^5.0.0", + "karma": "^6.0.0", + "karma-jasmine": "^5.0.0" + } + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/karma/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma/node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "dev": true, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/karma/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/less": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "dev": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.1.0.tgz", + "integrity": "sha512-C+uDBV7kS7W5fJlUjq5mPBeBVhYpTIm5gB09APT9o3n/ILeaXVsiSFTbZpTJCJwQ/Crczfn3DmfQFwxYusWFug==", + "dev": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "dev": true, + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "dev": true, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log4js": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", + "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dev": true, + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/make-fetch-happen/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/make-fetch-happen/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-fetch-happen/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/make-fetch-happen/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dev": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "dev": true, + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dev": true, + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", + "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", + "dev": true, + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dev": true, + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-fetch/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-fetch/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dev": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true, + "optional": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", + "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", + "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "dev": true, + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-bundled": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "dev": true, + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", + "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-packlist": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", + "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", + "dev": true, + "dependencies": { + "ignore-walk": "^6.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-pick-manifest": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", + "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", + "dev": true, + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch": { + "version": "14.0.5", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", + "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "dev": true, + "dependencies": { + "make-fetch-happen": "^11.0.0", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm-registry-fetch/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nwsapi": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", + "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-path": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz", + "integrity": "sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==", + "dev": true, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pacote": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", + "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "dev": true, + "dependencies": { + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^5.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "sigstore": "^1.3.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parse5-html-rewriting-stream": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.0.0.tgz", + "integrity": "sha512-mazCyGWkmCRWDI15Zp+UiCqMp/0dgEmkZRvhlsqqKYr4SsVm/TvnSpD9fCvqCA2zoWJcfRym846ejWBBHRiYEg==", + "dev": true, + "dependencies": { + "entities": "^4.3.0", + "parse5": "^7.0.0", + "parse5-sax-parser": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-7.0.0.tgz", + "integrity": "sha512-5A+v2SNsq8T6/mG3ahcz8ZtQ0OUFTatxPbeidoMB7tkJSGDY3tdfl4MHovtLQHkEn5CGxijNWRQHhRQ6IRpXKg==", + "dev": true, + "dependencies": { + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/piscina": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.0.0.tgz", + "integrity": "sha512-641nAmJS4k4iqpNUqfggqUBUMmlw0ZoM5VZKdQkV2e970Inn3Tk9kroCc1wpsYLD07vCwpys5iY0d3xI/9WkTg==", + "dev": true, + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/pkg-dir": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", + "dev": true, + "dependencies": { + "find-up": "^6.3.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-loader": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.3.tgz", + "integrity": "sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==", + "dev": true, + "dependencies": { + "cosmiconfig": "^8.2.0", + "jiti": "^1.18.2", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-package-json": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", + "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "dev": true, + "dependencies": { + "glob": "^10.2.2", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", + "dev": true, + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/read-package-json/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==", + "dev": true + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.0.tgz", + "integrity": "sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==", + "dev": true + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "dev": true, + "dependencies": { + "is-core-module": "^2.11.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/sass": { + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", + "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.2.tgz", + "integrity": "sha512-CQbKl57kdEv+KDLquhC+gE3pXt74LEAzm+tzywcA0/aHZuub8wTErbjAoNI57rPUWRYRNC5WUnNl8eGJNbDdwg==", + "dev": true, + "dependencies": { + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", + "dev": true, + "optional": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "dev": true, + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sigstore": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", + "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "@sigstore/sign": "^1.0.0", + "@sigstore/tuf": "^1.0.3", + "make-fetch-happen": "^11.0.1" + }, + "bin": { + "sigstore": "bin/sigstore.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sigstore/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sigstore/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/sigstore/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socket.io": { + "version": "4.7.5", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz", + "integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.4.tgz", + "integrity": "sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg==", + "dev": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.11.0" + } + }, + "node_modules/socket.io-adapter/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dev": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dev": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.1.tgz", + "integrity": "sha512-oqXpzDIByKONVY8g1NUPOTQhe0UTU5bWUl32GSkqK2LjJj0HmwTMVKxcUip0RgAYhY1mqgOxjbQM48a0mmeNfA==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", + "dev": true + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/ssri": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ssri/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/streamroller": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/terser": { + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.30.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", + "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/tuf-js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", + "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "dev": true, + "dependencies": { + "@tufjs/models": "1.0.4", + "debug": "^4.3.4", + "make-fetch-happen": "^11.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/tuf-js/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", + "dev": true + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-cookie": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.6.tgz", + "integrity": "sha512-s+BZr7/9BUG6Kg7jGGcOY/4XJcP+iZRFdF3q4FPTfRSP83ivLWF94OcH8PrzGmnS8Ab9qP7ENu/ikLwNFsIafA==", + "engines": { + "node": ">=14" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.37", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.37.tgz", + "integrity": "sha512-xV8kqRKM+jhMvcHWUKthV9fNebIzrNy//2O9ZwWcfiBFR5f25XVZPLlEajk/sf3Ra15V92isyQqnIEXRDaZWEA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dev": true, + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "dev": true, + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz", + "integrity": "sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/watchpack": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.1.2.tgz", + "integrity": "sha512-Wu+EHmX326YPYUpQLKmKbTyZZJIB8/n6R09pTmB03kJmnMsVPTo9COzHZFr01txwaCAuZvfBJE4ZCHRcKs5JaQ==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.12", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server": { + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", + "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", + "dev": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.5", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/webpack-dev-middleware": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/webpack-merge": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", + "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "dev": true, + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zone.js": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.3.tgz", + "integrity": "sha512-MKPbmZie6fASC/ps4dkmIhaT5eonHkEt6eAy80K42tAm0G2W+AahLJjbfi6X9NPdciOE9GRFTTM8u2IiF6O3ww==", + "dependencies": { + "tslib": "^2.3.0" + } + } + } +} diff --git a/section_11/bank-app-ui/package.json b/section_11/bank-app-ui/package.json new file mode 100644 index 00000000..841628da --- /dev/null +++ b/section_11/bank-app-ui/package.json @@ -0,0 +1,44 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build", + "watch": "ng build --watch --configuration development", + "test": "ng test" + }, + "private": true, + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } +} diff --git a/section9/bank-app-ui/src/app/app-routing.module.ts b/section_11/bank-app-ui/src/app/app-routing.module.ts similarity index 100% rename from section9/bank-app-ui/src/app/app-routing.module.ts rename to section_11/bank-app-ui/src/app/app-routing.module.ts diff --git a/section9/bank-app-ui/src/app/app.component.css b/section_11/bank-app-ui/src/app/app.component.css similarity index 100% rename from section9/bank-app-ui/src/app/app.component.css rename to section_11/bank-app-ui/src/app/app.component.css diff --git a/section9/bank-app-ui/src/app/app.component.html b/section_11/bank-app-ui/src/app/app.component.html similarity index 100% rename from section9/bank-app-ui/src/app/app.component.html rename to section_11/bank-app-ui/src/app/app.component.html diff --git a/section9/bank-app-ui/src/app/app.component.ts b/section_11/bank-app-ui/src/app/app.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/app.component.ts rename to section_11/bank-app-ui/src/app/app.component.ts diff --git a/section9/bank-app-ui/src/app/app.module.ts b/section_11/bank-app-ui/src/app/app.module.ts similarity index 100% rename from section9/bank-app-ui/src/app/app.module.ts rename to section_11/bank-app-ui/src/app/app.module.ts diff --git a/section9/bank-app-ui/src/app/components/account/account.component.css b/section_11/bank-app-ui/src/app/components/account/account.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/account/account.component.css rename to section_11/bank-app-ui/src/app/components/account/account.component.css diff --git a/section9/bank-app-ui/src/app/components/account/account.component.html b/section_11/bank-app-ui/src/app/components/account/account.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/account/account.component.html rename to section_11/bank-app-ui/src/app/components/account/account.component.html diff --git a/section9/bank-app-ui/src/app/components/account/account.component.ts b/section_11/bank-app-ui/src/app/components/account/account.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/account/account.component.ts rename to section_11/bank-app-ui/src/app/components/account/account.component.ts diff --git a/section9/bank-app-ui/src/app/components/balance/balance.component.css b/section_11/bank-app-ui/src/app/components/balance/balance.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/balance/balance.component.css rename to section_11/bank-app-ui/src/app/components/balance/balance.component.css diff --git a/section9/bank-app-ui/src/app/components/balance/balance.component.html b/section_11/bank-app-ui/src/app/components/balance/balance.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/balance/balance.component.html rename to section_11/bank-app-ui/src/app/components/balance/balance.component.html diff --git a/section9/bank-app-ui/src/app/components/balance/balance.component.ts b/section_11/bank-app-ui/src/app/components/balance/balance.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/balance/balance.component.ts rename to section_11/bank-app-ui/src/app/components/balance/balance.component.ts diff --git a/section9/bank-app-ui/src/app/components/cards/cards.component.css b/section_11/bank-app-ui/src/app/components/cards/cards.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/cards/cards.component.css rename to section_11/bank-app-ui/src/app/components/cards/cards.component.css diff --git a/section9/bank-app-ui/src/app/components/cards/cards.component.html b/section_11/bank-app-ui/src/app/components/cards/cards.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/cards/cards.component.html rename to section_11/bank-app-ui/src/app/components/cards/cards.component.html diff --git a/section9/bank-app-ui/src/app/components/cards/cards.component.ts b/section_11/bank-app-ui/src/app/components/cards/cards.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/cards/cards.component.ts rename to section_11/bank-app-ui/src/app/components/cards/cards.component.ts diff --git a/section9/bank-app-ui/src/app/components/contact/contact.component.css b/section_11/bank-app-ui/src/app/components/contact/contact.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/contact/contact.component.css rename to section_11/bank-app-ui/src/app/components/contact/contact.component.css diff --git a/section9/bank-app-ui/src/app/components/contact/contact.component.html b/section_11/bank-app-ui/src/app/components/contact/contact.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/contact/contact.component.html rename to section_11/bank-app-ui/src/app/components/contact/contact.component.html diff --git a/section9/bank-app-ui/src/app/components/contact/contact.component.ts b/section_11/bank-app-ui/src/app/components/contact/contact.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/contact/contact.component.ts rename to section_11/bank-app-ui/src/app/components/contact/contact.component.ts diff --git a/section9/bank-app-ui/src/app/components/dashboard/dashboard.component.css b/section_11/bank-app-ui/src/app/components/dashboard/dashboard.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/dashboard/dashboard.component.css rename to section_11/bank-app-ui/src/app/components/dashboard/dashboard.component.css diff --git a/section9/bank-app-ui/src/app/components/dashboard/dashboard.component.html b/section_11/bank-app-ui/src/app/components/dashboard/dashboard.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/dashboard/dashboard.component.html rename to section_11/bank-app-ui/src/app/components/dashboard/dashboard.component.html diff --git a/section9/bank-app-ui/src/app/components/dashboard/dashboard.component.ts b/section_11/bank-app-ui/src/app/components/dashboard/dashboard.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/dashboard/dashboard.component.ts rename to section_11/bank-app-ui/src/app/components/dashboard/dashboard.component.ts diff --git a/section9/bank-app-ui/src/app/components/header/header.component.css b/section_11/bank-app-ui/src/app/components/header/header.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/header/header.component.css rename to section_11/bank-app-ui/src/app/components/header/header.component.css diff --git a/section9/bank-app-ui/src/app/components/header/header.component.html b/section_11/bank-app-ui/src/app/components/header/header.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/header/header.component.html rename to section_11/bank-app-ui/src/app/components/header/header.component.html diff --git a/section9/bank-app-ui/src/app/components/header/header.component.ts b/section_11/bank-app-ui/src/app/components/header/header.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/header/header.component.ts rename to section_11/bank-app-ui/src/app/components/header/header.component.ts diff --git a/section9/bank-app-ui/src/app/components/home/home.component.css b/section_11/bank-app-ui/src/app/components/home/home.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/home/home.component.css rename to section_11/bank-app-ui/src/app/components/home/home.component.css diff --git a/section9/bank-app-ui/src/app/components/home/home.component.html b/section_11/bank-app-ui/src/app/components/home/home.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/home/home.component.html rename to section_11/bank-app-ui/src/app/components/home/home.component.html diff --git a/section9/bank-app-ui/src/app/components/home/home.component.ts b/section_11/bank-app-ui/src/app/components/home/home.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/home/home.component.ts rename to section_11/bank-app-ui/src/app/components/home/home.component.ts diff --git a/section9/bank-app-ui/src/app/components/loans/loans.component.css b/section_11/bank-app-ui/src/app/components/loans/loans.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/loans/loans.component.css rename to section_11/bank-app-ui/src/app/components/loans/loans.component.css diff --git a/section9/bank-app-ui/src/app/components/loans/loans.component.html b/section_11/bank-app-ui/src/app/components/loans/loans.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/loans/loans.component.html rename to section_11/bank-app-ui/src/app/components/loans/loans.component.html diff --git a/section9/bank-app-ui/src/app/components/loans/loans.component.ts b/section_11/bank-app-ui/src/app/components/loans/loans.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/loans/loans.component.ts rename to section_11/bank-app-ui/src/app/components/loans/loans.component.ts diff --git a/section9/bank-app-ui/src/app/components/login/login.component.css b/section_11/bank-app-ui/src/app/components/login/login.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/login/login.component.css rename to section_11/bank-app-ui/src/app/components/login/login.component.css diff --git a/section9/bank-app-ui/src/app/components/login/login.component.html b/section_11/bank-app-ui/src/app/components/login/login.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/login/login.component.html rename to section_11/bank-app-ui/src/app/components/login/login.component.html diff --git a/section_10/bank-app-ui/src/app/components/login/login.component.ts b/section_11/bank-app-ui/src/app/components/login/login.component.ts similarity index 87% rename from section_10/bank-app-ui/src/app/components/login/login.component.ts rename to section_11/bank-app-ui/src/app/components/login/login.component.ts index bdf85f5f..68a4f45a 100644 --- a/section_10/bank-app-ui/src/app/components/login/login.component.ts +++ b/section_11/bank-app-ui/src/app/components/login/login.component.ts @@ -26,11 +26,12 @@ export class LoginComponent implements OnInit { validateUser(loginForm: NgForm) { this.loginService.validateLoginDetails(this.model).subscribe( responseData => { - window.sessionStorage.setItem("Authorization",responseData.headers.get('Authorization')!); + window.sessionStorage.setItem("Authorization", + responseData.headers.get('Authorization')!); this.model = responseData.body; this.model.authStatus = 'AUTH'; window.sessionStorage.setItem("userdetails",JSON.stringify(this.model)); - let xsrf = getCookie('XSRF-TOKEN')!; + let xsrf = getCookie("XSRF-TOKEN")!; window.sessionStorage.setItem("XSRF-TOKEN",xsrf); this.router.navigate(['dashboard']); }); diff --git a/section9/bank-app-ui/src/app/components/logout/logout.component.css b/section_11/bank-app-ui/src/app/components/logout/logout.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/logout/logout.component.css rename to section_11/bank-app-ui/src/app/components/logout/logout.component.css diff --git a/section9/bank-app-ui/src/app/components/logout/logout.component.html b/section_11/bank-app-ui/src/app/components/logout/logout.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/logout/logout.component.html rename to section_11/bank-app-ui/src/app/components/logout/logout.component.html diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.ts b/section_11/bank-app-ui/src/app/components/logout/logout.component.ts similarity index 80% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.ts rename to section_11/bank-app-ui/src/app/components/logout/logout.component.ts index f43d2c0d..4dc17fa1 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/components/logout/logout.component.ts +++ b/section_11/bank-app-ui/src/app/components/logout/logout.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { LoginService } from 'src/app/services/login/login.service'; import { Router } from '@angular/router'; import { User } from 'src/app/model/user.model'; @@ -17,7 +16,8 @@ export class LogoutComponent implements OnInit { ngOnInit(): void { window.sessionStorage.setItem("userdetails",""); - window.sessionStorage.setItem("XSRF-TOKEN",""); + window.sessionStorage.setItem("Authorization",""); + // window.sessionStorage.setItem("XSRF-TOKEN",""); this.router.navigate(['/login']); } diff --git a/section9/bank-app-ui/src/app/components/notices/notices.component.css b/section_11/bank-app-ui/src/app/components/notices/notices.component.css similarity index 100% rename from section9/bank-app-ui/src/app/components/notices/notices.component.css rename to section_11/bank-app-ui/src/app/components/notices/notices.component.css diff --git a/section9/bank-app-ui/src/app/components/notices/notices.component.html b/section_11/bank-app-ui/src/app/components/notices/notices.component.html similarity index 100% rename from section9/bank-app-ui/src/app/components/notices/notices.component.html rename to section_11/bank-app-ui/src/app/components/notices/notices.component.html diff --git a/section9/bank-app-ui/src/app/components/notices/notices.component.ts b/section_11/bank-app-ui/src/app/components/notices/notices.component.ts similarity index 91% rename from section9/bank-app-ui/src/app/components/notices/notices.component.ts rename to section_11/bank-app-ui/src/app/components/notices/notices.component.ts index 170de75c..01049e1b 100644 --- a/section9/bank-app-ui/src/app/components/notices/notices.component.ts +++ b/section_11/bank-app-ui/src/app/components/notices/notices.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { Cards } from 'src/app/model/cards.model'; import { DashboardService } from 'src/app/services/dashboard/dashboard.service'; @Component({ diff --git a/section9/bank-app-ui/src/app/constants/app.constants.ts b/section_11/bank-app-ui/src/app/constants/app.constants.ts similarity index 100% rename from section9/bank-app-ui/src/app/constants/app.constants.ts rename to section_11/bank-app-ui/src/app/constants/app.constants.ts diff --git a/section_10/bank-app-ui/src/app/interceptors/app.request.interceptor.ts b/section_11/bank-app-ui/src/app/interceptors/app.request.interceptor.ts similarity index 94% rename from section_10/bank-app-ui/src/app/interceptors/app.request.interceptor.ts rename to section_11/bank-app-ui/src/app/interceptors/app.request.interceptor.ts index 75b28103..19cee3e5 100644 --- a/section_10/bank-app-ui/src/app/interceptors/app.request.interceptor.ts +++ b/section_11/bank-app-ui/src/app/interceptors/app.request.interceptor.ts @@ -17,16 +17,18 @@ export class XhrInterceptor implements HttpInterceptor { } if(this.user && this.user.password && this.user.email){ httpHeaders = httpHeaders.append('Authorization', 'Basic ' + window.btoa(this.user.email + ':' + this.user.password)); - }else { + } else { let authorization = sessionStorage.getItem('Authorization'); if(authorization){ httpHeaders = httpHeaders.append('Authorization', authorization); } } + let xsrf = sessionStorage.getItem('XSRF-TOKEN'); if(xsrf){ - httpHeaders = httpHeaders.append('X-XSRF-TOKEN', xsrf); + httpHeaders = httpHeaders.append('X-XSRF-TOKEN', xsrf); } + httpHeaders = httpHeaders.append('X-Requested-With', 'XMLHttpRequest'); const xhr = req.clone({ headers: httpHeaders diff --git a/section9/bank-app-ui/src/app/model/account.model.ts b/section_11/bank-app-ui/src/app/model/account.model.ts similarity index 100% rename from section9/bank-app-ui/src/app/model/account.model.ts rename to section_11/bank-app-ui/src/app/model/account.model.ts diff --git a/section9/bank-app-ui/src/app/model/account.transactions.model.ts b/section_11/bank-app-ui/src/app/model/account.transactions.model.ts similarity index 100% rename from section9/bank-app-ui/src/app/model/account.transactions.model.ts rename to section_11/bank-app-ui/src/app/model/account.transactions.model.ts diff --git a/section9/bank-app-ui/src/app/model/cards.model.ts b/section_11/bank-app-ui/src/app/model/cards.model.ts similarity index 100% rename from section9/bank-app-ui/src/app/model/cards.model.ts rename to section_11/bank-app-ui/src/app/model/cards.model.ts diff --git a/section9/bank-app-ui/src/app/model/contact.model.ts b/section_11/bank-app-ui/src/app/model/contact.model.ts similarity index 100% rename from section9/bank-app-ui/src/app/model/contact.model.ts rename to section_11/bank-app-ui/src/app/model/contact.model.ts diff --git a/section9/bank-app-ui/src/app/model/loans.model.ts b/section_11/bank-app-ui/src/app/model/loans.model.ts similarity index 100% rename from section9/bank-app-ui/src/app/model/loans.model.ts rename to section_11/bank-app-ui/src/app/model/loans.model.ts diff --git a/section9/bank-app-ui/src/app/model/user.model.ts b/section_11/bank-app-ui/src/app/model/user.model.ts similarity index 100% rename from section9/bank-app-ui/src/app/model/user.model.ts rename to section_11/bank-app-ui/src/app/model/user.model.ts diff --git a/section_11/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section_11/bank-app-ui/src/app/routeguards/auth.routeguard.ts new file mode 100644 index 00000000..0eaee8f8 --- /dev/null +++ b/section_11/bank-app-ui/src/app/routeguards/auth.routeguard.ts @@ -0,0 +1,27 @@ +import { Injectable,inject } from '@angular/core'; +import { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot,Router } from '@angular/router'; +import { User } from '../model/user.model'; + +@Injectable() +export class AuthActivateRouteGuard { + user = new User(); + + constructor(private router: Router){ + + } + + canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ + if(sessionStorage.getItem('userdetails')){ + this.user = JSON.parse(sessionStorage.getItem('userdetails')!); + } + if(this.user.email.length===0){ + this.router.navigate(['login']); + } + return this.user.email.length!==0?true:false; + } + +} + +export const AuthGuard: CanActivateFn = (next: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean => { + return inject(AuthActivateRouteGuard).canActivate(next, state); + } \ No newline at end of file diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/services/dashboard/dashboard.service.ts b/section_11/bank-app-ui/src/app/services/dashboard/dashboard.service.ts similarity index 93% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/services/dashboard/dashboard.service.ts rename to section_11/bank-app-ui/src/app/services/dashboard/dashboard.service.ts index dafc19ca..6693ed64 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/services/dashboard/dashboard.service.ts +++ b/section_11/bank-app-ui/src/app/services/dashboard/dashboard.service.ts @@ -2,7 +2,6 @@ import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { AppConstants } from "../../constants/app.constants"; import { environment } from '../../../environments/environment'; -import { User } from '../../model/user.model'; import { Contact } from '../../model/contact.model'; @Injectable({ @@ -33,7 +32,7 @@ export class DashboardService { } saveMessage(contact : Contact){ - return this.http.post(environment.rooturl + AppConstants.CONTACT_API_URL,contact,{ observe: 'response'}); + return this.http.post(environment.rooturl + AppConstants.CONTACT_API_URL,contact,{ observe: 'response',withCredentials: true }); } } diff --git a/section9/bank-app-ui/src/app/services/login/login.service.ts b/section_11/bank-app-ui/src/app/services/login/login.service.ts similarity index 82% rename from section9/bank-app-ui/src/app/services/login/login.service.ts rename to section_11/bank-app-ui/src/app/services/login/login.service.ts index 51266d0f..5b72029a 100644 --- a/section9/bank-app-ui/src/app/services/login/login.service.ts +++ b/section_11/bank-app-ui/src/app/services/login/login.service.ts @@ -1,7 +1,6 @@ import { Injectable } from '@angular/core'; -import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http'; +import { HttpClient } from '@angular/common/http'; import { User } from "src/app/model/user.model"; -import { Observable, Subject } from 'rxjs'; import { AppConstants } from 'src/app/constants/app.constants'; import { environment } from '../../../environments/environment'; diff --git a/section9/bank-app-ui/src/assets/.gitkeep b/section_11/bank-app-ui/src/assets/.gitkeep similarity index 100% rename from section9/bank-app-ui/src/assets/.gitkeep rename to section_11/bank-app-ui/src/assets/.gitkeep diff --git a/section9/bank-app-ui/src/assets/css/bootstrap.css b/section_11/bank-app-ui/src/assets/css/bootstrap.css similarity index 100% rename from section9/bank-app-ui/src/assets/css/bootstrap.css rename to section_11/bank-app-ui/src/assets/css/bootstrap.css diff --git a/section9/bank-app-ui/src/assets/css/font-awesome.css b/section_11/bank-app-ui/src/assets/css/font-awesome.css similarity index 100% rename from section9/bank-app-ui/src/assets/css/font-awesome.css rename to section_11/bank-app-ui/src/assets/css/font-awesome.css diff --git a/section9/bank-app-ui/src/assets/fonts/FontAwesome.otf b/section_11/bank-app-ui/src/assets/fonts/FontAwesome.otf similarity index 100% rename from section9/bank-app-ui/src/assets/fonts/FontAwesome.otf rename to section_11/bank-app-ui/src/assets/fonts/FontAwesome.otf diff --git a/section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot b/section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot similarity index 100% rename from section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot rename to section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot diff --git a/section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf b/section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf similarity index 100% rename from section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf rename to section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf diff --git a/section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff b/section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff similarity index 100% rename from section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff rename to section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff diff --git a/section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 b/section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 similarity index 100% rename from section9/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 rename to section_11/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 diff --git a/section9/bank-app-ui/src/assets/images/logo.png b/section_11/bank-app-ui/src/assets/images/logo.png similarity index 100% rename from section9/bank-app-ui/src/assets/images/logo.png rename to section_11/bank-app-ui/src/assets/images/logo.png diff --git a/section_11/bank-app-ui/src/environments/environment.development.ts b/section_11/bank-app-ui/src/environments/environment.development.ts new file mode 100644 index 00000000..2fca8742 --- /dev/null +++ b/section_11/bank-app-ui/src/environments/environment.development.ts @@ -0,0 +1,4 @@ +export const environment = { + production: false, + rooturl : 'http://localhost:8080' +}; diff --git a/section_11/bank-app-ui/src/environments/environment.ts b/section_11/bank-app-ui/src/environments/environment.ts new file mode 100644 index 00000000..6453eee4 --- /dev/null +++ b/section_11/bank-app-ui/src/environments/environment.ts @@ -0,0 +1,4 @@ +export const environment = { + production: true, + rooturl : 'http://localhost:8080' +}; diff --git a/section9/bank-app-ui/src/favicon.ico b/section_11/bank-app-ui/src/favicon.ico similarity index 100% rename from section9/bank-app-ui/src/favicon.ico rename to section_11/bank-app-ui/src/favicon.ico diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/index.html b/section_11/bank-app-ui/src/index.html similarity index 100% rename from section6/00_UI_Initial Code/bank-app-ui/src/index.html rename to section_11/bank-app-ui/src/index.html diff --git a/section9/bank-app-ui/src/main.ts b/section_11/bank-app-ui/src/main.ts similarity index 57% rename from section9/bank-app-ui/src/main.ts rename to section_11/bank-app-ui/src/main.ts index c7b673cf..c58dc05c 100644 --- a/section9/bank-app-ui/src/main.ts +++ b/section_11/bank-app-ui/src/main.ts @@ -1,12 +1,7 @@ -import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; -if (environment.production) { - enableProdMode(); -} platformBrowserDynamic().bootstrapModule(AppModule) .catch(err => console.error(err)); diff --git a/section9/bank-app-ui/src/styles.css b/section_11/bank-app-ui/src/styles.css similarity index 100% rename from section9/bank-app-ui/src/styles.css rename to section_11/bank-app-ui/src/styles.css diff --git a/section9/bank-app-ui/tsconfig.app.json b/section_11/bank-app-ui/tsconfig.app.json similarity index 85% rename from section9/bank-app-ui/tsconfig.app.json rename to section_11/bank-app-ui/tsconfig.app.json index 82d91dc4..374cc9d2 100644 --- a/section9/bank-app-ui/tsconfig.app.json +++ b/section_11/bank-app-ui/tsconfig.app.json @@ -6,8 +6,7 @@ "types": [] }, "files": [ - "src/main.ts", - "src/polyfills.ts" + "src/main.ts" ], "include": [ "src/**/*.d.ts" diff --git a/section9/bank-app-ui/tsconfig.json b/section_11/bank-app-ui/tsconfig.json similarity index 88% rename from section9/bank-app-ui/tsconfig.json rename to section_11/bank-app-ui/tsconfig.json index ff06eae1..ed966d43 100644 --- a/section9/bank-app-ui/tsconfig.json +++ b/section_11/bank-app-ui/tsconfig.json @@ -16,10 +16,11 @@ "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, - "target": "es2020", - "module": "es2020", + "target": "ES2022", + "module": "ES2022", + "useDefineForClassFields": false, "lib": [ - "es2020", + "ES2022", "dom" ] }, diff --git a/section6/00_UI_Initial Code/bank-app-ui/tsconfig.spec.json b/section_11/bank-app-ui/tsconfig.spec.json similarity index 81% rename from section6/00_UI_Initial Code/bank-app-ui/tsconfig.spec.json rename to section_11/bank-app-ui/tsconfig.spec.json index 092345b0..be7e9da7 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/tsconfig.spec.json +++ b/section_11/bank-app-ui/tsconfig.spec.json @@ -7,10 +7,6 @@ "jasmine" ] }, - "files": [ - "src/test.ts", - "src/polyfills.ts" - ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" diff --git a/section_11/springsecsection_11/.gitignore b/section_11/springsecsection_11/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/section_11/springsecsection_11/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/section_11/springsecsection_11/.mvn/wrapper/maven-wrapper.properties b/section_11/springsecsection_11/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..aeccdfdb --- /dev/null +++ b/section_11/springsecsection_11/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section_11/springsecsection_11/mvnw b/section_11/springsecsection_11/mvnw new file mode 100755 index 00000000..ba9212a0 --- /dev/null +++ b/section_11/springsecsection_11/mvnw @@ -0,0 +1,250 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.1 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/section_11/springsecsection_11/mvnw.cmd b/section_11/springsecsection_11/mvnw.cmd new file mode 100644 index 00000000..406932da --- /dev/null +++ b/section_11/springsecsection_11/mvnw.cmd @@ -0,0 +1,146 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.1 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section_11/springsecsection_11/pom.xml b/section_11/springsecsection_11/pom.xml new file mode 100644 index 00000000..5ddcf4e9 --- /dev/null +++ b/section_11/springsecsection_11/pom.xml @@ -0,0 +1,85 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.3.0 + + + com.eazybytes + springsecsection_11 + 0.0.1-SNAPSHOT + springsecsection_11 + Demo project for Spring Boot and Spring Security + + 21 + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-jdbc + + + com.mysql + mysql-connector-j + runtime + + + org.springframework.boot + spring-boot-devtools + runtime + true + + + org.projectlombok + lombok + true + + + io.jsonwebtoken + jjwt-api + 0.12.5 + + + io.jsonwebtoken + jjwt-impl + 0.12.5 + runtime + + + io.jsonwebtoken + jjwt-jackson + 0.12.5 + runtime + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/EazyBankBackendApplication.java new file mode 100644 index 00000000..5f5cf02d --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -0,0 +1,15 @@ +package com.eazybytes; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; + +@SpringBootApplication +@EnableWebSecurity +public class EazyBankBackendApplication { + + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..415dfb16 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java @@ -0,0 +1,40 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("prod") +@RequiredArgsConstructor +public class EazyBankProdUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + // Fetch Age details and perform validation to check if age >18 + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + }else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..712f39f0 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,32 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = customer.getAuthorities().stream().map(authority -> new + SimpleGrantedAuthority(authority.getName())).collect(Collectors.toList()); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..96185c80 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -0,0 +1,35 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("!prod") +@RequiredArgsConstructor +public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..265e3875 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -0,0 +1,100 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.*; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("!prod") +public class ProjectSecurityConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers( "/contact","/register", "/apiLogin") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) + .addFilterAt(new AuthoritiesLoggingAtFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new JWTTokenGeneratorFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new JWTTokenValidatorFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").hasRole("USER") + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession", "/apiLogin").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + + @Bean + public AuthenticationManager authenticationManager(UserDetailsService userDetailsService, + PasswordEncoder passwordEncoder) { + EazyBankUsernamePwdAuthenticationProvider authenticationProvider = + new EazyBankUsernamePwdAuthenticationProvider(userDetailsService, passwordEncoder); + ProviderManager providerManager = new ProviderManager(authenticationProvider); + providerManager.setEraseCredentialsAfterAuthentication(false); + return providerManager; + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..c2ee3728 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,100 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.*; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("https://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register", "/apiLogin") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) + .addFilterAt(new AuthoritiesLoggingAtFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new JWTTokenGeneratorFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new JWTTokenValidatorFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").hasRole("USER") + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession", "/apiLogin").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + + @Bean + public AuthenticationManager authenticationManager(UserDetailsService userDetailsService, + PasswordEncoder passwordEncoder) { + EazyBankProdUsernamePwdAuthenticationProvider authenticationProvider = + new EazyBankProdUsernamePwdAuthenticationProvider(userDetailsService, passwordEncoder); + ProviderManager providerManager = new ProviderManager(authenticationProvider); + providerManager.setEraseCredentialsAfterAuthentication(false); + return providerManager; + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/constants/ApplicationConstants.java new file mode 100644 index 00000000..6a6dd50a --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/constants/ApplicationConstants.java @@ -0,0 +1,8 @@ +package com.eazybytes.constants; + +public final class ApplicationConstants { + + public static final String JWT_SECRET_KEY = "JWT_SECRET"; + public static final String JWT_SECRET_DEFAULT_VALUE = "jxgEQeXHuPq8VdbyYFNkANdudQ53YUn4"; + public static final String JWT_HEADER = "Authorization"; +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/AccountController.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/AccountController.java new file mode 100644 index 00000000..b5c3b79b --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/AccountController.java @@ -0,0 +1,26 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Accounts; +import com.eazybytes.repository.AccountsRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +public class AccountController { + + private final AccountsRepository accountsRepository; + + @GetMapping("/myAccount") + public Accounts getAccountDetails(@RequestParam long id) { + Accounts accounts = accountsRepository.findByCustomerId(id); + if (accounts != null) { + return accounts; + } else { + return null; + } + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/BalanceController.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/BalanceController.java new file mode 100644 index 00000000..14752a7d --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/BalanceController.java @@ -0,0 +1,28 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.AccountTransactions; +import com.eazybytes.repository.AccountTransactionsRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class BalanceController { + + private final AccountTransactionsRepository accountTransactionsRepository; + + @GetMapping("/myBalance") + public List getBalanceDetails(@RequestParam long id) { + List accountTransactions = accountTransactionsRepository. + findByCustomerIdOrderByTransactionDtDesc(id); + if (accountTransactions != null) { + return accountTransactions; + } else { + return null; + } + } +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/CardsController.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/CardsController.java new file mode 100644 index 00000000..ff93cb36 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/CardsController.java @@ -0,0 +1,29 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Cards; +import com.eazybytes.repository.CardsRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class CardsController { + + private final CardsRepository cardsRepository; + + @GetMapping("/myCards") + public List getCardDetails(@RequestParam long id) { + List cards = cardsRepository.findByCustomerId(id); + if (cards != null ) { + return cards; + }else { + return null; + } + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/ContactController.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/ContactController.java new file mode 100644 index 00000000..78d5a020 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/ContactController.java @@ -0,0 +1,31 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Contact; +import com.eazybytes.repository.ContactRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.sql.Date; +import java.util.Random; + +@RestController +@RequiredArgsConstructor +public class ContactController { + + private final ContactRepository contactRepository; + + @PostMapping("/contact") + public Contact saveContactInquiryDetails(@RequestBody Contact contact) { + contact.setContactId(getServiceReqNumber()); + contact.setCreateDt(new Date(System.currentTimeMillis())); + return contactRepository.save(contact); + } + + public String getServiceReqNumber() { + Random random = new Random(); + int ranNum = random.nextInt(999999999 - 9999) + 9999; + return "SR" + ranNum; + } +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/LoansController.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/LoansController.java new file mode 100644 index 00000000..d48467f0 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/LoansController.java @@ -0,0 +1,28 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Loans; +import com.eazybytes.repository.LoanRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class LoansController { + + private final LoanRepository loanRepository; + + @GetMapping("/myLoans") + public List getLoanDetails(@RequestParam long id) { + List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(id); + if (loans != null) { + return loans; + } else { + return null; + } + } + +} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/NoticesController.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/NoticesController.java similarity index 82% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/controller/NoticesController.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/controller/NoticesController.java index 9943001c..277f7abc 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/NoticesController.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/NoticesController.java @@ -1,31 +1,30 @@ package com.eazybytes.controller; -import java.util.List; -import java.util.concurrent.TimeUnit; - -import org.springframework.beans.factory.annotation.Autowired; +import com.eazybytes.model.Notice; +import com.eazybytes.repository.NoticeRepository; +import lombok.RequiredArgsConstructor; import org.springframework.http.CacheControl; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.eazybytes.model.Notice; -import com.eazybytes.repository.NoticeRepository; +import java.util.List; +import java.util.concurrent.TimeUnit; @RestController +@RequiredArgsConstructor public class NoticesController { - @Autowired - private NoticeRepository noticeRepository; + private final NoticeRepository noticeRepository; @GetMapping("/notices") public ResponseEntity> getNotices() { List notices = noticeRepository.findAllActiveNotices(); - if (notices != null ) { + if (notices != null) { return ResponseEntity.ok() .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) .body(notices); - }else { + } else { return null; } } diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/UserController.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..4d893068 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,91 @@ +package com.eazybytes.controller; + +import com.eazybytes.constants.ApplicationConstants; +import com.eazybytes.model.Customer; +import com.eazybytes.model.LoginRequestDTO; +import com.eazybytes.model.LoginResponseDTO; +import com.eazybytes.repository.CustomerRepository; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import lombok.RequiredArgsConstructor; +import org.springframework.core.env.Environment; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.crypto.SecretKey; +import java.nio.charset.StandardCharsets; +import java.sql.Date; +import java.util.Optional; +import java.util.stream.Collectors; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; + private final AuthenticationManager authenticationManager; + private final Environment env; + + @PostMapping("/register") + public ResponseEntity registerUser(@RequestBody Customer customer) { + try { + String hashPwd = passwordEncoder.encode(customer.getPwd()); + customer.setPwd(hashPwd); + customer.setCreateDt(new Date(System.currentTimeMillis())); + Customer savedCustomer = customerRepository.save(customer); + + if (savedCustomer.getId() > 0) { + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); + } + } catch (Exception ex) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); + } + } + + @RequestMapping("/user") + public Customer getUserDetailsAfterLogin(Authentication authentication) { + Optional optionalCustomer = customerRepository.findByEmail(authentication.getName()); + return optionalCustomer.orElse(null); + } + + @PostMapping("/apiLogin") + public ResponseEntity apiLogin (@RequestBody LoginRequestDTO loginRequest) { + String jwt = ""; + Authentication authentication = UsernamePasswordAuthenticationToken.unauthenticated(loginRequest.username(), + loginRequest.password()); + Authentication authenticationResponse = authenticationManager.authenticate(authentication); + if(null != authenticationResponse && authenticationResponse.isAuthenticated()) { + if (null != env) { + String secret = env.getProperty(ApplicationConstants.JWT_SECRET_KEY, + ApplicationConstants.JWT_SECRET_DEFAULT_VALUE); + SecretKey secretKey = Keys.hmacShaKeyFor(secret.getBytes(StandardCharsets.UTF_8)); + jwt = Jwts.builder().issuer("Eazy Bank").subject("JWT Token") + .claim("username", authenticationResponse.getName()) + .claim("authorities", authenticationResponse.getAuthorities().stream().map( + GrantedAuthority::getAuthority).collect(Collectors.joining(","))) + .issuedAt(new java.util.Date()) + .expiration(new java.util.Date((new java.util.Date()).getTime() + 30000000)) + .signWith(secretKey).compact(); + } + } + return ResponseEntity.status(HttpStatus.OK).header(ApplicationConstants.JWT_HEADER,jwt) + .body(new LoginResponseDTO(HttpStatus.OK.getReasonPhrase(), jwt)); + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthorizationEvents.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthorizationEvents.java new file mode 100644 index 00000000..69193055 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/events/AuthorizationEvents.java @@ -0,0 +1,20 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.authorization.event.AuthorizationDeniedEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthorizationEvents { + + @EventListener + public void onFailure(AuthorizationDeniedEvent deniedEvent) { + log.error("Authorization failed for the user : {} due to : {}", deniedEvent.getAuthentication().get().getName(), + deniedEvent.getAuthorizationDecision().toString()); + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java new file mode 100644 index 00000000..febb0863 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java @@ -0,0 +1,29 @@ +package com.eazybytes.filter; + +import jakarta.servlet.*; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; + +import java.io.IOException; + +@Slf4j +public class AuthoritiesLoggingAfterFilter implements Filter { + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { + Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + if(null != authentication) { + log.info("User " + authentication.getName() + " is successfully authenticated and " + + "has the authorities " + authentication.getAuthorities().toString()); + } + chain.doFilter(request,response); + } +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java new file mode 100644 index 00000000..0286d2c6 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java @@ -0,0 +1,24 @@ +package com.eazybytes.filter; + +import jakarta.servlet.*; +import lombok.extern.slf4j.Slf4j; + +import java.io.IOException; + +@Slf4j +public class AuthoritiesLoggingAtFilter implements Filter { + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) + throws IOException, ServletException { + log.info("Authentication Validation is in progress"); + chain.doFilter(request,response); + } +} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java similarity index 84% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java index 4e65b58d..be9f9438 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java @@ -11,14 +11,13 @@ public class CsrfCookieFilter extends OncePerRequestFilter { + @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { CsrfToken csrfToken = (CsrfToken) request.getAttribute(CsrfToken.class.getName()); - if(null != csrfToken.getHeaderName()){ - response.setHeader(csrfToken.getHeaderName(), csrfToken.getToken()); - } + // Render the token value to a cookie by causing the deferred token to be loaded + csrfToken.getToken(); filterChain.doFilter(request, response); } - } diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java new file mode 100644 index 00000000..eed55b7e --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java @@ -0,0 +1,59 @@ +package com.eazybytes.filter; + +import com.eazybytes.constants.ApplicationConstants; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.core.env.Environment; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.web.filter.OncePerRequestFilter; + +import javax.crypto.SecretKey; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.Date; +import java.util.stream.Collectors; + +public class JWTTokenGeneratorFilter extends OncePerRequestFilter { + + /** + * @param request + * @param response + * @param filterChain + * @throws ServletException + * @throws IOException + */ + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, + FilterChain filterChain) throws ServletException, IOException { + Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + if (null != authentication) { + Environment env = getEnvironment(); + if (null != env) { + String secret = env.getProperty(ApplicationConstants.JWT_SECRET_KEY, + ApplicationConstants.JWT_SECRET_DEFAULT_VALUE); + SecretKey secretKey = Keys.hmacShaKeyFor(secret.getBytes(StandardCharsets.UTF_8)); + String jwt = Jwts.builder().issuer("Eazy Bank").subject("JWT Token") + .claim("username", authentication.getName()) + .claim("authorities", authentication.getAuthorities().stream().map( + GrantedAuthority::getAuthority).collect(Collectors.joining(","))) + .issuedAt(new Date()) + .expiration(new Date((new Date()).getTime() + 30000000)) + .signWith(secretKey).compact(); + response.setHeader(ApplicationConstants.JWT_HEADER, jwt); + } + } + filterChain.doFilter(request, response); + } + + @Override + protected boolean shouldNotFilter(HttpServletRequest request) throws ServletException { + return !request.getServletPath().equals("/user"); + } + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java new file mode 100644 index 00000000..bf130cca --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java @@ -0,0 +1,65 @@ +package com.eazybytes.filter; + +import com.eazybytes.constants.ApplicationConstants; +import io.jsonwebtoken.Claims; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.core.env.Environment; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.authority.AuthorityUtils; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.web.filter.OncePerRequestFilter; + +import javax.crypto.SecretKey; +import java.io.IOException; +import java.nio.charset.StandardCharsets; + +public class JWTTokenValidatorFilter extends OncePerRequestFilter { + /** + * @param request + * @param response + * @param filterChain + * @throws ServletException + * @throws IOException + */ + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) + throws ServletException, IOException { + String jwt = request.getHeader(ApplicationConstants.JWT_HEADER); + if(null != jwt) { + try { + Environment env = getEnvironment(); + if (null != env) { + String secret = env.getProperty(ApplicationConstants.JWT_SECRET_KEY, + ApplicationConstants.JWT_SECRET_DEFAULT_VALUE); + SecretKey secretKey = Keys.hmacShaKeyFor(secret.getBytes(StandardCharsets.UTF_8)); + if(null !=secretKey) { + Claims claims = Jwts.parser().verifyWith(secretKey) + .build().parseSignedClaims(jwt).getPayload(); + String username = String.valueOf(claims.get("username")); + String authorities = String.valueOf(claims.get("authorities")); + Authentication authentication = new UsernamePasswordAuthenticationToken(username, null, + AuthorityUtils.commaSeparatedStringToAuthorityList(authorities)); + SecurityContextHolder.getContext().setAuthentication(authentication); + } + } + + } catch (Exception exception) { + throw new BadCredentialsException("Invalid Token received!"); + } + } + filterChain.doFilter(request,response); + } + + @Override + protected boolean shouldNotFilter(HttpServletRequest request) throws ServletException { + return request.getServletPath().equals("/user"); + } + +} diff --git a/section8/springsecsection8/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java similarity index 60% rename from section8/springsecsection8/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java index 75fbec4d..1ab1588b 100644 --- a/section8/springsecsection8/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java @@ -1,48 +1,52 @@ package com.eazybytes.filter; + import jakarta.servlet.*; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpHeaders; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.util.StringUtils; import java.io.IOException; -import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.Base64; -import static org.springframework.http.HttpHeaders.AUTHORIZATION; - - -public class RequestValidationBeforeFilter implements Filter { +public class RequestValidationBeforeFilter implements Filter { - public static final String AUTHENTICATION_SCHEME_BASIC = "Basic"; - private Charset credentialsCharset = StandardCharsets.UTF_8; + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; - String header = req.getHeader(AUTHORIZATION); - if (header != null) { + String header = req.getHeader(HttpHeaders.AUTHORIZATION); + if(null != header) { header = header.trim(); - if (StringUtils.startsWithIgnoreCase(header, AUTHENTICATION_SCHEME_BASIC)) { + if(StringUtils.startsWithIgnoreCase(header, "Basic ")) { byte[] base64Token = header.substring(6).getBytes(StandardCharsets.UTF_8); byte[] decoded; try { decoded = Base64.getDecoder().decode(base64Token); - String token = new String(decoded, credentialsCharset); + String token = new String(decoded, StandardCharsets.UTF_8); // un:pwd int delim = token.indexOf(":"); - if (delim == -1) { + if(delim== -1) { throw new BadCredentialsException("Invalid basic authentication token"); } - String email = token.substring(0, delim); - if (email.toLowerCase().contains("test")) { + String email = token.substring(0,delim); + if(email.toLowerCase().contains("test")) { res.setStatus(HttpServletResponse.SC_BAD_REQUEST); return; } - } catch (IllegalArgumentException e) { + } catch (IllegalArgumentException exception) { throw new BadCredentialsException("Failed to decode basic authentication token"); } } diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/AccountTransactions.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/AccountTransactions.java new file mode 100644 index 00000000..b2833f59 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/AccountTransactions.java @@ -0,0 +1,46 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter +@Setter +@Table(name="account_transactions") +public class AccountTransactions { + + @Id + @Column(name = "transaction_id") + private String transactionId; + + @Column(name="account_number") + private long accountNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name="transaction_dt") + private Date transactionDt; + + @Column(name = "transaction_summary") + private String transactionSummary; + + @Column(name="transaction_type") + private String transactionType; + + @Column(name = "transaction_amt") + private int transactionAmt; + + @Column(name = "closing_balance") + private int closingBalance; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Accounts.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Accounts.java new file mode 100644 index 00000000..30a6bcba --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Accounts.java @@ -0,0 +1,32 @@ +package com.eazybytes.model; + + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +public class Accounts { + + @Column(name = "customer_id") + private long customerId; + + @Id + @Column(name="account_number") + private long accountNumber; + + @Column(name="account_type") + private String accountType; + + @Column(name = "branch_address") + private String branchAddress; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Authority.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Authority.java new file mode 100644 index 00000000..706f8137 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Authority.java @@ -0,0 +1,22 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +@Entity +@Getter @Setter +@Table(name="authorities") +public class Authority { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + + private String name; + + @ManyToOne + @JoinColumn(name="customer_id") + private Customer customer; + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Cards.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Cards.java new file mode 100644 index 00000000..8a090acb --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Cards.java @@ -0,0 +1,39 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "cards") +public class Cards { + + @Id + @Column(name = "card_id") + private long cardId; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "card_number") + private String cardNumber; + + @Column(name = "card_type") + private String cardType; + + @Column(name = "total_limit") + private int totalLimit; + + @Column(name = "amount_used") + private int amountUsed; + + @Column(name = "available_amount") + private int availableAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Contact.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Contact.java new file mode 100644 index 00000000..3de986d5 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Contact.java @@ -0,0 +1,34 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "contact_messages") +public class Contact { + + @Id + @Column(name = "contact_id") + private String contactId; + + @Column(name = "contact_name") + private String contactName; + + @Column(name = "contact_email") + private String contactEmail; + + private String subject; + + private String message; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Customer.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Customer.java new file mode 100644 index 00000000..0395ce85 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Customer.java @@ -0,0 +1,41 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; +import java.util.Set; + +@Entity +@Getter @Setter +public class Customer { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "customer_id") + private long id; + + private String name; + + private String email; + + @Column(name = "mobile_number") + private String mobileNumber; + + @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) + private String pwd; + + private String role; + + @Column(name = "create_dt") + @JsonIgnore + private Date createDt; + + @OneToMany(mappedBy = "customer", fetch = FetchType.EAGER) + @JsonIgnore + private Set authorities; + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Loans.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Loans.java new file mode 100644 index 00000000..f779eb20 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Loans.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "loans") +public class Loans { + + @Id + @Column(name = "loan_number") + private long loanNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "start_dt") + private Date startDt; + + @Column(name = "loan_type") + private String loanType; + + @Column(name = "total_loan") + private int totalLoan; + + @Column(name = "amount_paid") + private int amountPaid; + + @Column(name = "outstanding_amount") + private int outstandingAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginRequestDTO.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginRequestDTO.java new file mode 100644 index 00000000..3cedcfd4 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginRequestDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginRequestDTO(String username, String password) { +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginResponseDTO.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginResponseDTO.java new file mode 100644 index 00000000..bb263c5a --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/LoginResponseDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginResponseDTO(String status, String jwtToken) { +} diff --git a/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Notice.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Notice.java new file mode 100644 index 00000000..7ed13868 --- /dev/null +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/model/Notice.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "notice_details") +public class Notice { + + @Id + @Column(name = "notice_id") + private long noticeId; + + @Column(name = "notice_summary") + private String noticeSummary; + + @Column(name = "notice_details") + private String noticeDetails; + + @Column(name = "notic_beg_dt") + private Date noticBegDt; + + @Column(name = "notic_end_dt") + private Date noticEndDt; + + @JsonIgnore + @Column(name = "create_dt") + private Date createDt; + + @JsonIgnore + @Column(name = "update_dt") + private Date updateDt; + +} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java similarity index 86% rename from section6/springsecsection6/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java index 580d4ee3..a06c2fd7 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java @@ -8,8 +8,8 @@ import com.eazybytes.model.AccountTransactions; @Repository -public interface AccountTransactionsRepository extends CrudRepository { +public interface AccountTransactionsRepository extends CrudRepository { - List findByCustomerIdOrderByTransactionDtDesc(int customerId); + List findByCustomerIdOrderByTransactionDtDesc(long customerId); } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/AccountsRepository.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/AccountsRepository.java similarity index 85% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/repository/AccountsRepository.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/repository/AccountsRepository.java index 0bcc1f5a..6ae5d8f4 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/AccountsRepository.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/AccountsRepository.java @@ -1,13 +1,12 @@ package com.eazybytes.repository; +import com.eazybytes.model.Accounts; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import com.eazybytes.model.Accounts; - @Repository public interface AccountsRepository extends CrudRepository { - - Accounts findByCustomerId(int customerId); + + Accounts findByCustomerId(long customerId); } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/repository/CardsRepository.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/CardsRepository.java similarity index 78% rename from section7/springsecsection7/src/main/java/com/eazybytes/repository/CardsRepository.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/repository/CardsRepository.java index 21b7875c..61e1f4f5 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/repository/CardsRepository.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/CardsRepository.java @@ -2,6 +2,7 @@ import java.util.List; +import com.eazybytes.model.Loans; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; @@ -10,6 +11,6 @@ @Repository public interface CardsRepository extends CrudRepository { - List findByCustomerId(int customerId); + List findByCustomerId(long customerId); } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/ContactRepository.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/ContactRepository.java similarity index 95% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/repository/ContactRepository.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/repository/ContactRepository.java index 9a042095..0ec283fd 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/ContactRepository.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/ContactRepository.java @@ -6,7 +6,7 @@ import com.eazybytes.model.Contact; @Repository -public interface ContactRepository extends CrudRepository { +public interface ContactRepository extends CrudRepository { } diff --git a/section3/springsecsection3/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/CustomerRepository.java similarity index 77% rename from section3/springsecsection3/src/main/java/com/eazybytes/repository/CustomerRepository.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2088dce5..f8535711 100644 --- a/section3/springsecsection3/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository public interface CustomerRepository extends CrudRepository { - List findByEmail(String email); - + Optional findByEmail(String email); + } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/repository/LoanRepository.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/LoanRepository.java similarity index 81% rename from section6/springsecsection6/src/main/java/com/eazybytes/repository/LoanRepository.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/repository/LoanRepository.java index beecb516..7c1a9105 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/repository/LoanRepository.java +++ b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/LoanRepository.java @@ -10,6 +10,6 @@ @Repository public interface LoanRepository extends CrudRepository { - List findByCustomerIdOrderByStartDtDesc(int customerId); + List findByCustomerIdOrderByStartDtDesc(long customerId); } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/repository/NoticeRepository.java b/section_11/springsecsection_11/src/main/java/com/eazybytes/repository/NoticeRepository.java similarity index 100% rename from section6/springsecsection6/src/main/java/com/eazybytes/repository/NoticeRepository.java rename to section_11/springsecsection_11/src/main/java/com/eazybytes/repository/NoticeRepository.java diff --git a/section_11/springsecsection_11/src/main/resources/application.properties b/section_11/springsecsection_11/src/main/resources/application.properties new file mode 100644 index 00000000..d091a248 --- /dev/null +++ b/section_11/springsecsection_11/src/main/resources/application.properties @@ -0,0 +1,15 @@ +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} diff --git a/section_11/springsecsection_11/src/main/resources/application_prod.properties b/section_11/springsecsection_11/src/main/resources/application_prod.properties new file mode 100644 index 00000000..9ef98007 --- /dev/null +++ b/section_11/springsecsection_11/src/main/resources/application_prod.properties @@ -0,0 +1,13 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} diff --git a/section_13/springsecsection_13/src/main/resources/sql/scripts.sql b/section_11/springsecsection_11/src/main/resources/sql/scripts.sql similarity index 97% rename from section_13/springsecsection_13/src/main/resources/sql/scripts.sql rename to section_11/springsecsection_11/src/main/resources/sql/scripts.sql index 52c0ad32..86a4af5e 100644 --- a/section_13/springsecsection_13/src/main/resources/sql/scripts.sql +++ b/section_11/springsecsection_11/src/main/resources/sql/scripts.sql @@ -1,9 +1,5 @@ -create database eazybank; - -use eazybank; - -drop table `users`; drop table `authorities`; +drop table `users`; drop table `customer`; CREATE TABLE `customer` ( @@ -18,7 +14,7 @@ CREATE TABLE `customer` ( ); INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) - VALUES ('Happy','happy@example.com','9876548337', '$2y$12$oRRbkNfwuR8ug4MlzH5FOeui.//1mkd.RsOAJMbykTSupVy.x/vb2', 'admin',CURDATE()); + VALUES ('Happy','happy@example.com','5334122365', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin',CURDATE()); CREATE TABLE `accounts` ( `customer_id` int NOT NULL, @@ -187,10 +183,10 @@ INSERT INTO `authorities` (`customer_id`, `name`) INSERT INTO `authorities` (`customer_id`, `name`) VALUES (1, 'VIEWBALANCE'); - DELETE FROM `authorities`; +DELETE FROM `authorities`; INSERT INTO `authorities` (`customer_id`, `name`) VALUES (1, 'ROLE_USER'); INSERT INTO `authorities` (`customer_id`, `name`) - VALUES (1, 'ROLE_ADMIN'); + VALUES (1, 'ROLE_ADMIN'); \ No newline at end of file diff --git a/section_13/springsecsection_13/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java b/section_11/springsecsection_11/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java similarity index 100% rename from section_13/springsecsection_13/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java rename to section_11/springsecsection_11/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java diff --git a/section_13/bank-app-ui/.editorconfig b/section_12/bank-app-ui/.editorconfig similarity index 100% rename from section_13/bank-app-ui/.editorconfig rename to section_12/bank-app-ui/.editorconfig diff --git a/section_10/bank-app-ui/.gitignore b/section_12/bank-app-ui/.gitignore similarity index 100% rename from section_10/bank-app-ui/.gitignore rename to section_12/bank-app-ui/.gitignore diff --git a/section_12/bank-app-ui/.vscode/launch.json b/section_12/bank-app-ui/.vscode/launch.json new file mode 100644 index 00000000..2ba986f6 --- /dev/null +++ b/section_12/bank-app-ui/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome against localhost", + "url": "http://localhost:8080", + "webRoot": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/section6/00_UI_Initial Code/bank-app-ui/README.md b/section_12/bank-app-ui/README.md similarity index 96% rename from section6/00_UI_Initial Code/bank-app-ui/README.md rename to section_12/bank-app-ui/README.md index cf38c4ab..1b6d3f87 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/README.md +++ b/section_12/bank-app-ui/README.md @@ -1,6 +1,6 @@ # BankAppUi -This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.1.2. +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.2.3. ## Development server diff --git a/section9/bank-app-ui/angular.json b/section_12/bank-app-ui/angular.json similarity index 88% rename from section9/bank-app-ui/angular.json rename to section_12/bank-app-ui/angular.json index 98fbf15f..e4993108 100644 --- a/section9/bank-app-ui/angular.json +++ b/section_12/bank-app-ui/angular.json @@ -16,7 +16,9 @@ "outputPath": "dist/bank-app-ui", "index": "src/index.html", "main": "src/main.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js" + ], "tsConfig": "tsconfig.app.json", "assets": [ "src/favicon.ico", @@ -42,12 +44,6 @@ "maximumError": "4kb" } ], - "fileReplacements": [ - { - "replace": "src/environments/environment.ts", - "with": "src/environments/environment.prod.ts" - } - ], "outputHashing": "all" }, "development": { @@ -56,7 +52,13 @@ "vendorChunk": true, "extractLicenses": false, "sourceMap": true, - "namedChunks": true + "namedChunks": true, + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.development.ts" + } + ] } }, "defaultConfiguration": "production" @@ -82,16 +84,16 @@ "test": { "builder": "@angular-devkit/build-angular:karma", "options": { - "main": "src/test.ts", - "polyfills": "src/polyfills.ts", + "polyfills": [ + "zone.js", + "zone.js/testing" + ], "tsConfig": "tsconfig.spec.json", - "karmaConfig": "karma.conf.js", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ - "node_modules/bootstrap/dist/css/bootstrap.min.css", "src/styles.css" ], "scripts": [] diff --git a/section_12/bank-app-ui/package-lock.json b/section_12/bank-app-ui/package-lock.json new file mode 100644 index 00000000..dae7e8aa --- /dev/null +++ b/section_12/bank-app-ui/package-lock.json @@ -0,0 +1,13038 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "bank-app-ui", + "version": "0.0.0", + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.14.tgz", + "integrity": "sha512-eSdONEV5dbtLNiOMBy9Ue9DdJ1ct6dH9RdZfYiedq6VZn0lejePAjY36MYVXgq2jTE+v/uIiaNy7caea5pt55A==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.14.tgz", + "integrity": "sha512-bXQ6i7QPhwmYHuh+DSNkBhjTIHQF0C6fqZEg2ApJA3NmnzE98oQnmJ9AnGnAkdf1Mjn3xi2gxoZWPDDxGEINMw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "2.2.1", + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/build-webpack": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@babel/core": "7.22.9", + "@babel/generator": "7.22.9", + "@babel/helper-annotate-as-pure": "7.22.5", + "@babel/helper-split-export-declaration": "7.22.6", + "@babel/plugin-proposal-async-generator-functions": "7.20.7", + "@babel/plugin-transform-async-to-generator": "7.22.5", + "@babel/plugin-transform-runtime": "7.22.9", + "@babel/preset-env": "7.22.9", + "@babel/runtime": "7.22.6", + "@babel/template": "7.22.5", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "16.2.14", + "@vitejs/plugin-basic-ssl": "1.0.1", + "ansi-colors": "4.1.3", + "autoprefixer": "10.4.14", + "babel-loader": "9.1.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.21.5", + "chokidar": "3.5.3", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.20", + "css-loader": "6.8.1", + "esbuild-wasm": "0.18.17", + "fast-glob": "3.3.1", + "guess-parser": "0.4.22", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.3", + "less-loader": "11.1.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "magic-string": "0.30.1", + "mini-css-extract-plugin": "2.7.6", + "mrmime": "1.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "7.0.0", + "picomatch": "2.3.1", + "piscina": "4.0.0", + "postcss": "8.4.31", + "postcss-loader": "7.3.3", + "resolve-url-loader": "5.0.0", + "rxjs": "7.8.1", + "sass": "1.64.1", + "sass-loader": "13.3.2", + "semver": "7.5.4", + "source-map-loader": "4.0.1", + "source-map-support": "0.5.21", + "terser": "5.19.2", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.6.1", + "vite": "4.5.3", + "webpack": "5.88.2", + "webpack-dev-middleware": "6.1.2", + "webpack-dev-server": "4.15.1", + "webpack-merge": "5.9.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.18.17" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "@angular/localize": "^16.0.0", + "@angular/platform-server": "^16.0.0", + "@angular/service-worker": "^16.0.0", + "jest": "^29.5.0", + "jest-environment-jsdom": "^29.5.0", + "karma": "^6.3.0", + "ng-packagr": "^16.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.9.3 <5.2" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/platform-server": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "jest": { + "optional": true + }, + "jest-environment-jsdom": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "dev": true + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1602.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.14.tgz", + "integrity": "sha512-f+ZTCjOoA1SCQEaX3L/63ubqr/vlHkwDXAtKjBsQgyz6srnETcjy96Us5k/LoK7/hPc85zFneqLinfqOMVWHJQ==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/core": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.14.tgz", + "integrity": "sha512-Ui14/d2+p7lnmXlK/AX2ieQEGInBV75lonNtPQgwrYgskF8ufCuN0DyVZQUy9fJDkC+xQxbJyYrby/BS0R0e7w==", + "dev": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-16.2.14.tgz", + "integrity": "sha512-B6LQKInCT8w5zx5Pbroext5eFFRTCJdTwHN8GhcVS8IeKCnkeqVTQLjB4lBUg7LEm8Y7UHXwzrVxmk+f+MBXhw==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "jsonc-parser": "3.2.0", + "magic-string": "0.30.1", + "ora": "5.4.1", + "rxjs": "7.8.1" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/animations": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-16.2.12.tgz", + "integrity": "sha512-MD0ElviEfAJY8qMOd6/jjSSvtqER2RDAi0lxe6EtUacC1DHCYkaPrKW4vLqY+tmZBg1yf+6n+uS77pXcHHcA3w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + } + }, + "node_modules/@angular/cli": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-16.2.14.tgz", + "integrity": "sha512-0y71jtitigVolm4Rim1b8xPQ+B22cGp4Spef2Wunpqj67UowN6tsZaVuWBEQh4u5xauX8LAHKqsvy37ZPWCc4A==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1602.14", + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "@schematics/angular": "16.2.14", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "ini": "4.1.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.2.0", + "npm-package-arg": "10.1.0", + "npm-pick-manifest": "8.0.1", + "open": "8.4.2", + "ora": "5.4.1", + "pacote": "15.2.0", + "resolve": "1.22.2", + "semver": "7.5.4", + "symbol-observable": "4.0.0", + "yargs": "17.7.2" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/common": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-16.2.12.tgz", + "integrity": "sha512-B+WY/cT2VgEaz9HfJitBmgdk4I333XG/ybC98CMC4Wz8E49T8yzivmmxXB3OD6qvjcOB6ftuicl6WBqLbZNg2w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.12.tgz", + "integrity": "sha512-6SMXUgSVekGM7R6l1Z9rCtUGtlg58GFmgbpMCsGf+VXxP468Njw8rjT2YZkf5aEPxEuRpSHhDYjqz7n14cwCXQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true + } + } + }, + "node_modules/@angular/compiler-cli": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.12.tgz", + "integrity": "sha512-pWSrr152562ujh6lsFZR8NfNc5Ljj+zSTQO44DsuB0tZjwEpnRcjJEgzuhGXr+CoiBf+jTSPZKemtSktDk5aaA==", + "dev": true, + "dependencies": { + "@babel/core": "7.23.2", + "@jridgewell/sourcemap-codec": "^1.4.14", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/index.js" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/compiler": "16.2.12", + "typescript": ">=4.9.3 <5.2" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/compiler-cli/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@angular/core": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.12.tgz", + "integrity": "sha512-GLLlDeke/NjroaLYOks0uyzFVo6HyLl7VOm0K1QpLXnYvW63W9Ql/T3yguRZa7tRkOAeFZ3jw+1wnBD4O8MoUA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.13.0" + } + }, + "node_modules/@angular/forms": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-16.2.12.tgz", + "integrity": "sha512-1Eao89hlBgLR3v8tU91vccn21BBKL06WWxl7zLpQmG6Hun+2jrThgOE4Pf3os4fkkbH4Apj0tWL2fNIWe/blbw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-16.2.12.tgz", + "integrity": "sha512-NnH7ju1iirmVEsUq432DTm0nZBGQsBrU40M3ZeVHMQ2subnGiyUs3QyzDz8+VWLL/T5xTxWLt9BkDn65vgzlIQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/animations": "16.2.12", + "@angular/common": "16.2.12", + "@angular/core": "16.2.12" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@angular/platform-browser-dynamic": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-16.2.12.tgz", + "integrity": "sha512-ya54jerNgreCVAR278wZavwjrUWImMr2F8yM5n9HBvsMBbFaAQ83anwbOEiHEF2BlR+gJiEBLfpuPRMw20pHqw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/compiler": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12" + } + }, + "node_modules/@angular/router": { + "version": "16.2.12", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-16.2.12.tgz", + "integrity": "sha512-aU6QnYSza005V9P3W6PpkieL56O0IHps96DjqI1RS8yOJUl3THmokqYN4Fm5+HXy4f390FN9i6ftadYQDKeWmA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0" + }, + "peerDependencies": { + "@angular/common": "16.2.12", + "@angular/core": "16.2.12", + "@angular/platform-browser": "16.2.12", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true + }, + "node_modules/@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", + "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", + "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz", + "integrity": "sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz", + "integrity": "sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", + "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz", + "integrity": "sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz", + "integrity": "sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz", + "integrity": "sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz", + "integrity": "sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz", + "integrity": "sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz", + "integrity": "sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz", + "integrity": "sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz", + "integrity": "sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.4", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz", + "integrity": "sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz", + "integrity": "sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/template": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz", + "integrity": "sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz", + "integrity": "sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz", + "integrity": "sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz", + "integrity": "sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz", + "integrity": "sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz", + "integrity": "sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz", + "integrity": "sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz", + "integrity": "sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz", + "integrity": "sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz", + "integrity": "sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz", + "integrity": "sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz", + "integrity": "sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz", + "integrity": "sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", + "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz", + "integrity": "sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz", + "integrity": "sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz", + "integrity": "sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz", + "integrity": "sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz", + "integrity": "sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz", + "integrity": "sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz", + "integrity": "sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz", + "integrity": "sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz", + "integrity": "sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", + "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz", + "integrity": "sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz", + "integrity": "sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz", + "integrity": "sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz", + "integrity": "sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz", + "integrity": "sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.9.tgz", + "integrity": "sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz", + "integrity": "sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz", + "integrity": "sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz", + "integrity": "sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz", + "integrity": "sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz", + "integrity": "sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz", + "integrity": "sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz", + "integrity": "sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz", + "integrity": "sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz", + "integrity": "sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", + "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.6", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.5", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", + "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", + "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz", + "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz", + "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz", + "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz", + "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz", + "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz", + "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz", + "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz", + "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz", + "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz", + "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz", + "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz", + "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz", + "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz", + "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz", + "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz", + "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz", + "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz", + "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz", + "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz", + "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz", + "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@fortawesome/angular-fontawesome": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-0.13.0.tgz", + "integrity": "sha512-gzSPRdveOXNO7NIiMgTyB46aiHG0i98KinnAEqHXi8qzraM/kCcHn/0y3f4MhemX6kftwsFli0IU8RyHmtXlSQ==", + "dependencies": { + "tslib": "^2.4.1" + }, + "peerDependencies": { + "@angular/core": "^16.0.0", + "@fortawesome/fontawesome-svg-core": "~1.2.27 || ~1.3.0-beta2 || ^6.1.0" + } + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.2.tgz", + "integrity": "sha512-gBxPg3aVO6J0kpfHNILc+NMhXnqHumFxOmjYCFfOiLZfwhnnfhtsdA2hfJlDnj+8PjAs6kKQPenOTKj3Rf7zHw==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.5.2.tgz", + "integrity": "sha512-hRILoInAx8GNT5IMkrtIt9blOdrqHOnPBH+k70aWUAqPZPgopb9G5EQJFpaBx/S8zp2fC+mPW349Bziuk1o28Q==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.2.tgz", + "integrity": "sha512-5CdaCBGl8Rh9ohNdxeeTMxIj8oc3KNBgIeLMvJosBMdslK/UnEB8rzyDRrbKdL1kDweqBPo4GT9wvnakHWucZw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.2.tgz", + "integrity": "sha512-QWFZYXFE7O1Gr1dTIp+D6UcFUF0qElOnZptpi7PBUMylJh+vFmIedVe1Ir6RM1t2tEQLLSV1k7bR4o92M+uqlw==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "dev": true + }, + "node_modules/@ngtools/webpack": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.14.tgz", + "integrity": "sha512-3+zPP3Wir46qrZ3FEiTz5/emSoVHYUCH+WgBmJ57mZCx1qBOYh2VgllnPr/Yusl1sc/jUZjdwq/es/9ZNw+zDQ==", + "dev": true, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^16.0.0", + "typescript": ">=4.9.3 <5.2", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dev": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", + "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "dev": true, + "dependencies": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz", + "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==", + "dev": true, + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "bin/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dev": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/move-file/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz", + "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", + "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "dev": true, + "dependencies": { + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/promise-spawn/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", + "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "dev": true, + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@schematics/angular": { + "version": "16.2.14", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-16.2.14.tgz", + "integrity": "sha512-YqIv727l9Qze8/OL6H9mBHc2jVXzAGRNBYnxYWqWhLbfvuVbbldo6NNIIjgv6lrl2LJSdPAAMNOD5m/f6210ug==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "16.2.14", + "@angular-devkit/schematics": "16.2.14", + "jsonc-parser": "3.2.0" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@sigstore/bundle": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz", + "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz", + "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "make-fetch-happen": "^11.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@sigstore/sign/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sigstore/sign/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/@sigstore/sign/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/@sigstore/tuf": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz", + "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.0", + "tuf-js": "^1.1.7" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "dev": true + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@tufjs/canonical-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", + "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", + "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "dev": true, + "dependencies": { + "@tufjs/canonical-json": "1.0.0", + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "dev": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.6.tgz", + "integrity": "sha512-3N0FpQTeiWjm+Oo1WUYWguUS7E6JLceiGTriFrG8k5PU7zRLJCzLcWURU3wjMbZGS//a2/LgjsnO3QxIlwxt9g==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.12.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz", + "integrity": "sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "dev": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dev": true, + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ws": { + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vitejs/plugin-basic-ssl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.0.1.tgz", + "integrity": "sha512-pcub+YbFtFhaGRTo1832FQHQSHvMrlb43974e2eS8EKleR3p1cDdkJFPci1UhwkEf1J9Bz+wKBSzqpKp7nNj2A==", + "dev": true, + "engines": { + "node": ">=14.6.0" + }, + "peerDependencies": { + "vite": "^3.0.0 || ^4.0.0" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@wessberg/ts-evaluator": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/@wessberg/ts-evaluator/-/ts-evaluator-0.0.27.tgz", + "integrity": "sha512-7gOpVm3yYojUp/Yn7F4ZybJRxyqfMNf0LXK5KJiawbPfL0XTsJV+0mgrEDjOIR6Bi0OYk2Cyg4tjFu1r8MCZaA==", + "deprecated": "this package has been renamed to ts-evaluator. Please install ts-evaluator instead", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "jsdom": "^16.4.0", + "object-path": "^0.11.5", + "tslib": "^2.0.3" + }, + "engines": { + "node": ">=10.1.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/wessberg/ts-evaluator?sponsor=1" + }, + "peerDependencies": { + "typescript": ">=3.2.x || >= 4.x" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@wessberg/ts-evaluator/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wessberg/ts-evaluator/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", + "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", + "dev": true, + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-loader": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", + "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", + "dev": true, + "dependencies": { + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.7", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.7.tgz", + "integrity": "sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.4", + "core-js-compat": "^3.33.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.4.tgz", + "integrity": "sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz", + "integrity": "sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator/node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz", + "integrity": "sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/bonjour-service": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "17.1.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", + "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^7.7.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/core-js-compat": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", + "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/cosmiconfig/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/cosmiconfig/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/critters": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.20.tgz", + "integrity": "sha512-CImNRorKOl5d8TWcnAz5n5izQ6HFsvz29k327/ELy6UFcmbiZNOsinaKvzv16WZR0P6etfSWYzE47C4/56B3Uw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^5.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.2", + "htmlparser2": "^8.0.2", + "postcss": "^8.4.23", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/critters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/critters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/critters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/critters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/critters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-loader": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.8.1.tgz", + "integrity": "sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==", + "dev": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.21", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.3", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", + "dev": true + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "node_modules/di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "dev": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", + "dev": true, + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.749", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.749.tgz", + "integrity": "sha512-LRMMrM9ITOvue0PoBrvNIraVmuDbJV5QC9ierz/z5VilMdPOVMjOtpICNld3PuXuTZ3CHH/UPxX9gHhAPwi+0Q==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/engine.io": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.4.tgz", + "integrity": "sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz", + "integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/enhanced-resolve": { + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", + "dev": true + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz", + "integrity": "sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==", + "dev": true + }, + "node_modules/esbuild": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz", + "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.17", + "@esbuild/android-arm64": "0.18.17", + "@esbuild/android-x64": "0.18.17", + "@esbuild/darwin-arm64": "0.18.17", + "@esbuild/darwin-x64": "0.18.17", + "@esbuild/freebsd-arm64": "0.18.17", + "@esbuild/freebsd-x64": "0.18.17", + "@esbuild/linux-arm": "0.18.17", + "@esbuild/linux-arm64": "0.18.17", + "@esbuild/linux-ia32": "0.18.17", + "@esbuild/linux-loong64": "0.18.17", + "@esbuild/linux-mips64el": "0.18.17", + "@esbuild/linux-ppc64": "0.18.17", + "@esbuild/linux-riscv64": "0.18.17", + "@esbuild/linux-s390x": "0.18.17", + "@esbuild/linux-x64": "0.18.17", + "@esbuild/netbsd-x64": "0.18.17", + "@esbuild/openbsd-x64": "0.18.17", + "@esbuild/sunos-x64": "0.18.17", + "@esbuild/win32-arm64": "0.18.17", + "@esbuild/win32-ia32": "0.18.17", + "@esbuild/win32-x64": "0.18.17" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.18.17.tgz", + "integrity": "sha512-9OHGcuRzy+I8ziF9FzjfKLWAPbvi0e/metACVg9k6bK+SI4FFxeV6PcZsz8RIVaMD4YNehw+qj6UMR3+qj/EuQ==", + "dev": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "dev": true + }, + "node_modules/express": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-cache-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", + "dev": true, + "dependencies": { + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", + "integrity": "sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/guess-parser": { + "version": "0.4.22", + "resolved": "https://registry.npmjs.org/guess-parser/-/guess-parser-0.4.22.tgz", + "integrity": "sha512-KcUWZ5ACGaBM69SbqwVIuWGoSAgD+9iJnchR9j/IarVI1jHVeXv+bUXBIMeqVMSKt3zrn0Dgf9UpcOEpPBLbSg==", + "dev": true, + "dependencies": { + "@wessberg/ts-evaluator": "0.0.27" + }, + "peerDependencies": { + "typescript": ">=3.7.5" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", + "dev": true, + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "dev": true + }, + "node_modules/hosted-git-info": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", + "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "dev": true, + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-entities": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.4.tgz", + "integrity": "sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==", + "dev": true, + "dependencies": { + "minimatch": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ignore-walk/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true, + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jasmine-core": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.6.0.tgz", + "integrity": "sha512-O236+gd0ZXS8YAjFx8xKaJ94/erqUliEkJTDedyE7iHvv4ZVqi+q+8acJxu05/WJDKm512EUNn809In37nWlAQ==", + "dev": true + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/karma": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.3.tgz", + "integrity": "sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==", + "dev": true, + "dependencies": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.7.2", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/karma-chrome-launcher": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.2.0.tgz", + "integrity": "sha512-rE9RkUPI7I9mAxByQWkGJFXfFD6lE4gC5nPuZdobf/QdTEJI6EU4yIay/cfU/xV4ZxlM5JiTv7zWYgA64NpS5Q==", + "dev": true, + "dependencies": { + "which": "^1.2.1" + } + }, + "node_modules/karma-coverage": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.1.tgz", + "integrity": "sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-jasmine": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", + "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", + "dev": true, + "dependencies": { + "jasmine-core": "^4.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "karma": "^6.0.0" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.1.0.tgz", + "integrity": "sha512-sPQE1+nlsn6Hwb5t+HHwyy0A1FNCVKuL1192b+XNauMYWThz2kweiBVW1DqloRpVvZIJkIoHVB7XRpK78n1xbQ==", + "dev": true, + "peerDependencies": { + "jasmine-core": "^4.0.0 || ^5.0.0", + "karma": "^6.0.0", + "karma-jasmine": "^5.0.0" + } + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/karma/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma/node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "dev": true, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/karma/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/less": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "dev": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.1.0.tgz", + "integrity": "sha512-C+uDBV7kS7W5fJlUjq5mPBeBVhYpTIm5gB09APT9o3n/ILeaXVsiSFTbZpTJCJwQ/Crczfn3DmfQFwxYusWFug==", + "dev": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "dev": true, + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "dev": true, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log4js": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", + "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dev": true, + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/make-fetch-happen/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/cacache": { + "version": "16.1.3", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", + "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/make-fetch-happen/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/make-fetch-happen/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-fetch-happen/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/make-fetch-happen/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dev": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-filename": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", + "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", + "dev": true, + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/unique-slug": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", + "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dev": true, + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", + "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", + "dev": true, + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dev": true, + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-fetch/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-fetch/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dev": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true, + "optional": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", + "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", + "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", + "dev": true, + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", + "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-bundled": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "dev": true, + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", + "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-packlist": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", + "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", + "dev": true, + "dependencies": { + "ignore-walk": "^6.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-pick-manifest": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", + "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", + "dev": true, + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch": { + "version": "14.0.5", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", + "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "dev": true, + "dependencies": { + "make-fetch-happen": "^11.0.0", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/npm-registry-fetch/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm-registry-fetch/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nwsapi": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", + "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-path": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz", + "integrity": "sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==", + "dev": true, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pacote": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", + "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "dev": true, + "dependencies": { + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^5.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "sigstore": "^1.3.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parse5-html-rewriting-stream": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.0.0.tgz", + "integrity": "sha512-mazCyGWkmCRWDI15Zp+UiCqMp/0dgEmkZRvhlsqqKYr4SsVm/TvnSpD9fCvqCA2zoWJcfRym846ejWBBHRiYEg==", + "dev": true, + "dependencies": { + "entities": "^4.3.0", + "parse5": "^7.0.0", + "parse5-sax-parser": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-7.0.0.tgz", + "integrity": "sha512-5A+v2SNsq8T6/mG3ahcz8ZtQ0OUFTatxPbeidoMB7tkJSGDY3tdfl4MHovtLQHkEn5CGxijNWRQHhRQ6IRpXKg==", + "dev": true, + "dependencies": { + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.1.tgz", + "integrity": "sha512-tS24spDe/zXhWbNPErCHs/AGOzbKGHT+ybSBqmdLm8WZ1xXLWvH8Qn71QPAlqVhd0qUTWjy+Kl9JmISgDdEjsA==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/piscina": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.0.0.tgz", + "integrity": "sha512-641nAmJS4k4iqpNUqfggqUBUMmlw0ZoM5VZKdQkV2e970Inn3Tk9kroCc1wpsYLD07vCwpys5iY0d3xI/9WkTg==", + "dev": true, + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/pkg-dir": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", + "dev": true, + "dependencies": { + "find-up": "^6.3.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "dev": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-loader": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.3.tgz", + "integrity": "sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==", + "dev": true, + "dependencies": { + "cosmiconfig": "^8.2.0", + "jiti": "^1.18.2", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "dev": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-package-json": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", + "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "dev": true, + "dependencies": { + "glob": "^10.2.2", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", + "dev": true, + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/read-package-json/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.1.tgz", + "integrity": "sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/read-package-json/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/read-package-json/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==", + "dev": true + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.0.tgz", + "integrity": "sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==", + "dev": true + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "dev": true, + "dependencies": { + "is-core-module": "^2.11.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/sass": { + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", + "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.2.tgz", + "integrity": "sha512-CQbKl57kdEv+KDLquhC+gE3pXt74LEAzm+tzywcA0/aHZuub8wTErbjAoNI57rPUWRYRNC5WUnNl8eGJNbDdwg==", + "dev": true, + "dependencies": { + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", + "dev": true, + "optional": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "dev": true, + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sigstore": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.9.0.tgz", + "integrity": "sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==", + "dev": true, + "dependencies": { + "@sigstore/bundle": "^1.1.0", + "@sigstore/protobuf-specs": "^0.2.0", + "@sigstore/sign": "^1.0.0", + "@sigstore/tuf": "^1.0.3", + "make-fetch-happen": "^11.0.1" + }, + "bin": { + "sigstore": "bin/sigstore.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sigstore/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sigstore/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/sigstore/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/sigstore/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socket.io": { + "version": "4.7.5", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz", + "integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.4.tgz", + "integrity": "sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg==", + "dev": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.11.0" + } + }, + "node_modules/socket.io-adapter/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dev": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dev": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.1.tgz", + "integrity": "sha512-oqXpzDIByKONVY8g1NUPOTQhe0UTU5bWUl32GSkqK2LjJj0HmwTMVKxcUip0RgAYhY1mqgOxjbQM48a0mmeNfA==", + "dev": true, + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", + "dev": true + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/ssri": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ssri/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/streamroller": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", + "dev": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/terser": { + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.30.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", + "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/tuf-js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", + "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "dev": true, + "dependencies": { + "@tufjs/models": "1.0.4", + "debug": "^4.3.4", + "make-fetch-happen": "^11.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/tuf-js/node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tuf-js/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/tuf-js/node_modules/make-fetch-happen": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", + "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^5.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/tuf-js/node_modules/minipass-fetch/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", + "dev": true + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-cookie": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typescript-cookie/-/typescript-cookie-1.0.6.tgz", + "integrity": "sha512-s+BZr7/9BUG6Kg7jGGcOY/4XJcP+iZRFdF3q4FPTfRSP83ivLWF94OcH8PrzGmnS8Ab9qP7ENu/ikLwNFsIafA==", + "engines": { + "node": ">=14" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.37", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.37.tgz", + "integrity": "sha512-xV8kqRKM+jhMvcHWUKthV9fNebIzrNy//2O9ZwWcfiBFR5f25XVZPLlEajk/sf3Ra15V92isyQqnIEXRDaZWEA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dev": true, + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "dev": true, + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz", + "integrity": "sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==", + "dev": true, + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/watchpack": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-6.1.2.tgz", + "integrity": "sha512-Wu+EHmX326YPYUpQLKmKbTyZZJIB8/n6R09pTmB03kJmnMsVPTo9COzHZFr01txwaCAuZvfBJE4ZCHRcKs5JaQ==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.12", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server": { + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", + "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", + "dev": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.5", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/webpack-dev-middleware": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/webpack-merge": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", + "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "dev": true, + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zone.js": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.3.tgz", + "integrity": "sha512-MKPbmZie6fASC/ps4dkmIhaT5eonHkEt6eAy80K42tAm0G2W+AahLJjbfi6X9NPdciOE9GRFTTM8u2IiF6O3ww==", + "dependencies": { + "tslib": "^2.3.0" + } + } + } +} diff --git a/section_12/bank-app-ui/package.json b/section_12/bank-app-ui/package.json new file mode 100644 index 00000000..841628da --- /dev/null +++ b/section_12/bank-app-ui/package.json @@ -0,0 +1,44 @@ +{ + "name": "bank-app-ui", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build", + "watch": "ng build --watch --configuration development", + "test": "ng test" + }, + "private": true, + "dependencies": { + "@angular/animations": "^16.2.0", + "@angular/common": "^16.2.0", + "@angular/compiler": "^16.2.0", + "@angular/core": "^16.2.0", + "@angular/forms": "^16.2.0", + "@angular/platform-browser": "^16.2.0", + "@angular/platform-browser-dynamic": "^16.2.0", + "@angular/router": "^16.2.0", + "@fortawesome/fontawesome-free": "^6.5.2", + "@fortawesome/angular-fontawesome": "^0.13.0", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "bootstrap": "^5.3.0", + "rxjs": "~7.8.0", + "tslib": "^2.3.0", + "typescript-cookie": "^1.0.6", + "zone.js": "~0.13.0" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^16.2.3", + "@angular/cli": "~16.2.3", + "@angular/compiler-cli": "^16.2.0", + "@types/jasmine": "~4.3.0", + "jasmine-core": "~4.6.0", + "karma": "~6.4.0", + "karma-chrome-launcher": "~3.2.0", + "karma-coverage": "~2.2.0", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "~2.1.0", + "typescript": "~5.1.3" + } +} diff --git a/section_10/bank-app-ui/src/app/app-routing.module.ts b/section_12/bank-app-ui/src/app/app-routing.module.ts similarity index 100% rename from section_10/bank-app-ui/src/app/app-routing.module.ts rename to section_12/bank-app-ui/src/app/app-routing.module.ts diff --git a/section_10/bank-app-ui/src/app/app.component.css b/section_12/bank-app-ui/src/app/app.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/app.component.css rename to section_12/bank-app-ui/src/app/app.component.css diff --git a/section_10/bank-app-ui/src/app/app.component.html b/section_12/bank-app-ui/src/app/app.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/app.component.html rename to section_12/bank-app-ui/src/app/app.component.html diff --git a/section_10/bank-app-ui/src/app/app.component.ts b/section_12/bank-app-ui/src/app/app.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/app.component.ts rename to section_12/bank-app-ui/src/app/app.component.ts diff --git a/section_10/bank-app-ui/src/app/app.module.ts b/section_12/bank-app-ui/src/app/app.module.ts similarity index 100% rename from section_10/bank-app-ui/src/app/app.module.ts rename to section_12/bank-app-ui/src/app/app.module.ts diff --git a/section_10/bank-app-ui/src/app/components/account/account.component.css b/section_12/bank-app-ui/src/app/components/account/account.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/account/account.component.css rename to section_12/bank-app-ui/src/app/components/account/account.component.css diff --git a/section_10/bank-app-ui/src/app/components/account/account.component.html b/section_12/bank-app-ui/src/app/components/account/account.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/account/account.component.html rename to section_12/bank-app-ui/src/app/components/account/account.component.html diff --git a/section_10/bank-app-ui/src/app/components/account/account.component.ts b/section_12/bank-app-ui/src/app/components/account/account.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/account/account.component.ts rename to section_12/bank-app-ui/src/app/components/account/account.component.ts diff --git a/section_10/bank-app-ui/src/app/components/balance/balance.component.css b/section_12/bank-app-ui/src/app/components/balance/balance.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/balance/balance.component.css rename to section_12/bank-app-ui/src/app/components/balance/balance.component.css diff --git a/section_10/bank-app-ui/src/app/components/balance/balance.component.html b/section_12/bank-app-ui/src/app/components/balance/balance.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/balance/balance.component.html rename to section_12/bank-app-ui/src/app/components/balance/balance.component.html diff --git a/section_10/bank-app-ui/src/app/components/balance/balance.component.ts b/section_12/bank-app-ui/src/app/components/balance/balance.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/balance/balance.component.ts rename to section_12/bank-app-ui/src/app/components/balance/balance.component.ts diff --git a/section_10/bank-app-ui/src/app/components/cards/cards.component.css b/section_12/bank-app-ui/src/app/components/cards/cards.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/cards/cards.component.css rename to section_12/bank-app-ui/src/app/components/cards/cards.component.css diff --git a/section_10/bank-app-ui/src/app/components/cards/cards.component.html b/section_12/bank-app-ui/src/app/components/cards/cards.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/cards/cards.component.html rename to section_12/bank-app-ui/src/app/components/cards/cards.component.html diff --git a/section_10/bank-app-ui/src/app/components/cards/cards.component.ts b/section_12/bank-app-ui/src/app/components/cards/cards.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/cards/cards.component.ts rename to section_12/bank-app-ui/src/app/components/cards/cards.component.ts diff --git a/section_10/bank-app-ui/src/app/components/contact/contact.component.css b/section_12/bank-app-ui/src/app/components/contact/contact.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/contact/contact.component.css rename to section_12/bank-app-ui/src/app/components/contact/contact.component.css diff --git a/section_10/bank-app-ui/src/app/components/contact/contact.component.html b/section_12/bank-app-ui/src/app/components/contact/contact.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/contact/contact.component.html rename to section_12/bank-app-ui/src/app/components/contact/contact.component.html diff --git a/section_10/bank-app-ui/src/app/components/contact/contact.component.ts b/section_12/bank-app-ui/src/app/components/contact/contact.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/contact/contact.component.ts rename to section_12/bank-app-ui/src/app/components/contact/contact.component.ts diff --git a/section_10/bank-app-ui/src/app/components/dashboard/dashboard.component.css b/section_12/bank-app-ui/src/app/components/dashboard/dashboard.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/dashboard/dashboard.component.css rename to section_12/bank-app-ui/src/app/components/dashboard/dashboard.component.css diff --git a/section_10/bank-app-ui/src/app/components/dashboard/dashboard.component.html b/section_12/bank-app-ui/src/app/components/dashboard/dashboard.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/dashboard/dashboard.component.html rename to section_12/bank-app-ui/src/app/components/dashboard/dashboard.component.html diff --git a/section_10/bank-app-ui/src/app/components/dashboard/dashboard.component.ts b/section_12/bank-app-ui/src/app/components/dashboard/dashboard.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/dashboard/dashboard.component.ts rename to section_12/bank-app-ui/src/app/components/dashboard/dashboard.component.ts diff --git a/section_10/bank-app-ui/src/app/components/header/header.component.css b/section_12/bank-app-ui/src/app/components/header/header.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/header/header.component.css rename to section_12/bank-app-ui/src/app/components/header/header.component.css diff --git a/section_10/bank-app-ui/src/app/components/header/header.component.html b/section_12/bank-app-ui/src/app/components/header/header.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/header/header.component.html rename to section_12/bank-app-ui/src/app/components/header/header.component.html diff --git a/section_10/bank-app-ui/src/app/components/header/header.component.ts b/section_12/bank-app-ui/src/app/components/header/header.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/header/header.component.ts rename to section_12/bank-app-ui/src/app/components/header/header.component.ts diff --git a/section_10/bank-app-ui/src/app/components/home/home.component.css b/section_12/bank-app-ui/src/app/components/home/home.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/home/home.component.css rename to section_12/bank-app-ui/src/app/components/home/home.component.css diff --git a/section_10/bank-app-ui/src/app/components/home/home.component.html b/section_12/bank-app-ui/src/app/components/home/home.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/home/home.component.html rename to section_12/bank-app-ui/src/app/components/home/home.component.html diff --git a/section_10/bank-app-ui/src/app/components/home/home.component.ts b/section_12/bank-app-ui/src/app/components/home/home.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/home/home.component.ts rename to section_12/bank-app-ui/src/app/components/home/home.component.ts diff --git a/section_10/bank-app-ui/src/app/components/loans/loans.component.css b/section_12/bank-app-ui/src/app/components/loans/loans.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/loans/loans.component.css rename to section_12/bank-app-ui/src/app/components/loans/loans.component.css diff --git a/section_10/bank-app-ui/src/app/components/loans/loans.component.html b/section_12/bank-app-ui/src/app/components/loans/loans.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/loans/loans.component.html rename to section_12/bank-app-ui/src/app/components/loans/loans.component.html diff --git a/section_10/bank-app-ui/src/app/components/loans/loans.component.ts b/section_12/bank-app-ui/src/app/components/loans/loans.component.ts similarity index 100% rename from section_10/bank-app-ui/src/app/components/loans/loans.component.ts rename to section_12/bank-app-ui/src/app/components/loans/loans.component.ts diff --git a/section_10/bank-app-ui/src/app/components/login/login.component.css b/section_12/bank-app-ui/src/app/components/login/login.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/login/login.component.css rename to section_12/bank-app-ui/src/app/components/login/login.component.css diff --git a/section_10/bank-app-ui/src/app/components/login/login.component.html b/section_12/bank-app-ui/src/app/components/login/login.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/login/login.component.html rename to section_12/bank-app-ui/src/app/components/login/login.component.html diff --git a/section_13/bank-app-ui/src/app/components/login/login.component.ts b/section_12/bank-app-ui/src/app/components/login/login.component.ts similarity index 87% rename from section_13/bank-app-ui/src/app/components/login/login.component.ts rename to section_12/bank-app-ui/src/app/components/login/login.component.ts index bdf85f5f..68a4f45a 100644 --- a/section_13/bank-app-ui/src/app/components/login/login.component.ts +++ b/section_12/bank-app-ui/src/app/components/login/login.component.ts @@ -26,11 +26,12 @@ export class LoginComponent implements OnInit { validateUser(loginForm: NgForm) { this.loginService.validateLoginDetails(this.model).subscribe( responseData => { - window.sessionStorage.setItem("Authorization",responseData.headers.get('Authorization')!); + window.sessionStorage.setItem("Authorization", + responseData.headers.get('Authorization')!); this.model = responseData.body; this.model.authStatus = 'AUTH'; window.sessionStorage.setItem("userdetails",JSON.stringify(this.model)); - let xsrf = getCookie('XSRF-TOKEN')!; + let xsrf = getCookie("XSRF-TOKEN")!; window.sessionStorage.setItem("XSRF-TOKEN",xsrf); this.router.navigate(['dashboard']); }); diff --git a/section_10/bank-app-ui/src/app/components/logout/logout.component.css b/section_12/bank-app-ui/src/app/components/logout/logout.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/logout/logout.component.css rename to section_12/bank-app-ui/src/app/components/logout/logout.component.css diff --git a/section_10/bank-app-ui/src/app/components/logout/logout.component.html b/section_12/bank-app-ui/src/app/components/logout/logout.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/logout/logout.component.html rename to section_12/bank-app-ui/src/app/components/logout/logout.component.html diff --git a/section_10/bank-app-ui/src/app/components/logout/logout.component.ts b/section_12/bank-app-ui/src/app/components/logout/logout.component.ts similarity index 80% rename from section_10/bank-app-ui/src/app/components/logout/logout.component.ts rename to section_12/bank-app-ui/src/app/components/logout/logout.component.ts index f43d2c0d..4dc17fa1 100644 --- a/section_10/bank-app-ui/src/app/components/logout/logout.component.ts +++ b/section_12/bank-app-ui/src/app/components/logout/logout.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { LoginService } from 'src/app/services/login/login.service'; import { Router } from '@angular/router'; import { User } from 'src/app/model/user.model'; @@ -17,7 +16,8 @@ export class LogoutComponent implements OnInit { ngOnInit(): void { window.sessionStorage.setItem("userdetails",""); - window.sessionStorage.setItem("XSRF-TOKEN",""); + window.sessionStorage.setItem("Authorization",""); + // window.sessionStorage.setItem("XSRF-TOKEN",""); this.router.navigate(['/login']); } diff --git a/section_10/bank-app-ui/src/app/components/notices/notices.component.css b/section_12/bank-app-ui/src/app/components/notices/notices.component.css similarity index 100% rename from section_10/bank-app-ui/src/app/components/notices/notices.component.css rename to section_12/bank-app-ui/src/app/components/notices/notices.component.css diff --git a/section_10/bank-app-ui/src/app/components/notices/notices.component.html b/section_12/bank-app-ui/src/app/components/notices/notices.component.html similarity index 100% rename from section_10/bank-app-ui/src/app/components/notices/notices.component.html rename to section_12/bank-app-ui/src/app/components/notices/notices.component.html diff --git a/section_10/bank-app-ui/src/app/components/notices/notices.component.ts b/section_12/bank-app-ui/src/app/components/notices/notices.component.ts similarity index 91% rename from section_10/bank-app-ui/src/app/components/notices/notices.component.ts rename to section_12/bank-app-ui/src/app/components/notices/notices.component.ts index 170de75c..01049e1b 100644 --- a/section_10/bank-app-ui/src/app/components/notices/notices.component.ts +++ b/section_12/bank-app-ui/src/app/components/notices/notices.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { Cards } from 'src/app/model/cards.model'; import { DashboardService } from 'src/app/services/dashboard/dashboard.service'; @Component({ diff --git a/section_10/bank-app-ui/src/app/constants/app.constants.ts b/section_12/bank-app-ui/src/app/constants/app.constants.ts similarity index 100% rename from section_10/bank-app-ui/src/app/constants/app.constants.ts rename to section_12/bank-app-ui/src/app/constants/app.constants.ts diff --git a/section9/bank-app-ui/src/app/interceptors/app.request.interceptor.ts b/section_12/bank-app-ui/src/app/interceptors/app.request.interceptor.ts similarity index 94% rename from section9/bank-app-ui/src/app/interceptors/app.request.interceptor.ts rename to section_12/bank-app-ui/src/app/interceptors/app.request.interceptor.ts index 75b28103..19cee3e5 100644 --- a/section9/bank-app-ui/src/app/interceptors/app.request.interceptor.ts +++ b/section_12/bank-app-ui/src/app/interceptors/app.request.interceptor.ts @@ -17,16 +17,18 @@ export class XhrInterceptor implements HttpInterceptor { } if(this.user && this.user.password && this.user.email){ httpHeaders = httpHeaders.append('Authorization', 'Basic ' + window.btoa(this.user.email + ':' + this.user.password)); - }else { + } else { let authorization = sessionStorage.getItem('Authorization'); if(authorization){ httpHeaders = httpHeaders.append('Authorization', authorization); } } + let xsrf = sessionStorage.getItem('XSRF-TOKEN'); if(xsrf){ - httpHeaders = httpHeaders.append('X-XSRF-TOKEN', xsrf); + httpHeaders = httpHeaders.append('X-XSRF-TOKEN', xsrf); } + httpHeaders = httpHeaders.append('X-Requested-With', 'XMLHttpRequest'); const xhr = req.clone({ headers: httpHeaders diff --git a/section_10/bank-app-ui/src/app/model/account.model.ts b/section_12/bank-app-ui/src/app/model/account.model.ts similarity index 100% rename from section_10/bank-app-ui/src/app/model/account.model.ts rename to section_12/bank-app-ui/src/app/model/account.model.ts diff --git a/section_10/bank-app-ui/src/app/model/account.transactions.model.ts b/section_12/bank-app-ui/src/app/model/account.transactions.model.ts similarity index 100% rename from section_10/bank-app-ui/src/app/model/account.transactions.model.ts rename to section_12/bank-app-ui/src/app/model/account.transactions.model.ts diff --git a/section_10/bank-app-ui/src/app/model/cards.model.ts b/section_12/bank-app-ui/src/app/model/cards.model.ts similarity index 100% rename from section_10/bank-app-ui/src/app/model/cards.model.ts rename to section_12/bank-app-ui/src/app/model/cards.model.ts diff --git a/section_10/bank-app-ui/src/app/model/contact.model.ts b/section_12/bank-app-ui/src/app/model/contact.model.ts similarity index 100% rename from section_10/bank-app-ui/src/app/model/contact.model.ts rename to section_12/bank-app-ui/src/app/model/contact.model.ts diff --git a/section_10/bank-app-ui/src/app/model/loans.model.ts b/section_12/bank-app-ui/src/app/model/loans.model.ts similarity index 100% rename from section_10/bank-app-ui/src/app/model/loans.model.ts rename to section_12/bank-app-ui/src/app/model/loans.model.ts diff --git a/section_10/bank-app-ui/src/app/model/user.model.ts b/section_12/bank-app-ui/src/app/model/user.model.ts similarity index 100% rename from section_10/bank-app-ui/src/app/model/user.model.ts rename to section_12/bank-app-ui/src/app/model/user.model.ts diff --git a/section_12/bank-app-ui/src/app/routeguards/auth.routeguard.ts b/section_12/bank-app-ui/src/app/routeguards/auth.routeguard.ts new file mode 100644 index 00000000..0eaee8f8 --- /dev/null +++ b/section_12/bank-app-ui/src/app/routeguards/auth.routeguard.ts @@ -0,0 +1,27 @@ +import { Injectable,inject } from '@angular/core'; +import { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot,Router } from '@angular/router'; +import { User } from '../model/user.model'; + +@Injectable() +export class AuthActivateRouteGuard { + user = new User(); + + constructor(private router: Router){ + + } + + canActivate(route:ActivatedRouteSnapshot, state:RouterStateSnapshot){ + if(sessionStorage.getItem('userdetails')){ + this.user = JSON.parse(sessionStorage.getItem('userdetails')!); + } + if(this.user.email.length===0){ + this.router.navigate(['login']); + } + return this.user.email.length!==0?true:false; + } + +} + +export const AuthGuard: CanActivateFn = (next: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean => { + return inject(AuthActivateRouteGuard).canActivate(next, state); + } \ No newline at end of file diff --git a/section_10/bank-app-ui/src/app/services/dashboard/dashboard.service.ts b/section_12/bank-app-ui/src/app/services/dashboard/dashboard.service.ts similarity index 93% rename from section_10/bank-app-ui/src/app/services/dashboard/dashboard.service.ts rename to section_12/bank-app-ui/src/app/services/dashboard/dashboard.service.ts index 1ecd45af..2ea0cede 100644 --- a/section_10/bank-app-ui/src/app/services/dashboard/dashboard.service.ts +++ b/section_12/bank-app-ui/src/app/services/dashboard/dashboard.service.ts @@ -2,7 +2,6 @@ import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { AppConstants } from "../../constants/app.constants"; import { environment } from '../../../environments/environment'; -import { User } from '../../model/user.model'; import { Contact } from '../../model/contact.model'; @Injectable({ @@ -35,7 +34,7 @@ export class DashboardService { saveMessage(contact : Contact){ var contacts = []; contacts.push(contact); - return this.http.post(environment.rooturl + AppConstants.CONTACT_API_URL,contacts,{ observe: 'response'}); + return this.http.post(environment.rooturl + AppConstants.CONTACT_API_URL,contacts,{ observe: 'response',withCredentials: true }); } } diff --git a/section_10/bank-app-ui/src/app/services/login/login.service.ts b/section_12/bank-app-ui/src/app/services/login/login.service.ts similarity index 82% rename from section_10/bank-app-ui/src/app/services/login/login.service.ts rename to section_12/bank-app-ui/src/app/services/login/login.service.ts index 51266d0f..5b72029a 100644 --- a/section_10/bank-app-ui/src/app/services/login/login.service.ts +++ b/section_12/bank-app-ui/src/app/services/login/login.service.ts @@ -1,7 +1,6 @@ import { Injectable } from '@angular/core'; -import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http'; +import { HttpClient } from '@angular/common/http'; import { User } from "src/app/model/user.model"; -import { Observable, Subject } from 'rxjs'; import { AppConstants } from 'src/app/constants/app.constants'; import { environment } from '../../../environments/environment'; diff --git a/section_10/bank-app-ui/src/assets/.gitkeep b/section_12/bank-app-ui/src/assets/.gitkeep similarity index 100% rename from section_10/bank-app-ui/src/assets/.gitkeep rename to section_12/bank-app-ui/src/assets/.gitkeep diff --git a/section_10/bank-app-ui/src/assets/css/bootstrap.css b/section_12/bank-app-ui/src/assets/css/bootstrap.css similarity index 100% rename from section_10/bank-app-ui/src/assets/css/bootstrap.css rename to section_12/bank-app-ui/src/assets/css/bootstrap.css diff --git a/section_10/bank-app-ui/src/assets/css/font-awesome.css b/section_12/bank-app-ui/src/assets/css/font-awesome.css similarity index 100% rename from section_10/bank-app-ui/src/assets/css/font-awesome.css rename to section_12/bank-app-ui/src/assets/css/font-awesome.css diff --git a/section_10/bank-app-ui/src/assets/fonts/FontAwesome.otf b/section_12/bank-app-ui/src/assets/fonts/FontAwesome.otf similarity index 100% rename from section_10/bank-app-ui/src/assets/fonts/FontAwesome.otf rename to section_12/bank-app-ui/src/assets/fonts/FontAwesome.otf diff --git a/section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot b/section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot similarity index 100% rename from section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot rename to section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot diff --git a/section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf b/section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf similarity index 100% rename from section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf rename to section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf diff --git a/section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff b/section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff similarity index 100% rename from section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff rename to section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff diff --git a/section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 b/section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 similarity index 100% rename from section_10/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 rename to section_12/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 diff --git a/section_10/bank-app-ui/src/assets/images/logo.png b/section_12/bank-app-ui/src/assets/images/logo.png similarity index 100% rename from section_10/bank-app-ui/src/assets/images/logo.png rename to section_12/bank-app-ui/src/assets/images/logo.png diff --git a/section_12/bank-app-ui/src/environments/environment.development.ts b/section_12/bank-app-ui/src/environments/environment.development.ts new file mode 100644 index 00000000..2fca8742 --- /dev/null +++ b/section_12/bank-app-ui/src/environments/environment.development.ts @@ -0,0 +1,4 @@ +export const environment = { + production: false, + rooturl : 'http://localhost:8080' +}; diff --git a/section_12/bank-app-ui/src/environments/environment.ts b/section_12/bank-app-ui/src/environments/environment.ts new file mode 100644 index 00000000..6453eee4 --- /dev/null +++ b/section_12/bank-app-ui/src/environments/environment.ts @@ -0,0 +1,4 @@ +export const environment = { + production: true, + rooturl : 'http://localhost:8080' +}; diff --git a/section_10/bank-app-ui/src/favicon.ico b/section_12/bank-app-ui/src/favicon.ico similarity index 100% rename from section_10/bank-app-ui/src/favicon.ico rename to section_12/bank-app-ui/src/favicon.ico diff --git a/section6/bank-app-ui/src/index.html b/section_12/bank-app-ui/src/index.html similarity index 100% rename from section6/bank-app-ui/src/index.html rename to section_12/bank-app-ui/src/index.html diff --git a/section_10/bank-app-ui/src/main.ts b/section_12/bank-app-ui/src/main.ts similarity index 57% rename from section_10/bank-app-ui/src/main.ts rename to section_12/bank-app-ui/src/main.ts index c7b673cf..c58dc05c 100644 --- a/section_10/bank-app-ui/src/main.ts +++ b/section_12/bank-app-ui/src/main.ts @@ -1,12 +1,7 @@ -import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; -if (environment.production) { - enableProdMode(); -} platformBrowserDynamic().bootstrapModule(AppModule) .catch(err => console.error(err)); diff --git a/section_10/bank-app-ui/src/styles.css b/section_12/bank-app-ui/src/styles.css similarity index 100% rename from section_10/bank-app-ui/src/styles.css rename to section_12/bank-app-ui/src/styles.css diff --git a/section6/bank-app-ui/tsconfig.app.json b/section_12/bank-app-ui/tsconfig.app.json similarity index 85% rename from section6/bank-app-ui/tsconfig.app.json rename to section_12/bank-app-ui/tsconfig.app.json index 82d91dc4..374cc9d2 100644 --- a/section6/bank-app-ui/tsconfig.app.json +++ b/section_12/bank-app-ui/tsconfig.app.json @@ -6,8 +6,7 @@ "types": [] }, "files": [ - "src/main.ts", - "src/polyfills.ts" + "src/main.ts" ], "include": [ "src/**/*.d.ts" diff --git a/section_10/bank-app-ui/tsconfig.json b/section_12/bank-app-ui/tsconfig.json similarity index 88% rename from section_10/bank-app-ui/tsconfig.json rename to section_12/bank-app-ui/tsconfig.json index ff06eae1..ed966d43 100644 --- a/section_10/bank-app-ui/tsconfig.json +++ b/section_12/bank-app-ui/tsconfig.json @@ -16,10 +16,11 @@ "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, - "target": "es2020", - "module": "es2020", + "target": "ES2022", + "module": "ES2022", + "useDefineForClassFields": false, "lib": [ - "es2020", + "ES2022", "dom" ] }, diff --git a/section_10/bank-app-ui/tsconfig.spec.json b/section_12/bank-app-ui/tsconfig.spec.json similarity index 81% rename from section_10/bank-app-ui/tsconfig.spec.json rename to section_12/bank-app-ui/tsconfig.spec.json index 092345b0..be7e9da7 100644 --- a/section_10/bank-app-ui/tsconfig.spec.json +++ b/section_12/bank-app-ui/tsconfig.spec.json @@ -7,10 +7,6 @@ "jasmine" ] }, - "files": [ - "src/test.ts", - "src/polyfills.ts" - ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" diff --git a/section_12/springsecOAUTH2GitHub/.mvn/wrapper/maven-wrapper.jar b/section_12/springsecOAUTH2GitHub/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section_12/springsecOAUTH2GitHub/.mvn/wrapper/maven-wrapper.properties b/section_12/springsecOAUTH2GitHub/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index b74bf7fc..00000000 --- a/section_12/springsecOAUTH2GitHub/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1,2 +0,0 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar diff --git a/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/config/SpringSecOAUTH2GitHubConfig.java b/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/config/SpringSecOAUTH2GitHubConfig.java deleted file mode 100644 index 647e46ee..00000000 --- a/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/config/SpringSecOAUTH2GitHubConfig.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.eazybytes.springsecOAUTH2GitHub.config; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.Customizer; -import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.oauth2.client.CommonOAuth2Provider; -import org.springframework.security.web.SecurityFilterChain; - -@Configuration -public class SpringSecOAUTH2GitHubConfig { - - @Bean - SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - http.authorizeHttpRequests((requests)->requests.anyRequest().authenticated()) - .oauth2Login(Customizer.withDefaults()); - return http.build(); - } - - /*@Bean - public ClientRegistrationRepository clientRepository() { - ClientRegistration clientReg = clientRegistration(); - return new InMemoryClientRegistrationRepository(clientReg); - } - - private ClientRegistration clientRegistration() { - return CommonOAuth2Provider.GITHUB.getBuilder("github").clientId("8cf67ab304dc500092e3") - .clientSecret("6e6f91851c864684af2f91eaa08fb5041162768e").build(); - }*/ - -} diff --git a/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/controller/SecureController.java b/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/controller/SecureController.java deleted file mode 100644 index ee668ef6..00000000 --- a/section_12/springsecOAUTH2GitHub/src/main/java/com/eazybytes/springsecOAUTH2GitHub/controller/SecureController.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.eazybytes.springsecOAUTH2GitHub.controller; - -import org.springframework.security.oauth2.client.authentication.OAuth2AuthenticationToken; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; - -@Controller -public class SecureController { - - @GetMapping("/") - public String main(OAuth2AuthenticationToken token) { - System.out.println(token.getPrincipal()); - return "secure.html"; - } - -} diff --git a/section_12/springsecOAUTH2GitHub/src/main/resources/application.properties b/section_12/springsecOAUTH2GitHub/src/main/resources/application.properties deleted file mode 100644 index 17374125..00000000 --- a/section_12/springsecOAUTH2GitHub/src/main/resources/application.properties +++ /dev/null @@ -1,2 +0,0 @@ -spring.security.oauth2.client.registration.github.client-id=8cf67ab304dc500092e3 -spring.security.oauth2.client.registration.github.client-secret=6e6f91851c864684af2f91eaa08fb5041162768e diff --git a/section_12/springsecsection_12/.gitignore b/section_12/springsecsection_12/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/section_12/springsecsection_12/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/section_12/springsecsection_12/.mvn/wrapper/maven-wrapper.properties b/section_12/springsecsection_12/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..aeccdfdb --- /dev/null +++ b/section_12/springsecsection_12/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section_12/springsecsection_12/mvnw b/section_12/springsecsection_12/mvnw new file mode 100755 index 00000000..ba9212a0 --- /dev/null +++ b/section_12/springsecsection_12/mvnw @@ -0,0 +1,250 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.1 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/section_12/springsecsection_12/mvnw.cmd b/section_12/springsecsection_12/mvnw.cmd new file mode 100644 index 00000000..406932da --- /dev/null +++ b/section_12/springsecsection_12/mvnw.cmd @@ -0,0 +1,146 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.1 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section_12/springsecsection_12/pom.xml b/section_12/springsecsection_12/pom.xml new file mode 100644 index 00000000..d782b6a5 --- /dev/null +++ b/section_12/springsecsection_12/pom.xml @@ -0,0 +1,85 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.3.0 + + + com.eazybytes + springsecsection_12 + 0.0.1-SNAPSHOT + springsecsection_12 + Demo project for Spring Boot and Spring Security + + 21 + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-jdbc + + + com.mysql + mysql-connector-j + runtime + + + org.springframework.boot + spring-boot-devtools + runtime + true + + + org.projectlombok + lombok + true + + + io.jsonwebtoken + jjwt-api + 0.12.5 + + + io.jsonwebtoken + jjwt-impl + 0.12.5 + runtime + + + io.jsonwebtoken + jjwt-jackson + 0.12.5 + runtime + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/EazyBankBackendApplication.java new file mode 100644 index 00000000..e194191e --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -0,0 +1,17 @@ +package com.eazybytes; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; + +@SpringBootApplication +@EnableWebSecurity +@EnableMethodSecurity(jsr250Enabled = true,securedEnabled = true) +public class EazyBankBackendApplication { + + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..415dfb16 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankProdUsernamePwdAuthenticationProvider.java @@ -0,0 +1,40 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("prod") +@RequiredArgsConstructor +public class EazyBankProdUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + // Fetch Age details and perform validation to check if age >18 + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + }else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..712f39f0 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUserDetailsService.java @@ -0,0 +1,32 @@ +package com.eazybytes.config; + +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = customer.getAuthorities().stream().map(authority -> new + SimpleGrantedAuthority(authority.getName())).collect(Collectors.toList()); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } +} + diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..96185c80 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -0,0 +1,35 @@ +package com.eazybytes.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@Profile("!prod") +@RequiredArgsConstructor +public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + return new UsernamePasswordAuthenticationToken(username,pwd,userDetails.getAuthorities()); + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..dba91bc1 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -0,0 +1,100 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.*; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("!prod") +public class ProjectSecurityConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers( "/contact","/register", "/apiLogin") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) + .addFilterAt(new AuthoritiesLoggingAtFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new JWTTokenGeneratorFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new JWTTokenValidatorFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").authenticated() + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession", "/apiLogin").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + + @Bean + public AuthenticationManager authenticationManager(UserDetailsService userDetailsService, + PasswordEncoder passwordEncoder) { + EazyBankUsernamePwdAuthenticationProvider authenticationProvider = + new EazyBankUsernamePwdAuthenticationProvider(userDetailsService, passwordEncoder); + ProviderManager providerManager = new ProviderManager(authenticationProvider); + providerManager.setEraseCredentialsAfterAuthentication(false); + return providerManager; + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..b5eb0380 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,100 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.exceptionhandling.CustomBasicAuthenticationEntryPoint; +import com.eazybytes.filter.*; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +import static org.springframework.security.config.Customizer.withDefaults; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("https://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register", "/apiLogin") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new RequestValidationBeforeFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new AuthoritiesLoggingAfterFilter(), BasicAuthenticationFilter.class) + .addFilterAt(new AuthoritiesLoggingAtFilter(), BasicAuthenticationFilter.class) + .addFilterAfter(new JWTTokenGeneratorFilter(), BasicAuthenticationFilter.class) + .addFilterBefore(new JWTTokenValidatorFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").authenticated() + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register", "/invalidSession", "/apiLogin").permitAll()); + http.formLogin(withDefaults()); + http.httpBasic(hbc -> hbc.authenticationEntryPoint(new CustomBasicAuthenticationEntryPoint())); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + + @Bean + public AuthenticationManager authenticationManager(UserDetailsService userDetailsService, + PasswordEncoder passwordEncoder) { + EazyBankProdUsernamePwdAuthenticationProvider authenticationProvider = + new EazyBankProdUsernamePwdAuthenticationProvider(userDetailsService, passwordEncoder); + ProviderManager providerManager = new ProviderManager(authenticationProvider); + providerManager.setEraseCredentialsAfterAuthentication(false); + return providerManager; + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/constants/ApplicationConstants.java new file mode 100644 index 00000000..6a6dd50a --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/constants/ApplicationConstants.java @@ -0,0 +1,8 @@ +package com.eazybytes.constants; + +public final class ApplicationConstants { + + public static final String JWT_SECRET_KEY = "JWT_SECRET"; + public static final String JWT_SECRET_DEFAULT_VALUE = "jxgEQeXHuPq8VdbyYFNkANdudQ53YUn4"; + public static final String JWT_HEADER = "Authorization"; +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/AccountController.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/AccountController.java new file mode 100644 index 00000000..b5c3b79b --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/AccountController.java @@ -0,0 +1,26 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Accounts; +import com.eazybytes.repository.AccountsRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +public class AccountController { + + private final AccountsRepository accountsRepository; + + @GetMapping("/myAccount") + public Accounts getAccountDetails(@RequestParam long id) { + Accounts accounts = accountsRepository.findByCustomerId(id); + if (accounts != null) { + return accounts; + } else { + return null; + } + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/BalanceController.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/BalanceController.java new file mode 100644 index 00000000..14752a7d --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/BalanceController.java @@ -0,0 +1,28 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.AccountTransactions; +import com.eazybytes.repository.AccountTransactionsRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class BalanceController { + + private final AccountTransactionsRepository accountTransactionsRepository; + + @GetMapping("/myBalance") + public List getBalanceDetails(@RequestParam long id) { + List accountTransactions = accountTransactionsRepository. + findByCustomerIdOrderByTransactionDtDesc(id); + if (accountTransactions != null) { + return accountTransactions; + } else { + return null; + } + } +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/CardsController.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/CardsController.java new file mode 100644 index 00000000..ff93cb36 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/CardsController.java @@ -0,0 +1,29 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Cards; +import com.eazybytes.repository.CardsRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class CardsController { + + private final CardsRepository cardsRepository; + + @GetMapping("/myCards") + public List getCardDetails(@RequestParam long id) { + List cards = cardsRepository.findByCustomerId(id); + if (cards != null ) { + return cards; + }else { + return null; + } + } + +} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/ContactController.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/ContactController.java similarity index 57% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/controller/ContactController.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/controller/ContactController.java index c0bd5423..6f02d39b 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/ContactController.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/ContactController.java @@ -2,8 +2,9 @@ import com.eazybytes.model.Contact; import com.eazybytes.repository.ContactRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.security.access.prepost.PostFilter; +import org.springframework.security.access.prepost.PreFilter; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; @@ -14,27 +15,29 @@ import java.util.Random; @RestController +@RequiredArgsConstructor public class ContactController { - @Autowired - private ContactRepository contactRepository; + private final ContactRepository contactRepository; @PostMapping("/contact") - /*@PreFilter("filterObject.contactName != 'Test'")*/ + // @PreFilter("filterObject.contactName != 'Test'") @PostFilter("filterObject.contactName != 'Test'") public List saveContactInquiryDetails(@RequestBody List contacts) { - Contact contact = contacts.get(0); - contact.setContactId(getServiceReqNumber()); - contact.setCreateDt(new Date(System.currentTimeMillis())); - contact = contactRepository.save(contact); - List returnContacts = new ArrayList(); - returnContacts.add(contact); + List returnContacts = new ArrayList<>(); + if(!contacts.isEmpty()) { + Contact contact = contacts.getFirst(); + contact.setContactId(getServiceReqNumber()); + contact.setCreateDt(new Date(System.currentTimeMillis())); + Contact savedContact = contactRepository.save(contact); + returnContacts.add(savedContact); + } return returnContacts; } public String getServiceReqNumber() { Random random = new Random(); int ranNum = random.nextInt(999999999 - 9999) + 9999; - return "SR"+ranNum; + return "SR" + ranNum; } } diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/LoansController.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/LoansController.java new file mode 100644 index 00000000..a479ad47 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/LoansController.java @@ -0,0 +1,31 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Loans; +import com.eazybytes.repository.LoanRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.access.prepost.PostAuthorize; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class LoansController { + + private final LoanRepository loanRepository; + + @GetMapping("/myLoans") + @PostAuthorize("hasRole('USER')") + public List getLoanDetails(@RequestParam long id) { + List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(id); + if (loans != null) { + return loans; + } else { + return null; + } + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/NoticesController.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/NoticesController.java new file mode 100644 index 00000000..277f7abc --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/NoticesController.java @@ -0,0 +1,32 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Notice; +import com.eazybytes.repository.NoticeRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.http.CacheControl; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.TimeUnit; + +@RestController +@RequiredArgsConstructor +public class NoticesController { + + private final NoticeRepository noticeRepository; + + @GetMapping("/notices") + public ResponseEntity> getNotices() { + List notices = noticeRepository.findAllActiveNotices(); + if (notices != null) { + return ResponseEntity.ok() + .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) + .body(notices); + } else { + return null; + } + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/UserController.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..4d893068 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,91 @@ +package com.eazybytes.controller; + +import com.eazybytes.constants.ApplicationConstants; +import com.eazybytes.model.Customer; +import com.eazybytes.model.LoginRequestDTO; +import com.eazybytes.model.LoginResponseDTO; +import com.eazybytes.repository.CustomerRepository; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import lombok.RequiredArgsConstructor; +import org.springframework.core.env.Environment; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.crypto.SecretKey; +import java.nio.charset.StandardCharsets; +import java.sql.Date; +import java.util.Optional; +import java.util.stream.Collectors; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + private final PasswordEncoder passwordEncoder; + private final AuthenticationManager authenticationManager; + private final Environment env; + + @PostMapping("/register") + public ResponseEntity registerUser(@RequestBody Customer customer) { + try { + String hashPwd = passwordEncoder.encode(customer.getPwd()); + customer.setPwd(hashPwd); + customer.setCreateDt(new Date(System.currentTimeMillis())); + Customer savedCustomer = customerRepository.save(customer); + + if (savedCustomer.getId() > 0) { + return ResponseEntity.status(HttpStatus.CREATED). + body("Given user details are successfully registered"); + } else { + return ResponseEntity.status(HttpStatus.BAD_REQUEST). + body("User registration failed"); + } + } catch (Exception ex) { + return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR). + body("An exception occurred: " + ex.getMessage()); + } + } + + @RequestMapping("/user") + public Customer getUserDetailsAfterLogin(Authentication authentication) { + Optional optionalCustomer = customerRepository.findByEmail(authentication.getName()); + return optionalCustomer.orElse(null); + } + + @PostMapping("/apiLogin") + public ResponseEntity apiLogin (@RequestBody LoginRequestDTO loginRequest) { + String jwt = ""; + Authentication authentication = UsernamePasswordAuthenticationToken.unauthenticated(loginRequest.username(), + loginRequest.password()); + Authentication authenticationResponse = authenticationManager.authenticate(authentication); + if(null != authenticationResponse && authenticationResponse.isAuthenticated()) { + if (null != env) { + String secret = env.getProperty(ApplicationConstants.JWT_SECRET_KEY, + ApplicationConstants.JWT_SECRET_DEFAULT_VALUE); + SecretKey secretKey = Keys.hmacShaKeyFor(secret.getBytes(StandardCharsets.UTF_8)); + jwt = Jwts.builder().issuer("Eazy Bank").subject("JWT Token") + .claim("username", authenticationResponse.getName()) + .claim("authorities", authenticationResponse.getAuthorities().stream().map( + GrantedAuthority::getAuthority).collect(Collectors.joining(","))) + .issuedAt(new java.util.Date()) + .expiration(new java.util.Date((new java.util.Date()).getTime() + 30000000)) + .signWith(secretKey).compact(); + } + } + return ResponseEntity.status(HttpStatus.OK).header(ApplicationConstants.JWT_HEADER,jwt) + .body(new LoginResponseDTO(HttpStatus.OK.getReasonPhrase(), jwt)); + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthorizationEvents.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthorizationEvents.java new file mode 100644 index 00000000..69193055 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/events/AuthorizationEvents.java @@ -0,0 +1,20 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.authorization.event.AuthorizationDeniedEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthorizationEvents { + + @EventListener + public void onFailure(AuthorizationDeniedEvent deniedEvent) { + log.error("Authorization failed for the user : {} due to : {}", deniedEvent.getAuthentication().get().getName(), + deniedEvent.getAuthorizationDecision().toString()); + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java new file mode 100644 index 00000000..febb0863 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAfterFilter.java @@ -0,0 +1,29 @@ +package com.eazybytes.filter; + +import jakarta.servlet.*; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; + +import java.io.IOException; + +@Slf4j +public class AuthoritiesLoggingAfterFilter implements Filter { + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { + Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + if(null != authentication) { + log.info("User " + authentication.getName() + " is successfully authenticated and " + + "has the authorities " + authentication.getAuthorities().toString()); + } + chain.doFilter(request,response); + } +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java new file mode 100644 index 00000000..0286d2c6 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/AuthoritiesLoggingAtFilter.java @@ -0,0 +1,24 @@ +package com.eazybytes.filter; + +import jakarta.servlet.*; +import lombok.extern.slf4j.Slf4j; + +import java.io.IOException; + +@Slf4j +public class AuthoritiesLoggingAtFilter implements Filter { + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) + throws IOException, ServletException { + log.info("Authentication Validation is in progress"); + chain.doFilter(request,response); + } +} diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java similarity index 84% rename from section6/springsecsection6/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java index 4e65b58d..be9f9438 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java @@ -11,14 +11,13 @@ public class CsrfCookieFilter extends OncePerRequestFilter { + @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { CsrfToken csrfToken = (CsrfToken) request.getAttribute(CsrfToken.class.getName()); - if(null != csrfToken.getHeaderName()){ - response.setHeader(csrfToken.getHeaderName(), csrfToken.getToken()); - } + // Render the token value to a cookie by causing the deferred token to be loaded + csrfToken.getToken(); filterChain.doFilter(request, response); } - } diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java new file mode 100644 index 00000000..eed55b7e --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenGeneratorFilter.java @@ -0,0 +1,59 @@ +package com.eazybytes.filter; + +import com.eazybytes.constants.ApplicationConstants; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.core.env.Environment; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.web.filter.OncePerRequestFilter; + +import javax.crypto.SecretKey; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.Date; +import java.util.stream.Collectors; + +public class JWTTokenGeneratorFilter extends OncePerRequestFilter { + + /** + * @param request + * @param response + * @param filterChain + * @throws ServletException + * @throws IOException + */ + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, + FilterChain filterChain) throws ServletException, IOException { + Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + if (null != authentication) { + Environment env = getEnvironment(); + if (null != env) { + String secret = env.getProperty(ApplicationConstants.JWT_SECRET_KEY, + ApplicationConstants.JWT_SECRET_DEFAULT_VALUE); + SecretKey secretKey = Keys.hmacShaKeyFor(secret.getBytes(StandardCharsets.UTF_8)); + String jwt = Jwts.builder().issuer("Eazy Bank").subject("JWT Token") + .claim("username", authentication.getName()) + .claim("authorities", authentication.getAuthorities().stream().map( + GrantedAuthority::getAuthority).collect(Collectors.joining(","))) + .issuedAt(new Date()) + .expiration(new Date((new Date()).getTime() + 30000000)) + .signWith(secretKey).compact(); + response.setHeader(ApplicationConstants.JWT_HEADER, jwt); + } + } + filterChain.doFilter(request, response); + } + + @Override + protected boolean shouldNotFilter(HttpServletRequest request) throws ServletException { + return !request.getServletPath().equals("/user"); + } + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java new file mode 100644 index 00000000..bf130cca --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/JWTTokenValidatorFilter.java @@ -0,0 +1,65 @@ +package com.eazybytes.filter; + +import com.eazybytes.constants.ApplicationConstants; +import io.jsonwebtoken.Claims; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.core.env.Environment; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.authority.AuthorityUtils; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.web.filter.OncePerRequestFilter; + +import javax.crypto.SecretKey; +import java.io.IOException; +import java.nio.charset.StandardCharsets; + +public class JWTTokenValidatorFilter extends OncePerRequestFilter { + /** + * @param request + * @param response + * @param filterChain + * @throws ServletException + * @throws IOException + */ + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) + throws ServletException, IOException { + String jwt = request.getHeader(ApplicationConstants.JWT_HEADER); + if(null != jwt) { + try { + Environment env = getEnvironment(); + if (null != env) { + String secret = env.getProperty(ApplicationConstants.JWT_SECRET_KEY, + ApplicationConstants.JWT_SECRET_DEFAULT_VALUE); + SecretKey secretKey = Keys.hmacShaKeyFor(secret.getBytes(StandardCharsets.UTF_8)); + if(null !=secretKey) { + Claims claims = Jwts.parser().verifyWith(secretKey) + .build().parseSignedClaims(jwt).getPayload(); + String username = String.valueOf(claims.get("username")); + String authorities = String.valueOf(claims.get("authorities")); + Authentication authentication = new UsernamePasswordAuthenticationToken(username, null, + AuthorityUtils.commaSeparatedStringToAuthorityList(authorities)); + SecurityContextHolder.getContext().setAuthentication(authentication); + } + } + + } catch (Exception exception) { + throw new BadCredentialsException("Invalid Token received!"); + } + } + filterChain.doFilter(request,response); + } + + @Override + protected boolean shouldNotFilter(HttpServletRequest request) throws ServletException { + return request.getServletPath().equals("/user"); + } + +} diff --git a/section9/springsecsection9/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java similarity index 60% rename from section9/springsecsection9/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java index 75fbec4d..1ab1588b 100644 --- a/section9/springsecsection9/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/filter/RequestValidationBeforeFilter.java @@ -1,48 +1,52 @@ package com.eazybytes.filter; + import jakarta.servlet.*; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpHeaders; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.util.StringUtils; import java.io.IOException; -import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.Base64; -import static org.springframework.http.HttpHeaders.AUTHORIZATION; - - -public class RequestValidationBeforeFilter implements Filter { +public class RequestValidationBeforeFilter implements Filter { - public static final String AUTHENTICATION_SCHEME_BASIC = "Basic"; - private Charset credentialsCharset = StandardCharsets.UTF_8; + /** + * @param request The request to process + * @param response The response associated with the request + * @param chain Provides access to the next filter in the chain for this filter to pass the request and response + * to for further processing + * @throws IOException + * @throws ServletException + */ @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; - String header = req.getHeader(AUTHORIZATION); - if (header != null) { + String header = req.getHeader(HttpHeaders.AUTHORIZATION); + if(null != header) { header = header.trim(); - if (StringUtils.startsWithIgnoreCase(header, AUTHENTICATION_SCHEME_BASIC)) { + if(StringUtils.startsWithIgnoreCase(header, "Basic ")) { byte[] base64Token = header.substring(6).getBytes(StandardCharsets.UTF_8); byte[] decoded; try { decoded = Base64.getDecoder().decode(base64Token); - String token = new String(decoded, credentialsCharset); + String token = new String(decoded, StandardCharsets.UTF_8); // un:pwd int delim = token.indexOf(":"); - if (delim == -1) { + if(delim== -1) { throw new BadCredentialsException("Invalid basic authentication token"); } - String email = token.substring(0, delim); - if (email.toLowerCase().contains("test")) { + String email = token.substring(0,delim); + if(email.toLowerCase().contains("test")) { res.setStatus(HttpServletResponse.SC_BAD_REQUEST); return; } - } catch (IllegalArgumentException e) { + } catch (IllegalArgumentException exception) { throw new BadCredentialsException("Failed to decode basic authentication token"); } } diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/AccountTransactions.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/AccountTransactions.java new file mode 100644 index 00000000..b2833f59 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/AccountTransactions.java @@ -0,0 +1,46 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter +@Setter +@Table(name="account_transactions") +public class AccountTransactions { + + @Id + @Column(name = "transaction_id") + private String transactionId; + + @Column(name="account_number") + private long accountNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name="transaction_dt") + private Date transactionDt; + + @Column(name = "transaction_summary") + private String transactionSummary; + + @Column(name="transaction_type") + private String transactionType; + + @Column(name = "transaction_amt") + private int transactionAmt; + + @Column(name = "closing_balance") + private int closingBalance; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Accounts.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Accounts.java new file mode 100644 index 00000000..30a6bcba --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Accounts.java @@ -0,0 +1,32 @@ +package com.eazybytes.model; + + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +public class Accounts { + + @Column(name = "customer_id") + private long customerId; + + @Id + @Column(name="account_number") + private long accountNumber; + + @Column(name="account_type") + private String accountType; + + @Column(name = "branch_address") + private String branchAddress; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Authority.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Authority.java new file mode 100644 index 00000000..706f8137 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Authority.java @@ -0,0 +1,22 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +@Entity +@Getter @Setter +@Table(name="authorities") +public class Authority { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + + private String name; + + @ManyToOne + @JoinColumn(name="customer_id") + private Customer customer; + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Cards.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Cards.java new file mode 100644 index 00000000..8a090acb --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Cards.java @@ -0,0 +1,39 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "cards") +public class Cards { + + @Id + @Column(name = "card_id") + private long cardId; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "card_number") + private String cardNumber; + + @Column(name = "card_type") + private String cardType; + + @Column(name = "total_limit") + private int totalLimit; + + @Column(name = "amount_used") + private int amountUsed; + + @Column(name = "available_amount") + private int availableAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Contact.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Contact.java new file mode 100644 index 00000000..3de986d5 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Contact.java @@ -0,0 +1,34 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "contact_messages") +public class Contact { + + @Id + @Column(name = "contact_id") + private String contactId; + + @Column(name = "contact_name") + private String contactName; + + @Column(name = "contact_email") + private String contactEmail; + + private String subject; + + private String message; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Customer.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Customer.java new file mode 100644 index 00000000..0395ce85 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Customer.java @@ -0,0 +1,41 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; +import java.util.Set; + +@Entity +@Getter @Setter +public class Customer { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "customer_id") + private long id; + + private String name; + + private String email; + + @Column(name = "mobile_number") + private String mobileNumber; + + @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) + private String pwd; + + private String role; + + @Column(name = "create_dt") + @JsonIgnore + private Date createDt; + + @OneToMany(mappedBy = "customer", fetch = FetchType.EAGER) + @JsonIgnore + private Set authorities; + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Loans.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Loans.java new file mode 100644 index 00000000..f779eb20 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Loans.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "loans") +public class Loans { + + @Id + @Column(name = "loan_number") + private long loanNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "start_dt") + private Date startDt; + + @Column(name = "loan_type") + private String loanType; + + @Column(name = "total_loan") + private int totalLoan; + + @Column(name = "amount_paid") + private int amountPaid; + + @Column(name = "outstanding_amount") + private int outstandingAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginRequestDTO.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginRequestDTO.java new file mode 100644 index 00000000..3cedcfd4 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginRequestDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginRequestDTO(String username, String password) { +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginResponseDTO.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginResponseDTO.java new file mode 100644 index 00000000..bb263c5a --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/LoginResponseDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginResponseDTO(String status, String jwtToken) { +} diff --git a/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Notice.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Notice.java new file mode 100644 index 00000000..7ed13868 --- /dev/null +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/model/Notice.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "notice_details") +public class Notice { + + @Id + @Column(name = "notice_id") + private long noticeId; + + @Column(name = "notice_summary") + private String noticeSummary; + + @Column(name = "notice_details") + private String noticeDetails; + + @Column(name = "notic_beg_dt") + private Date noticBegDt; + + @Column(name = "notic_end_dt") + private Date noticEndDt; + + @JsonIgnore + @Column(name = "create_dt") + private Date createDt; + + @JsonIgnore + @Column(name = "update_dt") + private Date updateDt; + +} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java similarity index 86% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java index 580d4ee3..a06c2fd7 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java @@ -8,8 +8,8 @@ import com.eazybytes.model.AccountTransactions; @Repository -public interface AccountTransactionsRepository extends CrudRepository { +public interface AccountTransactionsRepository extends CrudRepository { - List findByCustomerIdOrderByTransactionDtDesc(int customerId); + List findByCustomerIdOrderByTransactionDtDesc(long customerId); } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/repository/AccountsRepository.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/AccountsRepository.java similarity index 85% rename from section6/springsecsection6/src/main/java/com/eazybytes/repository/AccountsRepository.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/repository/AccountsRepository.java index 0bcc1f5a..6ae5d8f4 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/repository/AccountsRepository.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/AccountsRepository.java @@ -1,13 +1,12 @@ package com.eazybytes.repository; +import com.eazybytes.model.Accounts; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import com.eazybytes.model.Accounts; - @Repository public interface AccountsRepository extends CrudRepository { - - Accounts findByCustomerId(int customerId); + + Accounts findByCustomerId(long customerId); } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/CardsRepository.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/CardsRepository.java similarity index 78% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/repository/CardsRepository.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/repository/CardsRepository.java index 21b7875c..61e1f4f5 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/CardsRepository.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/CardsRepository.java @@ -2,6 +2,7 @@ import java.util.List; +import com.eazybytes.model.Loans; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; @@ -10,6 +11,6 @@ @Repository public interface CardsRepository extends CrudRepository { - List findByCustomerId(int customerId); + List findByCustomerId(long customerId); } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/repository/ContactRepository.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/ContactRepository.java similarity index 95% rename from section6/springsecsection6/src/main/java/com/eazybytes/repository/ContactRepository.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/repository/ContactRepository.java index 9a042095..0ec283fd 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/repository/ContactRepository.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/ContactRepository.java @@ -6,7 +6,7 @@ import com.eazybytes.model.Contact; @Repository -public interface ContactRepository extends CrudRepository { +public interface ContactRepository extends CrudRepository { } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/CustomerRepository.java similarity index 74% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/repository/CustomerRepository.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/repository/CustomerRepository.java index 2c085ec4..f8535711 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/CustomerRepository.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -4,11 +4,11 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import java.util.List; +import java.util.Optional; @Repository -public interface CustomerRepository extends CrudRepository { +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); - List findByEmail(String email); - } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/LoanRepository.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/LoanRepository.java similarity index 85% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/repository/LoanRepository.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/repository/LoanRepository.java index 32e086aa..ea804983 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/LoanRepository.java +++ b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/LoanRepository.java @@ -12,6 +12,6 @@ public interface LoanRepository extends CrudRepository { // @PreAuthorize("hasRole('USER')") - List findByCustomerIdOrderByStartDtDesc(int customerId); + List findByCustomerIdOrderByStartDtDesc(long customerId); } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/repository/NoticeRepository.java b/section_12/springsecsection_12/src/main/java/com/eazybytes/repository/NoticeRepository.java similarity index 100% rename from section7/springsecsection7/src/main/java/com/eazybytes/repository/NoticeRepository.java rename to section_12/springsecsection_12/src/main/java/com/eazybytes/repository/NoticeRepository.java diff --git a/section_12/springsecsection_12/src/main/resources/application.properties b/section_12/springsecsection_12/src/main/resources/application.properties new file mode 100644 index 00000000..d091a248 --- /dev/null +++ b/section_12/springsecsection_12/src/main/resources/application.properties @@ -0,0 +1,15 @@ +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} diff --git a/section_12/springsecsection_12/src/main/resources/application_prod.properties b/section_12/springsecsection_12/src/main/resources/application_prod.properties new file mode 100644 index 00000000..9ef98007 --- /dev/null +++ b/section_12/springsecsection_12/src/main/resources/application_prod.properties @@ -0,0 +1,13 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} diff --git a/section_12/springsecsection_12/src/main/resources/sql/scripts.sql b/section_12/springsecsection_12/src/main/resources/sql/scripts.sql new file mode 100644 index 00000000..86a4af5e --- /dev/null +++ b/section_12/springsecsection_12/src/main/resources/sql/scripts.sql @@ -0,0 +1,192 @@ +drop table `authorities`; +drop table `users`; +drop table `customer`; + +CREATE TABLE `customer` ( + `customer_id` int NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + `email` varchar(100) NOT NULL, + `mobile_number` varchar(20) NOT NULL, + `pwd` varchar(500) NOT NULL, + `role` varchar(100) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`customer_id`) +); + +INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) + VALUES ('Happy','happy@example.com','5334122365', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin',CURDATE()); + +CREATE TABLE `accounts` ( + `customer_id` int NOT NULL, + `account_number` int NOT NULL, + `account_type` varchar(100) NOT NULL, + `branch_address` varchar(200) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`account_number`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `accounts` (`customer_id`, `account_number`, `account_type`, `branch_address`, `create_dt`) + VALUES (1, 1865764534, 'Savings', '123 Main Street, New York', CURDATE()); + +CREATE TABLE `account_transactions` ( + `transaction_id` varchar(200) NOT NULL, + `account_number` int NOT NULL, + `customer_id` int NOT NULL, + `transaction_dt` date NOT NULL, + `transaction_summary` varchar(200) NOT NULL, + `transaction_type` varchar(100) NOT NULL, + `transaction_amt` int NOT NULL, + `closing_balance` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`transaction_id`), + KEY `customer_id` (`customer_id`), + KEY `account_number` (`account_number`), + CONSTRAINT `accounts_ibfk_2` FOREIGN KEY (`account_number`) REFERENCES `accounts` (`account_number`) ON DELETE CASCADE, + CONSTRAINT `acct_user_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + + + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 7 DAY), 'Coffee Shop', 'Withdrawal', 30,34500,DATE_SUB(CURDATE(), INTERVAL 7 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 6 DAY), 'Uber', 'Withdrawal', 100,34400,DATE_SUB(CURDATE(), INTERVAL 6 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 5 DAY), 'Self Deposit', 'Deposit', 500,34900,DATE_SUB(CURDATE(), INTERVAL 5 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 4 DAY), 'Ebay', 'Withdrawal', 600,34300,DATE_SUB(CURDATE(), INTERVAL 4 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 2 DAY), 'OnlineTransfer', 'Deposit', 700,35000,DATE_SUB(CURDATE(), INTERVAL 2 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 1 DAY), 'Amazon.com', 'Withdrawal', 100,34900,DATE_SUB(CURDATE(), INTERVAL 1 DAY)); + + +CREATE TABLE `loans` ( + `loan_number` int NOT NULL AUTO_INCREMENT, + `customer_id` int NOT NULL, + `start_dt` date NOT NULL, + `loan_type` varchar(100) NOT NULL, + `total_loan` int NOT NULL, + `amount_paid` int NOT NULL, + `outstanding_amount` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`loan_number`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `loan_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2020-10-13', 'Home', 200000, 50000, 150000, '2020-10-13'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2020-06-06', 'Vehicle', 40000, 10000, 30000, '2020-06-06'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2018-02-14', 'Home', 50000, 10000, 40000, '2018-02-14'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2018-02-14', 'Personal', 10000, 3500, 6500, '2018-02-14'); + +CREATE TABLE `cards` ( + `card_id` int NOT NULL AUTO_INCREMENT, + `card_number` varchar(100) NOT NULL, + `customer_id` int NOT NULL, + `card_type` varchar(100) NOT NULL, + `total_limit` int NOT NULL, + `amount_used` int NOT NULL, + `available_amount` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`card_id`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `card_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('4565XXXX4656', 1, 'Credit', 10000, 500, 9500, CURDATE()); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('3455XXXX8673', 1, 'Credit', 7500, 600, 6900, CURDATE()); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('2359XXXX9346', 1, 'Credit', 20000, 4000, 16000, CURDATE()); + +CREATE TABLE `notice_details` ( + `notice_id` int NOT NULL AUTO_INCREMENT, + `notice_summary` varchar(200) NOT NULL, + `notice_details` varchar(500) NOT NULL, + `notic_beg_dt` date NOT NULL, + `notic_end_dt` date DEFAULT NULL, + `create_dt` date DEFAULT NULL, + `update_dt` date DEFAULT NULL, + PRIMARY KEY (`notice_id`) +); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Home Loan Interest rates reduced', 'Home loan interest rates are reduced as per the goverment guidelines. The updated rates will be effective immediately', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Net Banking Offers', 'Customers who will opt for Internet banking while opening a saving account will get a $50 amazon voucher', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Mobile App Downtime', 'The mobile application of the EazyBank will be down from 2AM-5AM on 12/05/2020 due to maintenance activities', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('E Auction notice', 'There will be a e-auction on 12/08/2020 on the Bank website for all the stubborn arrears.Interested parties can participate in the e-auction', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Launch of Millennia Cards', 'Millennia Credit Cards are launched for the premium customers of EazyBank. With these cards, you will get 5% cashback for each purchase', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('COVID-19 Insurance', 'EazyBank launched an insurance policy which will cover COVID-19 expenses. Please reach out to the branch for more details', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +CREATE TABLE `contact_messages` ( + `contact_id` varchar(50) NOT NULL, + `contact_name` varchar(50) NOT NULL, + `contact_email` varchar(100) NOT NULL, + `subject` varchar(500) NOT NULL, + `message` varchar(2000) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`contact_id`) +); + +CREATE TABLE `authorities` ( + `id` int NOT NULL AUTO_INCREMENT, + `customer_id` int NOT NULL, + `name` varchar(50) NOT NULL, + PRIMARY KEY (`id`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `authorities_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) +); + +INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWACCOUNT'); + +INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWCARDS'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWLOANS'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWBALANCE'); + +DELETE FROM `authorities`; + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'ROLE_USER'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'ROLE_ADMIN'); \ No newline at end of file diff --git a/section_12/springsecsection_12/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java b/section_12/springsecsection_12/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java new file mode 100644 index 00000000..dc2d07c2 --- /dev/null +++ b/section_12/springsecsection_12/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java @@ -0,0 +1,13 @@ +package com.eazybytes; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class EazyBankBackendApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/section_13/springsecsection_13/.mvn/wrapper/maven-wrapper.jar b/section_13/springsecsection_13/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index c1dd12f17644411d6e840bd5a10c6ecda0175f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| diff --git a/section_13/springsecsection_13/.mvn/wrapper/maven-wrapper.properties b/section_13/springsecsection_13/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index b74bf7fc..00000000 --- a/section_13/springsecsection_13/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1,2 +0,0 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java deleted file mode 100644 index bb2f6802..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.eazybytes.config; - -import com.eazybytes.filter.CsrfCookieFilter; -import jakarta.servlet.http.HttpServletRequest; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationConverter; -import org.springframework.security.web.SecurityFilterChain; -import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; -import org.springframework.security.web.csrf.CookieCsrfTokenRepository; -import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; -import org.springframework.web.cors.CorsConfiguration; -import org.springframework.web.cors.CorsConfigurationSource; - -import java.util.Arrays; -import java.util.Collections; - - -@Configuration -public class ProjectSecurityConfig { - - @Bean - SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { - CsrfTokenRequestAttributeHandler requestHandler = new CsrfTokenRequestAttributeHandler(); - requestHandler.setCsrfRequestAttributeName("_csrf"); - JwtAuthenticationConverter jwtAuthenticationConverter = new JwtAuthenticationConverter(); - jwtAuthenticationConverter.setJwtGrantedAuthoritiesConverter(new KeycloakRoleConverter()); - - http.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) - .cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() { - @Override - public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { - CorsConfiguration config = new CorsConfiguration(); - config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); - config.setAllowedMethods(Collections.singletonList("*")); - config.setAllowCredentials(true); - config.setAllowedHeaders(Collections.singletonList("*")); - config.setExposedHeaders(Arrays.asList("Authorization")); - config.setMaxAge(3600L); - return config; - } - })).csrf((csrf) -> csrf.csrfTokenRequestHandler(requestHandler).ignoringRequestMatchers("/contact","/register") - .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) - .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) - .authorizeHttpRequests((requests)->requests - .requestMatchers("/myAccount").hasRole("USER") - .requestMatchers("/myBalance").hasAnyRole("USER","ADMIN") - .requestMatchers("/myLoans").authenticated() - .requestMatchers("/myCards").hasRole("USER") - .requestMatchers("/user").authenticated() - .requestMatchers("/notices","/contact","/register").permitAll()) - .oauth2ResourceServer(oauth2ResourceServerCustomizer -> - oauth2ResourceServerCustomizer.jwt(jwtCustomizer -> jwtCustomizer.jwtAuthenticationConverter(jwtAuthenticationConverter))); - return http.build(); - } - - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/constants/ApplicationConstants.java deleted file mode 100644 index 7c1aa7ef..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/constants/ApplicationConstants.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.eazybytes.constants; - -public class ApplicationConstants { - - public static final String ERROR_MSG = "An unknown error occured"; - public static final String SUCCESS_MSG = "Request Successfully processed"; - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/LoginController.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/LoginController.java deleted file mode 100644 index 00f73403..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/LoginController.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.eazybytes.controller; - -import com.eazybytes.model.Customer; -import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.core.Authentication; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; - -@RestController -public class LoginController { - - @Autowired - private CustomerRepository customerRepository; - - @RequestMapping("/user") - public Customer getUserDetailsAfterLogin(Authentication authentication) { - List customers = customerRepository.findByEmail(authentication.getName()); - if (customers.size() > 0) { - return customers.get(0); - } else { - return null; - } - - } - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/AccountTransactions.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/AccountTransactions.java deleted file mode 100644 index 8f40fb16..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/AccountTransactions.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; - -import java.sql.Date; - -@Entity -@Table(name="account_transactions") -public class AccountTransactions { - - @Id - @Column(name = "transaction_id") - private String transactionId; - - @Column(name="account_number") - private long accountNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="transaction_dt") - private Date transactionDt; - - @Column(name = "transaction_summary") - private String transactionSummary; - - @Column(name="transaction_type") - private String transactionType; - - @Column(name = "transaction_amt") - private int transactionAmt; - - @Column(name = "closing_balance") - private int closingBalance; - - @Column(name = "create_dt") - private String createDt; - - public String getTransactionId() { - return transactionId; - } - - public void setTransactionId(String transactionId) { - this.transactionId = transactionId; - } - - public long getAccountNumber() { - return accountNumber; - } - - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getTransactionDt() { - return transactionDt; - } - - public void setTransactionDt(Date transactionDt) { - this.transactionDt = transactionDt; - } - - public String getTransactionSummary() { - return transactionSummary; - } - - public void setTransactionSummary(String transactionSummary) { - this.transactionSummary = transactionSummary; - } - - public String getTransactionType() { - return transactionType; - } - - public void setTransactionType(String transactionType) { - this.transactionType = transactionType; - } - - public int getTransactionAmt() { - return transactionAmt; - } - - public void setTransactionAmt(int transactionAmt) { - this.transactionAmt = transactionAmt; - } - - public int getClosingBalance() { - return closingBalance; - } - - public void setClosingBalance(int closingBalance) { - this.closingBalance = closingBalance; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Accounts.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Accounts.java deleted file mode 100644 index dbb62886..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Accounts.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.eazybytes.model; - - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; - -@Entity -public class Accounts { - - @Column(name = "customer_id") - private int customerId; - - @Id - @Column(name="account_number") - private long accountNumber; - - @Column(name="account_type") - private String accountType; - - @Column(name = "branch_address") - private String branchAddress; - - @Column(name = "create_dt") - private String createDt; - - - public int getCustomerId() { - return customerId; - } - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - public long getAccountNumber() { - return accountNumber; - } - public void setAccountNumber(long accountNumber) { - this.accountNumber = accountNumber; - } - public String getAccountType() { - return accountType; - } - public void setAccountType(String accountType) { - this.accountType = accountType; - } - public String getBranchAddress() { - return branchAddress; - } - public void setBranchAddress(String branchAddress) { - this.branchAddress = branchAddress; - } - public String getCreateDt() { - return createDt; - } - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Authority.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Authority.java deleted file mode 100644 index c09f62a2..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Authority.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "authorities") -public class Authority { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - private Long id; - - private String name; - - @ManyToOne - @JoinColumn(name = "customer_id") - private Customer customer; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Customer getCustomer() { - return customer; - } - - public void setCustomer(Customer customer) { - this.customer = customer; - } - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Cards.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Cards.java deleted file mode 100644 index 03a425d5..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Cards.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "cards") -public class Cards { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "card_id") - private int cardId; - - @Column(name = "customer_id") - private int customerId; - - @Column(name = "card_number") - private String cardNumber; - - @Column(name = "card_type") - private String cardType; - - @Column(name = "total_limit") - private int totalLimit; - - @Column(name = "amount_used") - private int amountUsed; - - @Column(name = "available_amount") - private int availableAmount; - - @Column(name = "create_dt") - private Date createDt; - - public int getCardId() { - return cardId; - } - - public void setCardId(int cardId) { - this.cardId = cardId; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public String getCardNumber() { - return cardNumber; - } - - public void setCardNumber(String cardNumber) { - this.cardNumber = cardNumber; - } - - public String getCardType() { - return cardType; - } - - public void setCardType(String cardType) { - this.cardType = cardType; - } - - public int getTotalLimit() { - return totalLimit; - } - - public void setTotalLimit(int totalLimit) { - this.totalLimit = totalLimit; - } - - public int getAmountUsed() { - return amountUsed; - } - - public void setAmountUsed(int amountUsed) { - this.amountUsed = amountUsed; - } - - public int getAvailableAmount() { - return availableAmount; - } - - public void setAvailableAmount(int availableAmount) { - this.availableAmount = availableAmount; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Contact.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Contact.java deleted file mode 100644 index fa5c7ff5..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Contact.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.eazybytes.model; - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; - -import java.sql.Date; - -@Entity -@Table(name = "contact_messages") -public class Contact { - - @Id - @Column(name = "contact_id") - private String contactId; - - @Column(name = "contact_name") - private String contactName; - - @Column(name = "contact_email") - private String contactEmail; - - private String subject; - - private String message; - - @Column(name = "create_dt") - private Date createDt; - - public String getContactId() { - return contactId; - } - - public void setContactId(String contactId) { - this.contactId = contactId; - } - - public String getContactName() { - return contactName; - } - - public void setContactName(String contactName) { - this.contactName = contactName; - } - - public String getContactEmail() { - return contactEmail; - } - - public void setContactEmail(String contactEmail) { - this.contactEmail = contactEmail; - } - - public String getSubject() { - return subject; - } - - public void setSubject(String subject) { - this.subject = subject; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Customer.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Customer.java deleted file mode 100644 index bd3086a5..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Customer.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.eazybytes.model; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonProperty; -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -import java.util.Set; - -@Entity -public class Customer { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "customer_id") - private int id; - - private String name; - - private String email; - - @Column(name = "mobile_number") - private String mobileNumber; - - @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) - private String pwd; - - private String role; - - @Column(name = "create_dt") - private String createDt; - - @JsonIgnore - @OneToMany(mappedBy="customer",fetch=FetchType.EAGER) - private Set authorities; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public String getMobileNumber() { - return mobileNumber; - } - - public void setMobileNumber(String mobileNumber) { - this.mobileNumber = mobileNumber; - } - - public String getPwd() { - return pwd; - } - - public void setPwd(String pwd) { - this.pwd = pwd; - } - - public String getRole() { - return role; - } - - public void setRole(String role) { - this.role = role; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - - public Set getAuthorities() { - return authorities; - } - - public void setAuthorities(Set authorities) { - this.authorities = authorities; - } -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Loans.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Loans.java deleted file mode 100644 index 0622a955..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Loans.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name="loans") -public class Loans { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "loan_number") - private int loanNumber; - - @Column(name = "customer_id") - private int customerId; - - @Column(name="start_dt") - private Date startDt; - - @Column(name = "loan_type") - private String loanType; - - @Column(name = "total_loan") - private int totalLoan; - - @Column(name = "amount_paid") - private int amountPaid; - - @Column(name = "outstanding_amount") - private int outstandingAmount; - - @Column(name = "create_dt") - private String createDt; - - public int getLoanNumber() { - return loanNumber; - } - - public void setLoanNumber(int loanNumber) { - this.loanNumber = loanNumber; - } - - public int getCustomerId() { - return customerId; - } - - public void setCustomerId(int customerId) { - this.customerId = customerId; - } - - public Date getStartDt() { - return startDt; - } - - public void setStartDt(Date startDt) { - this.startDt = startDt; - } - - public String getLoanType() { - return loanType; - } - - public void setLoanType(String loanType) { - this.loanType = loanType; - } - - public int getTotalLoan() { - return totalLoan; - } - - public void setTotalLoan(int totalLoan) { - this.totalLoan = totalLoan; - } - - public int getAmountPaid() { - return amountPaid; - } - - public void setAmountPaid(int amountPaid) { - this.amountPaid = amountPaid; - } - - public int getOutstandingAmount() { - return outstandingAmount; - } - - public void setOutstandingAmount(int outstandingAmount) { - this.outstandingAmount = outstandingAmount; - } - - public String getCreateDt() { - return createDt; - } - - public void setCreateDt(String createDt) { - this.createDt = createDt; - } - -} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Notice.java b/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Notice.java deleted file mode 100644 index 33e08468..00000000 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/model/Notice.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.eazybytes.model; - -import java.sql.Date; - -import jakarta.persistence.*; -import org.hibernate.annotations.GenericGenerator; - -@Entity -@Table(name = "notice_details") -public class Notice { - - @Id - @GeneratedValue(strategy= GenerationType.AUTO,generator="native") - @GenericGenerator(name = "native",strategy = "native") - @Column(name = "notice_id") - private int noticeId; - - @Column(name = "notice_summary") - private String noticeSummary; - - @Column(name = "notice_details") - private String noticeDetails; - - @Column(name = "notic_beg_dt") - private Date noticBegDt; - - @Column(name = "notic_end_dt") - private Date noticEndDt; - - @Column(name = "create_dt") - private Date createDt; - - @Column(name = "update_dt") - private Date updateDt; - - public int getNoticeId() { - return noticeId; - } - - public void setNoticeId(int noticeId) { - this.noticeId = noticeId; - } - - public String getNoticeSummary() { - return noticeSummary; - } - - public void setNoticeSummary(String noticeSummary) { - this.noticeSummary = noticeSummary; - } - - public String getNoticeDetails() { - return noticeDetails; - } - - public void setNoticeDetails(String noticeDetails) { - this.noticeDetails = noticeDetails; - } - - public Date getNoticBegDt() { - return noticBegDt; - } - - public void setNoticBegDt(Date noticBegDt) { - this.noticBegDt = noticBegDt; - } - - public Date getNoticEndDt() { - return noticEndDt; - } - - public void setNoticEndDt(Date noticEndDt) { - this.noticEndDt = noticEndDt; - } - - public Date getCreateDt() { - return createDt; - } - - public void setCreateDt(Date createDt) { - this.createDt = createDt; - } - - public Date getUpdateDt() { - return updateDt; - } - - public void setUpdateDt(Date updateDt) { - this.updateDt = updateDt; - } -} diff --git a/section_13/springsecsection_13/src/main/resources/application.properties b/section_13/springsecsection_13/src/main/resources/application.properties deleted file mode 100644 index b05eed6e..00000000 --- a/section_13/springsecsection_13/src/main/resources/application.properties +++ /dev/null @@ -1,7 +0,0 @@ -spring.datasource.url=jdbc:mysql://springsecurity.cjdg8jrihfh3.us-east-2.rds.amazonaws.com/eazybank -spring.datasource.username=admin -spring.datasource.password=MySQLSpringSecurity -spring.jpa.show-sql=true -spring.jpa.properties.hibernate.format_sql=true - -spring.security.oauth2.resourceserver.jwt.jwk-set-uri = http://localhost:8180/realms/eazybankdev/protocol/openid-connect/certs diff --git a/section_14/springsecOAUTH2/.gitignore b/section_14/springsecOAUTH2/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/section_14/springsecOAUTH2/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/section_14/springsecOAUTH2/.mvn/wrapper/maven-wrapper.properties b/section_14/springsecOAUTH2/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..8f96f52c --- /dev/null +++ b/section_14/springsecOAUTH2/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,19 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.2 +distributionType=only-script +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.7/apache-maven-3.9.7-bin.zip diff --git a/section_14/springsecOAUTH2/mvnw b/section_14/springsecOAUTH2/mvnw new file mode 100755 index 00000000..d7c358e5 --- /dev/null +++ b/section_14/springsecOAUTH2/mvnw @@ -0,0 +1,259 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.2 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/section_14/springsecOAUTH2/mvnw.cmd b/section_14/springsecOAUTH2/mvnw.cmd new file mode 100644 index 00000000..6f779cff --- /dev/null +++ b/section_14/springsecOAUTH2/mvnw.cmd @@ -0,0 +1,149 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.2 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +if ($env:MAVEN_USER_HOME) { + $MAVEN_HOME_PARENT = "$env:MAVEN_USER_HOME/wrapper/dists/$distributionUrlNameMain" +} +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section_12/springsecOAUTH2GitHub/pom.xml b/section_14/springsecOAUTH2/pom.xml similarity index 69% rename from section_12/springsecOAUTH2GitHub/pom.xml rename to section_14/springsecOAUTH2/pom.xml index fa15f2e8..ec7fc6e4 100644 --- a/section_12/springsecOAUTH2GitHub/pom.xml +++ b/section_14/springsecOAUTH2/pom.xml @@ -5,14 +5,27 @@ org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.1 com.eazybytes - springsecOAUTH2GitHub + springsecOAUTH2 0.0.1-SNAPSHOT - springsecOAUTH2GitHub - Demo project for OAUTH2 using GitHub + springsecOAUTH2 + OAUTH2 Demos using Social logins + + + + + + + + + + + + + 21 @@ -21,6 +34,10 @@ org.springframework.boot spring-boot-starter-oauth2-client + + org.springframework.boot + spring-boot-starter-oauth2-resource-server + org.springframework.boot spring-boot-starter-security @@ -29,6 +46,13 @@ org.springframework.boot spring-boot-starter-web + + + org.springframework.boot + spring-boot-devtools + runtime + true + org.springframework.boot spring-boot-starter-test diff --git a/section_14/springsecOAUTH2/src/main/java/com/eazybytes/SpringsecOauth2Application.java b/section_14/springsecOAUTH2/src/main/java/com/eazybytes/SpringsecOauth2Application.java new file mode 100644 index 00000000..1017c828 --- /dev/null +++ b/section_14/springsecOAUTH2/src/main/java/com/eazybytes/SpringsecOauth2Application.java @@ -0,0 +1,13 @@ +package com.eazybytes; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class SpringsecOauth2Application { + + public static void main(String[] args) { + SpringApplication.run(SpringsecOauth2Application.class, args); + } + +} diff --git a/section_14/springsecOAUTH2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section_14/springsecOAUTH2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..92258913 --- /dev/null +++ b/section_14/springsecOAUTH2/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -0,0 +1,42 @@ +package com.eazybytes.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.Customizer; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.oauth2.client.CommonOAuth2Provider; +import org.springframework.security.oauth2.client.registration.ClientRegistration; +import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository; +import org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository; +import org.springframework.security.web.SecurityFilterChain; + +@Configuration +public class ProjectSecurityConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity httpSecurity) throws Exception { + httpSecurity.authorizeHttpRequests((requests) -> requests.requestMatchers("/secure").authenticated() + .anyRequest().permitAll()) + .formLogin(Customizer.withDefaults()) + .oauth2Login(Customizer.withDefaults()); + return httpSecurity.build(); + } + + /*@Bean + ClientRegistrationRepository clientRegistrationRepository() { + ClientRegistration github = githubClientRegistration(); + ClientRegistration facebook = facebookClientRegistration(); + return new InMemoryClientRegistrationRepository(github, facebook); + } + + private ClientRegistration githubClientRegistration() { + return CommonOAuth2Provider.GITHUB.getBuilder("github").clientId("Ov23liCBLLUjii41pS7k") + .clientSecret("9da8734b56aad52d91b268fe6834a8df12447d95").build(); + } + + private ClientRegistration facebookClientRegistration() { + return CommonOAuth2Provider.FACEBOOK.getBuilder("facebook").clientId("974042741122392") + .clientSecret("36d48c25c1767d58b3101551513d7e1e").build(); + }*/ + +} diff --git a/section_14/springsecOAUTH2/src/main/java/com/eazybytes/controller/SecureController.java b/section_14/springsecOAUTH2/src/main/java/com/eazybytes/controller/SecureController.java new file mode 100644 index 00000000..48880515 --- /dev/null +++ b/section_14/springsecOAUTH2/src/main/java/com/eazybytes/controller/SecureController.java @@ -0,0 +1,22 @@ +package com.eazybytes.controller; + +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.oauth2.client.authentication.OAuth2AuthenticationToken; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; + +@Controller +public class SecureController { + + @GetMapping("/secure") + public String securePage(Authentication authentication) { + if(authentication instanceof UsernamePasswordAuthenticationToken usernamePasswordAuthenticationToken){ + System.out.println(usernamePasswordAuthenticationToken); + } else if (authentication instanceof OAuth2AuthenticationToken oAuth2AuthenticationToken) { + System.out.println(oAuth2AuthenticationToken); + } + return "secure.html"; + } + +} diff --git a/section_14/springsecOAUTH2/src/main/resources/application.properties b/section_14/springsecOAUTH2/src/main/resources/application.properties new file mode 100644 index 00000000..15fcee83 --- /dev/null +++ b/section_14/springsecOAUTH2/src/main/resources/application.properties @@ -0,0 +1,11 @@ +spring.application.name=springsecOAUTH2 +spring.security.user.name=${SECURITY_USERNAME:eazybytes} +spring.security.user.password=${SECURITY_PASSWORD:12345} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +spring.security.oauth2.client.registration.github.client-id=${GITHUB_CLIENT_ID:Ov23liCBLLUjii41pS7k} +spring.security.oauth2.client.registration.github.client-secret=${GITHUB_CLIENT_SECRET:9da8734b56aad52d91b268fe6834a8df12447d95} + +spring.security.oauth2.client.registration.facebook.client-id=${GITHUB_CLIENT_ID:974042741122392} +spring.security.oauth2.client.registration.facebook.client-secret=${GITHUB_CLIENT_SECRET:36d48c25c1767d58b3101551513d7e1e} \ No newline at end of file diff --git a/section_12/springsecOAUTH2GitHub/src/main/resources/static/secure.html b/section_14/springsecOAUTH2/src/main/resources/static/secure.html similarity index 50% rename from section_12/springsecOAUTH2GitHub/src/main/resources/static/secure.html rename to section_14/springsecOAUTH2/src/main/resources/static/secure.html index 5753ed86..6710bf2f 100644 --- a/section_12/springsecOAUTH2GitHub/src/main/resources/static/secure.html +++ b/section_14/springsecOAUTH2/src/main/resources/static/secure.html @@ -2,9 +2,9 @@ - Sample OAUTH2 App + Sample OAuth2 Client App -

Successfully logged in using GitHub & OAUTH2 !!

+

Hey, I am secured page !!!!

\ No newline at end of file diff --git a/section_14/springsecOAUTH2/src/test/java/com/eazybytes/SpringsecOauth2ApplicationTests.java b/section_14/springsecOAUTH2/src/test/java/com/eazybytes/SpringsecOauth2ApplicationTests.java new file mode 100644 index 00000000..241c531b --- /dev/null +++ b/section_14/springsecOAUTH2/src/test/java/com/eazybytes/SpringsecOauth2ApplicationTests.java @@ -0,0 +1,13 @@ +package com.eazybytes; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class SpringsecOauth2ApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/section_13/Angular+Project+Setup.pdf b/section_15/Angular+Project+Setup.pdf similarity index 100% rename from section_13/Angular+Project+Setup.pdf rename to section_15/Angular+Project+Setup.pdf diff --git a/section_15/bank-app-ui/.editorconfig b/section_15/bank-app-ui/.editorconfig new file mode 100644 index 00000000..59d9a3a3 --- /dev/null +++ b/section_15/bank-app-ui/.editorconfig @@ -0,0 +1,16 @@ +# Editor configuration, see https://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.ts] +quote_type = single + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/section_13/bank-app-ui/.gitignore b/section_15/bank-app-ui/.gitignore similarity index 100% rename from section_13/bank-app-ui/.gitignore rename to section_15/bank-app-ui/.gitignore diff --git a/section_13/bank-app-ui/.vscode/launch.json b/section_15/bank-app-ui/.vscode/launch.json similarity index 100% rename from section_13/bank-app-ui/.vscode/launch.json rename to section_15/bank-app-ui/.vscode/launch.json diff --git a/section_13/bank-app-ui/.vscode/tasks.json b/section_15/bank-app-ui/.vscode/tasks.json similarity index 100% rename from section_13/bank-app-ui/.vscode/tasks.json rename to section_15/bank-app-ui/.vscode/tasks.json diff --git a/section_10/bank-app-ui/README.md b/section_15/bank-app-ui/README.md similarity index 96% rename from section_10/bank-app-ui/README.md rename to section_15/bank-app-ui/README.md index cf38c4ab..1b6d3f87 100644 --- a/section_10/bank-app-ui/README.md +++ b/section_15/bank-app-ui/README.md @@ -1,6 +1,6 @@ # BankAppUi -This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.1.2. +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.2.3. ## Development server diff --git a/section_13/bank-app-ui/angular.json b/section_15/bank-app-ui/angular.json similarity index 100% rename from section_13/bank-app-ui/angular.json rename to section_15/bank-app-ui/angular.json diff --git a/section_13/bank-app-ui/package-lock.json b/section_15/bank-app-ui/package-lock.json similarity index 100% rename from section_13/bank-app-ui/package-lock.json rename to section_15/bank-app-ui/package-lock.json diff --git a/section_13/bank-app-ui/package.json b/section_15/bank-app-ui/package.json similarity index 100% rename from section_13/bank-app-ui/package.json rename to section_15/bank-app-ui/package.json diff --git a/section_13/bank-app-ui/src/app/app-routing.module.ts b/section_15/bank-app-ui/src/app/app-routing.module.ts similarity index 100% rename from section_13/bank-app-ui/src/app/app-routing.module.ts rename to section_15/bank-app-ui/src/app/app-routing.module.ts diff --git a/section_13/bank-app-ui/src/app/app.component.css b/section_15/bank-app-ui/src/app/app.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/app.component.css rename to section_15/bank-app-ui/src/app/app.component.css diff --git a/section_13/bank-app-ui/src/app/app.component.html b/section_15/bank-app-ui/src/app/app.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/app.component.html rename to section_15/bank-app-ui/src/app/app.component.html diff --git a/section_13/bank-app-ui/src/app/app.component.ts b/section_15/bank-app-ui/src/app/app.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/app.component.ts rename to section_15/bank-app-ui/src/app/app.component.ts diff --git a/section_13/bank-app-ui/src/app/app.module.ts b/section_15/bank-app-ui/src/app/app.module.ts similarity index 100% rename from section_13/bank-app-ui/src/app/app.module.ts rename to section_15/bank-app-ui/src/app/app.module.ts diff --git a/section_13/bank-app-ui/src/app/components/account/account.component.css b/section_15/bank-app-ui/src/app/components/account/account.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/account/account.component.css rename to section_15/bank-app-ui/src/app/components/account/account.component.css diff --git a/section_13/bank-app-ui/src/app/components/account/account.component.html b/section_15/bank-app-ui/src/app/components/account/account.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/account/account.component.html rename to section_15/bank-app-ui/src/app/components/account/account.component.html diff --git a/section_13/bank-app-ui/src/app/components/account/account.component.ts b/section_15/bank-app-ui/src/app/components/account/account.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/account/account.component.ts rename to section_15/bank-app-ui/src/app/components/account/account.component.ts diff --git a/section_13/bank-app-ui/src/app/components/balance/balance.component.css b/section_15/bank-app-ui/src/app/components/balance/balance.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/balance/balance.component.css rename to section_15/bank-app-ui/src/app/components/balance/balance.component.css diff --git a/section_13/bank-app-ui/src/app/components/balance/balance.component.html b/section_15/bank-app-ui/src/app/components/balance/balance.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/balance/balance.component.html rename to section_15/bank-app-ui/src/app/components/balance/balance.component.html diff --git a/section_13/bank-app-ui/src/app/components/balance/balance.component.ts b/section_15/bank-app-ui/src/app/components/balance/balance.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/balance/balance.component.ts rename to section_15/bank-app-ui/src/app/components/balance/balance.component.ts diff --git a/section_13/bank-app-ui/src/app/components/cards/cards.component.css b/section_15/bank-app-ui/src/app/components/cards/cards.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/cards/cards.component.css rename to section_15/bank-app-ui/src/app/components/cards/cards.component.css diff --git a/section_13/bank-app-ui/src/app/components/cards/cards.component.html b/section_15/bank-app-ui/src/app/components/cards/cards.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/cards/cards.component.html rename to section_15/bank-app-ui/src/app/components/cards/cards.component.html diff --git a/section_13/bank-app-ui/src/app/components/cards/cards.component.ts b/section_15/bank-app-ui/src/app/components/cards/cards.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/cards/cards.component.ts rename to section_15/bank-app-ui/src/app/components/cards/cards.component.ts diff --git a/section_13/bank-app-ui/src/app/components/contact/contact.component.css b/section_15/bank-app-ui/src/app/components/contact/contact.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/contact/contact.component.css rename to section_15/bank-app-ui/src/app/components/contact/contact.component.css diff --git a/section_13/bank-app-ui/src/app/components/contact/contact.component.html b/section_15/bank-app-ui/src/app/components/contact/contact.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/contact/contact.component.html rename to section_15/bank-app-ui/src/app/components/contact/contact.component.html diff --git a/section_13/bank-app-ui/src/app/components/contact/contact.component.ts b/section_15/bank-app-ui/src/app/components/contact/contact.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/contact/contact.component.ts rename to section_15/bank-app-ui/src/app/components/contact/contact.component.ts diff --git a/section_13/bank-app-ui/src/app/components/dashboard/dashboard.component.css b/section_15/bank-app-ui/src/app/components/dashboard/dashboard.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/dashboard/dashboard.component.css rename to section_15/bank-app-ui/src/app/components/dashboard/dashboard.component.css diff --git a/section_13/bank-app-ui/src/app/components/dashboard/dashboard.component.html b/section_15/bank-app-ui/src/app/components/dashboard/dashboard.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/dashboard/dashboard.component.html rename to section_15/bank-app-ui/src/app/components/dashboard/dashboard.component.html diff --git a/section_13/bank-app-ui/src/app/components/dashboard/dashboard.component.ts b/section_15/bank-app-ui/src/app/components/dashboard/dashboard.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/dashboard/dashboard.component.ts rename to section_15/bank-app-ui/src/app/components/dashboard/dashboard.component.ts diff --git a/section_13/bank-app-ui/src/app/components/header/header.component.css b/section_15/bank-app-ui/src/app/components/header/header.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/header/header.component.css rename to section_15/bank-app-ui/src/app/components/header/header.component.css diff --git a/section_13/bank-app-ui/src/app/components/header/header.component.html b/section_15/bank-app-ui/src/app/components/header/header.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/header/header.component.html rename to section_15/bank-app-ui/src/app/components/header/header.component.html diff --git a/section_13/bank-app-ui/src/app/components/header/header.component.ts b/section_15/bank-app-ui/src/app/components/header/header.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/header/header.component.ts rename to section_15/bank-app-ui/src/app/components/header/header.component.ts diff --git a/section_13/bank-app-ui/src/app/components/home/home.component.css b/section_15/bank-app-ui/src/app/components/home/home.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/home/home.component.css rename to section_15/bank-app-ui/src/app/components/home/home.component.css diff --git a/section_13/bank-app-ui/src/app/components/home/home.component.html b/section_15/bank-app-ui/src/app/components/home/home.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/home/home.component.html rename to section_15/bank-app-ui/src/app/components/home/home.component.html diff --git a/section_13/bank-app-ui/src/app/components/home/home.component.ts b/section_15/bank-app-ui/src/app/components/home/home.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/home/home.component.ts rename to section_15/bank-app-ui/src/app/components/home/home.component.ts diff --git a/section_13/bank-app-ui/src/app/components/loans/loans.component.css b/section_15/bank-app-ui/src/app/components/loans/loans.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/loans/loans.component.css rename to section_15/bank-app-ui/src/app/components/loans/loans.component.css diff --git a/section_13/bank-app-ui/src/app/components/loans/loans.component.html b/section_15/bank-app-ui/src/app/components/loans/loans.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/loans/loans.component.html rename to section_15/bank-app-ui/src/app/components/loans/loans.component.html diff --git a/section_13/bank-app-ui/src/app/components/loans/loans.component.ts b/section_15/bank-app-ui/src/app/components/loans/loans.component.ts similarity index 100% rename from section_13/bank-app-ui/src/app/components/loans/loans.component.ts rename to section_15/bank-app-ui/src/app/components/loans/loans.component.ts diff --git a/section_13/bank-app-ui/src/app/components/login/login.component.css b/section_15/bank-app-ui/src/app/components/login/login.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/login/login.component.css rename to section_15/bank-app-ui/src/app/components/login/login.component.css diff --git a/section_13/bank-app-ui/src/app/components/login/login.component.html b/section_15/bank-app-ui/src/app/components/login/login.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/login/login.component.html rename to section_15/bank-app-ui/src/app/components/login/login.component.html diff --git a/section9/bank-app-ui/src/app/components/login/login.component.ts b/section_15/bank-app-ui/src/app/components/login/login.component.ts similarity index 100% rename from section9/bank-app-ui/src/app/components/login/login.component.ts rename to section_15/bank-app-ui/src/app/components/login/login.component.ts diff --git a/section_13/bank-app-ui/src/app/components/logout/logout.component.css b/section_15/bank-app-ui/src/app/components/logout/logout.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/logout/logout.component.css rename to section_15/bank-app-ui/src/app/components/logout/logout.component.css diff --git a/section_13/bank-app-ui/src/app/components/logout/logout.component.html b/section_15/bank-app-ui/src/app/components/logout/logout.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/logout/logout.component.html rename to section_15/bank-app-ui/src/app/components/logout/logout.component.html diff --git a/section9/bank-app-ui/src/app/components/logout/logout.component.ts b/section_15/bank-app-ui/src/app/components/logout/logout.component.ts similarity index 89% rename from section9/bank-app-ui/src/app/components/logout/logout.component.ts rename to section_15/bank-app-ui/src/app/components/logout/logout.component.ts index f43d2c0d..3187cc21 100644 --- a/section9/bank-app-ui/src/app/components/logout/logout.component.ts +++ b/section_15/bank-app-ui/src/app/components/logout/logout.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { LoginService } from 'src/app/services/login/login.service'; import { Router } from '@angular/router'; import { User } from 'src/app/model/user.model'; diff --git a/section_13/bank-app-ui/src/app/components/notices/notices.component.css b/section_15/bank-app-ui/src/app/components/notices/notices.component.css similarity index 100% rename from section_13/bank-app-ui/src/app/components/notices/notices.component.css rename to section_15/bank-app-ui/src/app/components/notices/notices.component.css diff --git a/section_13/bank-app-ui/src/app/components/notices/notices.component.html b/section_15/bank-app-ui/src/app/components/notices/notices.component.html similarity index 100% rename from section_13/bank-app-ui/src/app/components/notices/notices.component.html rename to section_15/bank-app-ui/src/app/components/notices/notices.component.html diff --git a/section6/bank-app-ui/src/app/components/notices/notices.component.ts b/section_15/bank-app-ui/src/app/components/notices/notices.component.ts similarity index 91% rename from section6/bank-app-ui/src/app/components/notices/notices.component.ts rename to section_15/bank-app-ui/src/app/components/notices/notices.component.ts index 170de75c..01049e1b 100644 --- a/section6/bank-app-ui/src/app/components/notices/notices.component.ts +++ b/section_15/bank-app-ui/src/app/components/notices/notices.component.ts @@ -1,5 +1,4 @@ import { Component, OnInit } from '@angular/core'; -import { Cards } from 'src/app/model/cards.model'; import { DashboardService } from 'src/app/services/dashboard/dashboard.service'; @Component({ diff --git a/section_13/bank-app-ui/src/app/constants/app.constants.ts b/section_15/bank-app-ui/src/app/constants/app.constants.ts similarity index 100% rename from section_13/bank-app-ui/src/app/constants/app.constants.ts rename to section_15/bank-app-ui/src/app/constants/app.constants.ts diff --git a/section_13/bank-app-ui/src/app/model/account.model.ts b/section_15/bank-app-ui/src/app/model/account.model.ts similarity index 100% rename from section_13/bank-app-ui/src/app/model/account.model.ts rename to section_15/bank-app-ui/src/app/model/account.model.ts diff --git a/section_13/bank-app-ui/src/app/model/account.transactions.model.ts b/section_15/bank-app-ui/src/app/model/account.transactions.model.ts similarity index 100% rename from section_13/bank-app-ui/src/app/model/account.transactions.model.ts rename to section_15/bank-app-ui/src/app/model/account.transactions.model.ts diff --git a/section_13/bank-app-ui/src/app/model/cards.model.ts b/section_15/bank-app-ui/src/app/model/cards.model.ts similarity index 100% rename from section_13/bank-app-ui/src/app/model/cards.model.ts rename to section_15/bank-app-ui/src/app/model/cards.model.ts diff --git a/section_13/bank-app-ui/src/app/model/contact.model.ts b/section_15/bank-app-ui/src/app/model/contact.model.ts similarity index 100% rename from section_13/bank-app-ui/src/app/model/contact.model.ts rename to section_15/bank-app-ui/src/app/model/contact.model.ts diff --git a/section_13/bank-app-ui/src/app/model/loans.model.ts b/section_15/bank-app-ui/src/app/model/loans.model.ts similarity index 100% rename from section_13/bank-app-ui/src/app/model/loans.model.ts rename to section_15/bank-app-ui/src/app/model/loans.model.ts diff --git a/section_13/bank-app-ui/src/app/model/user.model.ts b/section_15/bank-app-ui/src/app/model/user.model.ts similarity index 100% rename from section_13/bank-app-ui/src/app/model/user.model.ts rename to section_15/bank-app-ui/src/app/model/user.model.ts diff --git a/section_13/bank-app-ui/src/app/routeguards/auth.route.ts b/section_15/bank-app-ui/src/app/routeguards/auth.route.ts similarity index 100% rename from section_13/bank-app-ui/src/app/routeguards/auth.route.ts rename to section_15/bank-app-ui/src/app/routeguards/auth.route.ts diff --git a/section_13/bank-app-ui/src/app/services/dashboard/dashboard.service.ts b/section_15/bank-app-ui/src/app/services/dashboard/dashboard.service.ts similarity index 100% rename from section_13/bank-app-ui/src/app/services/dashboard/dashboard.service.ts rename to section_15/bank-app-ui/src/app/services/dashboard/dashboard.service.ts diff --git a/section6/00_UI_Initial Code/bank-app-ui/src/app/services/login/login.service.ts b/section_15/bank-app-ui/src/app/services/login/login.service.ts similarity index 82% rename from section6/00_UI_Initial Code/bank-app-ui/src/app/services/login/login.service.ts rename to section_15/bank-app-ui/src/app/services/login/login.service.ts index 51266d0f..5b72029a 100644 --- a/section6/00_UI_Initial Code/bank-app-ui/src/app/services/login/login.service.ts +++ b/section_15/bank-app-ui/src/app/services/login/login.service.ts @@ -1,7 +1,6 @@ import { Injectable } from '@angular/core'; -import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http'; +import { HttpClient } from '@angular/common/http'; import { User } from "src/app/model/user.model"; -import { Observable, Subject } from 'rxjs'; import { AppConstants } from 'src/app/constants/app.constants'; import { environment } from '../../../environments/environment'; diff --git a/section_13/bank-app-ui/src/assets/.gitkeep b/section_15/bank-app-ui/src/assets/.gitkeep similarity index 100% rename from section_13/bank-app-ui/src/assets/.gitkeep rename to section_15/bank-app-ui/src/assets/.gitkeep diff --git a/section_13/bank-app-ui/src/assets/css/bootstrap.css b/section_15/bank-app-ui/src/assets/css/bootstrap.css similarity index 100% rename from section_13/bank-app-ui/src/assets/css/bootstrap.css rename to section_15/bank-app-ui/src/assets/css/bootstrap.css diff --git a/section_13/bank-app-ui/src/assets/css/font-awesome.css b/section_15/bank-app-ui/src/assets/css/font-awesome.css similarity index 100% rename from section_13/bank-app-ui/src/assets/css/font-awesome.css rename to section_15/bank-app-ui/src/assets/css/font-awesome.css diff --git a/section_13/bank-app-ui/src/assets/fonts/FontAwesome.otf b/section_15/bank-app-ui/src/assets/fonts/FontAwesome.otf similarity index 100% rename from section_13/bank-app-ui/src/assets/fonts/FontAwesome.otf rename to section_15/bank-app-ui/src/assets/fonts/FontAwesome.otf diff --git a/section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot b/section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot similarity index 100% rename from section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot rename to section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.eot diff --git a/section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf b/section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf similarity index 100% rename from section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf rename to section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.ttf diff --git a/section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff b/section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff similarity index 100% rename from section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff rename to section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff diff --git a/section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 b/section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 similarity index 100% rename from section_13/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 rename to section_15/bank-app-ui/src/assets/fonts/fontawesome-webfont.woff2 diff --git a/section_13/bank-app-ui/src/assets/images/logo.png b/section_15/bank-app-ui/src/assets/images/logo.png similarity index 100% rename from section_13/bank-app-ui/src/assets/images/logo.png rename to section_15/bank-app-ui/src/assets/images/logo.png diff --git a/section_15/bank-app-ui/src/environments/environment.development.ts b/section_15/bank-app-ui/src/environments/environment.development.ts new file mode 100644 index 00000000..2fca8742 --- /dev/null +++ b/section_15/bank-app-ui/src/environments/environment.development.ts @@ -0,0 +1,4 @@ +export const environment = { + production: false, + rooturl : 'http://localhost:8080' +}; diff --git a/section_15/bank-app-ui/src/environments/environment.ts b/section_15/bank-app-ui/src/environments/environment.ts new file mode 100644 index 00000000..6453eee4 --- /dev/null +++ b/section_15/bank-app-ui/src/environments/environment.ts @@ -0,0 +1,4 @@ +export const environment = { + production: true, + rooturl : 'http://localhost:8080' +}; diff --git a/section_13/bank-app-ui/src/favicon.ico b/section_15/bank-app-ui/src/favicon.ico similarity index 100% rename from section_13/bank-app-ui/src/favicon.ico rename to section_15/bank-app-ui/src/favicon.ico diff --git a/section9/bank-app-ui/src/index.html b/section_15/bank-app-ui/src/index.html similarity index 100% rename from section9/bank-app-ui/src/index.html rename to section_15/bank-app-ui/src/index.html diff --git a/section6/bank-app-ui/src/main.ts b/section_15/bank-app-ui/src/main.ts similarity index 57% rename from section6/bank-app-ui/src/main.ts rename to section_15/bank-app-ui/src/main.ts index c7b673cf..c58dc05c 100644 --- a/section6/bank-app-ui/src/main.ts +++ b/section_15/bank-app-ui/src/main.ts @@ -1,12 +1,7 @@ -import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; -if (environment.production) { - enableProdMode(); -} platformBrowserDynamic().bootstrapModule(AppModule) .catch(err => console.error(err)); diff --git a/section_13/bank-app-ui/src/styles.css b/section_15/bank-app-ui/src/styles.css similarity index 100% rename from section_13/bank-app-ui/src/styles.css rename to section_15/bank-app-ui/src/styles.css diff --git a/section_10/bank-app-ui/tsconfig.app.json b/section_15/bank-app-ui/tsconfig.app.json similarity index 85% rename from section_10/bank-app-ui/tsconfig.app.json rename to section_15/bank-app-ui/tsconfig.app.json index 82d91dc4..374cc9d2 100644 --- a/section_10/bank-app-ui/tsconfig.app.json +++ b/section_15/bank-app-ui/tsconfig.app.json @@ -6,8 +6,7 @@ "types": [] }, "files": [ - "src/main.ts", - "src/polyfills.ts" + "src/main.ts" ], "include": [ "src/**/*.d.ts" diff --git a/section6/bank-app-ui/tsconfig.json b/section_15/bank-app-ui/tsconfig.json similarity index 88% rename from section6/bank-app-ui/tsconfig.json rename to section_15/bank-app-ui/tsconfig.json index ff06eae1..ed966d43 100644 --- a/section6/bank-app-ui/tsconfig.json +++ b/section_15/bank-app-ui/tsconfig.json @@ -16,10 +16,11 @@ "experimentalDecorators": true, "moduleResolution": "node", "importHelpers": true, - "target": "es2020", - "module": "es2020", + "target": "ES2022", + "module": "ES2022", + "useDefineForClassFields": false, "lib": [ - "es2020", + "ES2022", "dom" ] }, diff --git a/section6/bank-app-ui/tsconfig.spec.json b/section_15/bank-app-ui/tsconfig.spec.json similarity index 81% rename from section6/bank-app-ui/tsconfig.spec.json rename to section_15/bank-app-ui/tsconfig.spec.json index 092345b0..be7e9da7 100644 --- a/section6/bank-app-ui/tsconfig.spec.json +++ b/section_15/bank-app-ui/tsconfig.spec.json @@ -7,10 +7,6 @@ "jasmine" ] }, - "files": [ - "src/test.ts", - "src/polyfills.ts" - ], "include": [ "src/**/*.spec.ts", "src/**/*.d.ts" diff --git a/section_15/springsecsection_15/.gitignore b/section_15/springsecsection_15/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/section_15/springsecsection_15/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/section_15/springsecsection_15/.mvn/wrapper/maven-wrapper.properties b/section_15/springsecsection_15/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..aeccdfdb --- /dev/null +++ b/section_15/springsecsection_15/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section_15/springsecsection_15/mvnw b/section_15/springsecsection_15/mvnw new file mode 100755 index 00000000..ba9212a0 --- /dev/null +++ b/section_15/springsecsection_15/mvnw @@ -0,0 +1,250 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.1 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/section_15/springsecsection_15/mvnw.cmd b/section_15/springsecsection_15/mvnw.cmd new file mode 100644 index 00000000..406932da --- /dev/null +++ b/section_15/springsecsection_15/mvnw.cmd @@ -0,0 +1,146 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.1 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section_13/springsecsection_13/pom.xml b/section_15/springsecsection_15/pom.xml similarity index 76% rename from section_13/springsecsection_13/pom.xml rename to section_15/springsecsection_15/pom.xml index fd4a46b5..16c15543 100644 --- a/section_13/springsecsection_13/pom.xml +++ b/section_15/springsecsection_15/pom.xml @@ -1,41 +1,37 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.3.0 com.eazybytes - springsecsection_13 + springsecsection_15 0.0.1-SNAPSHOT - springsecsection_13 + springsecsection_15 Demo project for Spring Boot and Spring Security - 17 + 21 org.springframework.boot - spring-boot-starter-security + spring-boot-starter-web org.springframework.boot - spring-boot-starter-oauth2-resource-server + spring-boot-starter-security org.springframework.boot - spring-boot-starter-web - - - org.springframework.ldap - spring-ldap-core + spring-boot-starter-oauth2-resource-server - org.springframework.security - spring-security-ldap + org.springframework.boot + spring-boot-starter-data-jpa org.springframework.boot @@ -46,31 +42,32 @@ mysql-connector-j runtime - - org.springframework.boot - spring-boot-starter-data-jpa - org.springframework.boot spring-boot-devtools runtime true + + org.projectlombok + lombok + true + io.jsonwebtoken jjwt-api - 0.12.3 + 0.12.5 io.jsonwebtoken jjwt-impl - 0.12.3 + 0.12.5 runtime io.jsonwebtoken jjwt-jackson - 0.12.3 + 0.12.5 runtime @@ -78,11 +75,6 @@ spring-boot-starter-test test - - org.springframework.security - spring-security-test - test - diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/EazyBankBackendApplication.java new file mode 100644 index 00000000..e194191e --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -0,0 +1,17 @@ +package com.eazybytes; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; + +@SpringBootApplication +@EnableWebSecurity +@EnableMethodSecurity(jsr250Enabled = true,securedEnabled = true) +public class EazyBankBackendApplication { + + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java new file mode 100644 index 00000000..53792158 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java @@ -0,0 +1,32 @@ +package com.eazybytes.config; + +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.oauth2.core.OAuth2AuthenticatedPrincipal; +import org.springframework.security.oauth2.server.resource.introspection.OpaqueTokenAuthenticationConverter; + +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +public class KeycloakOpaqueRoleConverter implements OpaqueTokenAuthenticationConverter { + /** + * @param introspectedToken the bearer token used to perform token introspection + * @param authenticatedPrincipal the result of token introspection + * @return + */ + @Override + public Authentication convert(String introspectedToken, OAuth2AuthenticatedPrincipal authenticatedPrincipal) { + String username = authenticatedPrincipal.getAttribute("preferred_username"); + Map realmAccess = authenticatedPrincipal.getAttribute("realm_access"); + Collection roles = ((List) realmAccess.get("roles")) + .stream().map(roleName -> "ROLE_" + roleName) + .map(SimpleGrantedAuthority::new) + .collect(Collectors.toList()); + return new UsernamePasswordAuthenticationToken(authenticatedPrincipal.getName(), null, + roles); + } +} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java similarity index 72% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java index 390426f7..83cd8a94 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java @@ -11,22 +11,21 @@ import java.util.Map; import java.util.stream.Collectors; -public class KeycloakRoleConverter implements Converter> { - +public class KeycloakRoleConverter implements Converter> { + /** + * @param source the source object to convert, which must be an instance of {@code S} (never {@code null}) + * @return + */ @Override - public Collection convert(Jwt jwt) { - Map realmAccess = (Map) jwt.getClaims().get("realm_access"); - + public Collection convert(Jwt source) { + Map realmAccess = (Map) source.getClaims().get("realm_access"); if (realmAccess == null || realmAccess.isEmpty()) { return new ArrayList<>(); } - Collection returnValue = ((List) realmAccess.get("roles")) .stream().map(roleName -> "ROLE_" + roleName) .map(SimpleGrantedAuthority::new) .collect(Collectors.toList()); - return returnValue; } - } diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..c160f8bf --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -0,0 +1,75 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.filter.CsrfCookieFilter; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationConverter; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +@Configuration +@Profile("!prod") +public class ProjectSecurityConfig { + + /*@Value("${spring.security.oauth2.resourceserver.opaque.introspection-uri}") + String introspectionUri; + + @Value("${spring.security.oauth2.resourceserver.opaque.introspection-client-id}") + String clientId; + + @Value("${spring.security.oauth2.resourceserver.opaque.introspection-client-secret}") + String clientSecret;*/ + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + JwtAuthenticationConverter jwtAuthenticationConverter = new JwtAuthenticationConverter(); + jwtAuthenticationConverter.setJwtGrantedAuthoritiesConverter(new KeycloakRoleConverter()); + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").authenticated() + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.oauth2ResourceServer(rsc -> rsc.jwt(jwtConfigurer -> + jwtConfigurer.jwtAuthenticationConverter(jwtAuthenticationConverter))); + /*http.oauth2ResourceServer(rsc -> rsc.opaqueToken(otc -> otc.authenticationConverter(new KeycloakOpaqueRoleConverter()) + .introspectionUri(this.introspectionUri).introspectionClientCredentials(this.clientId,this.clientSecret)));*/ + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..0e2b4566 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,63 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.filter.CsrfCookieFilter; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationConverter; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + JwtAuthenticationConverter jwtAuthenticationConverter = new JwtAuthenticationConverter(); + jwtAuthenticationConverter.setJwtGrantedAuthoritiesConverter(new KeycloakRoleConverter()); + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("https://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").authenticated() + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.oauth2ResourceServer(rsc -> rsc.jwt(jwtConfigurer -> + jwtConfigurer.jwtAuthenticationConverter(jwtAuthenticationConverter))); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/constants/ApplicationConstants.java new file mode 100644 index 00000000..69df255a --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/constants/ApplicationConstants.java @@ -0,0 +1,5 @@ +package com.eazybytes.constants; + +public final class ApplicationConstants { + +} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/AccountController.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/AccountController.java similarity index 60% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/controller/AccountController.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/controller/AccountController.java index ba2ad2db..14775a22 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/AccountController.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/AccountController.java @@ -4,31 +4,33 @@ import com.eazybytes.model.Customer; import com.eazybytes.repository.AccountsRepository; import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.List; +import java.util.Optional; @RestController +@RequiredArgsConstructor public class AccountController { - @Autowired - private AccountsRepository accountsRepository; - - @Autowired - private CustomerRepository customerRepository; + private final AccountsRepository accountsRepository; + private final CustomerRepository customerRepository; @GetMapping("/myAccount") public Accounts getAccountDetails(@RequestParam String email) { - List customers = customerRepository.findByEmail(email); - if (customers != null && !customers.isEmpty()) { - Accounts accounts = accountsRepository.findByCustomerId(customers.get(0).getId()); + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { + Accounts accounts = accountsRepository.findByCustomerId(optionalCustomer.get().getId()); if (accounts != null) { return accounts; + } else { + return null; } + } else { + return null; } - return null; } + } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/BalanceController.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/BalanceController.java similarity index 55% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/controller/BalanceController.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/controller/BalanceController.java index 3ba59019..8aaf4d11 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/BalanceController.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/BalanceController.java @@ -1,35 +1,38 @@ package com.eazybytes.controller; import com.eazybytes.model.AccountTransactions; +import com.eazybytes.model.Accounts; import com.eazybytes.model.Customer; import com.eazybytes.repository.AccountTransactionsRepository; import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; +import java.util.Optional; @RestController +@RequiredArgsConstructor public class BalanceController { - @Autowired - private CustomerRepository customerRepository; - - @Autowired - private AccountTransactionsRepository accountTransactionsRepository; + private final AccountTransactionsRepository accountTransactionsRepository; + private final CustomerRepository customerRepository; @GetMapping("/myBalance") public List getBalanceDetails(@RequestParam String email) { - List customers = customerRepository.findByEmail(email); - if (customers != null && !customers.isEmpty()) { + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { List accountTransactions = accountTransactionsRepository. - findByCustomerIdOrderByTransactionDtDesc(customers.get(0).getId()); - if (accountTransactions != null ) { + findByCustomerIdOrderByTransactionDtDesc(optionalCustomer.get().getId()); + if (accountTransactions != null) { return accountTransactions; + } else { + return null; } + } else { + return null; } - return null; } } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/CardsController.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/CardsController.java similarity index 58% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/controller/CardsController.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/controller/CardsController.java index 42407613..833c7a95 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/CardsController.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/CardsController.java @@ -4,32 +4,34 @@ import com.eazybytes.model.Customer; import com.eazybytes.repository.CardsRepository; import com.eazybytes.repository.CustomerRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; +import java.util.Optional; @RestController +@RequiredArgsConstructor public class CardsController { - @Autowired - private CardsRepository cardsRepository; - - @Autowired - private CustomerRepository customerRepository; + private final CardsRepository cardsRepository; + private final CustomerRepository customerRepository; @GetMapping("/myCards") public List getCardDetails(@RequestParam String email) { - List customers = customerRepository.findByEmail(email); - if (customers != null && !customers.isEmpty()) { - List cards = cardsRepository.findByCustomerId(customers.get(0).getId()); - if (cards != null ) { + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { + List cards = cardsRepository.findByCustomerId(optionalCustomer.get().getId()); + if (cards != null) { return cards; + } else { + return null; } + } else { + return null; } - return null; } } diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/ContactController.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/ContactController.java new file mode 100644 index 00000000..6f02d39b --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/ContactController.java @@ -0,0 +1,43 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Contact; +import com.eazybytes.repository.ContactRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.access.prepost.PostFilter; +import org.springframework.security.access.prepost.PreFilter; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.sql.Date; +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + +@RestController +@RequiredArgsConstructor +public class ContactController { + + private final ContactRepository contactRepository; + + @PostMapping("/contact") + // @PreFilter("filterObject.contactName != 'Test'") + @PostFilter("filterObject.contactName != 'Test'") + public List saveContactInquiryDetails(@RequestBody List contacts) { + List returnContacts = new ArrayList<>(); + if(!contacts.isEmpty()) { + Contact contact = contacts.getFirst(); + contact.setContactId(getServiceReqNumber()); + contact.setCreateDt(new Date(System.currentTimeMillis())); + Contact savedContact = contactRepository.save(contact); + returnContacts.add(savedContact); + } + return returnContacts; + } + + public String getServiceReqNumber() { + Random random = new Random(); + int ranNum = random.nextInt(999999999 - 9999) + 9999; + return "SR" + ranNum; + } +} diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/LoansController.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/LoansController.java similarity index 53% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/controller/LoansController.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/controller/LoansController.java index d72d4afa..824106dc 100644 --- a/section_13/springsecsection_13/src/main/java/com/eazybytes/controller/LoansController.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/LoansController.java @@ -4,32 +4,36 @@ import com.eazybytes.model.Loans; import com.eazybytes.repository.CustomerRepository; import com.eazybytes.repository.LoanRepository; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; +import org.springframework.security.access.prepost.PostAuthorize; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; +import java.util.Optional; @RestController +@RequiredArgsConstructor public class LoansController { - @Autowired - private LoanRepository loanRepository; - - @Autowired - private CustomerRepository customerRepository; + private final LoanRepository loanRepository; + private final CustomerRepository customerRepository; @GetMapping("/myLoans") + @PostAuthorize("hasRole('USER')") public List getLoanDetails(@RequestParam String email) { - List customers = customerRepository.findByEmail(email); - if (customers != null && !customers.isEmpty()) { - List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(customers.get(0).getId()); - if (loans != null ) { + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { + List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(optionalCustomer.get().getId()); + if (loans != null) { return loans; + } else { + return null; } + } else { + return null; } - return null; } } diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/NoticesController.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/NoticesController.java new file mode 100644 index 00000000..277f7abc --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/NoticesController.java @@ -0,0 +1,32 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Notice; +import com.eazybytes.repository.NoticeRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.http.CacheControl; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.TimeUnit; + +@RestController +@RequiredArgsConstructor +public class NoticesController { + + private final NoticeRepository noticeRepository; + + @GetMapping("/notices") + public ResponseEntity> getNotices() { + List notices = noticeRepository.findAllActiveNotices(); + if (notices != null) { + return ResponseEntity.ok() + .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) + .body(notices); + } else { + return null; + } + } + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/UserController.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..fbcad0d5 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,43 @@ +package com.eazybytes.controller; + +import com.eazybytes.constants.ApplicationConstants; +import com.eazybytes.model.Customer; +import com.eazybytes.model.LoginRequestDTO; +import com.eazybytes.model.LoginResponseDTO; +import com.eazybytes.repository.CustomerRepository; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import lombok.RequiredArgsConstructor; +import org.springframework.core.env.Environment; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.crypto.SecretKey; +import java.nio.charset.StandardCharsets; +import java.sql.Date; +import java.util.Optional; +import java.util.stream.Collectors; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + + @RequestMapping("/user") + public Customer getUserDetailsAfterLogin(Authentication authentication) { + Optional optionalCustomer = customerRepository.findByEmail(authentication.getName()); + return optionalCustomer.orElse(null); + } + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthorizationEvents.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthorizationEvents.java new file mode 100644 index 00000000..69193055 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/events/AuthorizationEvents.java @@ -0,0 +1,20 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.authorization.event.AuthorizationDeniedEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthorizationEvents { + + @EventListener + public void onFailure(AuthorizationDeniedEvent deniedEvent) { + log.error("Authorization failed for the user : {} due to : {}", deniedEvent.getAuthentication().get().getName(), + deniedEvent.getAuthorizationDecision().toString()); + } + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java similarity index 84% rename from section7/springsecsection7/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java index 4e65b58d..be9f9438 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java @@ -11,14 +11,13 @@ public class CsrfCookieFilter extends OncePerRequestFilter { + @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { CsrfToken csrfToken = (CsrfToken) request.getAttribute(CsrfToken.class.getName()); - if(null != csrfToken.getHeaderName()){ - response.setHeader(csrfToken.getHeaderName(), csrfToken.getToken()); - } + // Render the token value to a cookie by causing the deferred token to be loaded + csrfToken.getToken(); filterChain.doFilter(request, response); } - } diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/AccountTransactions.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/AccountTransactions.java new file mode 100644 index 00000000..b2833f59 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/AccountTransactions.java @@ -0,0 +1,46 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter +@Setter +@Table(name="account_transactions") +public class AccountTransactions { + + @Id + @Column(name = "transaction_id") + private String transactionId; + + @Column(name="account_number") + private long accountNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name="transaction_dt") + private Date transactionDt; + + @Column(name = "transaction_summary") + private String transactionSummary; + + @Column(name="transaction_type") + private String transactionType; + + @Column(name = "transaction_amt") + private int transactionAmt; + + @Column(name = "closing_balance") + private int closingBalance; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Accounts.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Accounts.java new file mode 100644 index 00000000..30a6bcba --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Accounts.java @@ -0,0 +1,32 @@ +package com.eazybytes.model; + + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +public class Accounts { + + @Column(name = "customer_id") + private long customerId; + + @Id + @Column(name="account_number") + private long accountNumber; + + @Column(name="account_type") + private String accountType; + + @Column(name = "branch_address") + private String branchAddress; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Authority.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Authority.java new file mode 100644 index 00000000..706f8137 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Authority.java @@ -0,0 +1,22 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +@Entity +@Getter @Setter +@Table(name="authorities") +public class Authority { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + + private String name; + + @ManyToOne + @JoinColumn(name="customer_id") + private Customer customer; + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Cards.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Cards.java new file mode 100644 index 00000000..8a090acb --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Cards.java @@ -0,0 +1,39 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "cards") +public class Cards { + + @Id + @Column(name = "card_id") + private long cardId; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "card_number") + private String cardNumber; + + @Column(name = "card_type") + private String cardType; + + @Column(name = "total_limit") + private int totalLimit; + + @Column(name = "amount_used") + private int amountUsed; + + @Column(name = "available_amount") + private int availableAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Contact.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Contact.java new file mode 100644 index 00000000..3de986d5 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Contact.java @@ -0,0 +1,34 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "contact_messages") +public class Contact { + + @Id + @Column(name = "contact_id") + private String contactId; + + @Column(name = "contact_name") + private String contactName; + + @Column(name = "contact_email") + private String contactEmail; + + private String subject; + + private String message; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Customer.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Customer.java new file mode 100644 index 00000000..0395ce85 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Customer.java @@ -0,0 +1,41 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; +import java.util.Set; + +@Entity +@Getter @Setter +public class Customer { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "customer_id") + private long id; + + private String name; + + private String email; + + @Column(name = "mobile_number") + private String mobileNumber; + + @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) + private String pwd; + + private String role; + + @Column(name = "create_dt") + @JsonIgnore + private Date createDt; + + @OneToMany(mappedBy = "customer", fetch = FetchType.EAGER) + @JsonIgnore + private Set authorities; + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Loans.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Loans.java new file mode 100644 index 00000000..f779eb20 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Loans.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "loans") +public class Loans { + + @Id + @Column(name = "loan_number") + private long loanNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "start_dt") + private Date startDt; + + @Column(name = "loan_type") + private String loanType; + + @Column(name = "total_loan") + private int totalLoan; + + @Column(name = "amount_paid") + private int amountPaid; + + @Column(name = "outstanding_amount") + private int outstandingAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginRequestDTO.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginRequestDTO.java new file mode 100644 index 00000000..3cedcfd4 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginRequestDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginRequestDTO(String username, String password) { +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginResponseDTO.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginResponseDTO.java new file mode 100644 index 00000000..bb263c5a --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/LoginResponseDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginResponseDTO(String status, String jwtToken) { +} diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Notice.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Notice.java new file mode 100644 index 00000000..7ed13868 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/model/Notice.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "notice_details") +public class Notice { + + @Id + @Column(name = "notice_id") + private long noticeId; + + @Column(name = "notice_summary") + private String noticeSummary; + + @Column(name = "notice_details") + private String noticeDetails; + + @Column(name = "notic_beg_dt") + private Date noticBegDt; + + @Column(name = "notic_end_dt") + private Date noticEndDt; + + @JsonIgnore + @Column(name = "create_dt") + private Date createDt; + + @JsonIgnore + @Column(name = "update_dt") + private Date updateDt; + +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java similarity index 86% rename from section7/springsecsection7/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java index 580d4ee3..a06c2fd7 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java @@ -8,8 +8,8 @@ import com.eazybytes.model.AccountTransactions; @Repository -public interface AccountTransactionsRepository extends CrudRepository { +public interface AccountTransactionsRepository extends CrudRepository { - List findByCustomerIdOrderByTransactionDtDesc(int customerId); + List findByCustomerIdOrderByTransactionDtDesc(long customerId); } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/repository/AccountsRepository.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/AccountsRepository.java similarity index 85% rename from section7/springsecsection7/src/main/java/com/eazybytes/repository/AccountsRepository.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/repository/AccountsRepository.java index 0bcc1f5a..6ae5d8f4 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/repository/AccountsRepository.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/AccountsRepository.java @@ -1,13 +1,12 @@ package com.eazybytes.repository; +import com.eazybytes.model.Accounts; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; -import com.eazybytes.model.Accounts; - @Repository public interface AccountsRepository extends CrudRepository { - - Accounts findByCustomerId(int customerId); + + Accounts findByCustomerId(long customerId); } diff --git a/section6/springsecsection6/src/main/java/com/eazybytes/repository/CardsRepository.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/CardsRepository.java similarity index 78% rename from section6/springsecsection6/src/main/java/com/eazybytes/repository/CardsRepository.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/repository/CardsRepository.java index 21b7875c..61e1f4f5 100644 --- a/section6/springsecsection6/src/main/java/com/eazybytes/repository/CardsRepository.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/CardsRepository.java @@ -2,6 +2,7 @@ import java.util.List; +import com.eazybytes.model.Loans; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; @@ -10,6 +11,6 @@ @Repository public interface CardsRepository extends CrudRepository { - List findByCustomerId(int customerId); + List findByCustomerId(long customerId); } diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/repository/ContactRepository.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/ContactRepository.java similarity index 95% rename from section7/springsecsection7/src/main/java/com/eazybytes/repository/ContactRepository.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/repository/ContactRepository.java index 9a042095..0ec283fd 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/repository/ContactRepository.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/ContactRepository.java @@ -6,7 +6,7 @@ import com.eazybytes.model.Contact; @Repository -public interface ContactRepository extends CrudRepository { +public interface ContactRepository extends CrudRepository { } diff --git a/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/CustomerRepository.java new file mode 100644 index 00000000..f8535711 --- /dev/null +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -0,0 +1,14 @@ +package com.eazybytes.repository; + +import com.eazybytes.model.Customer; +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +import java.util.Optional; + +@Repository +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); + +} diff --git a/section7/springsecsection7/src/main/java/com/eazybytes/repository/LoanRepository.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/LoanRepository.java similarity index 63% rename from section7/springsecsection7/src/main/java/com/eazybytes/repository/LoanRepository.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/repository/LoanRepository.java index beecb516..ea804983 100644 --- a/section7/springsecsection7/src/main/java/com/eazybytes/repository/LoanRepository.java +++ b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/LoanRepository.java @@ -3,13 +3,15 @@ import java.util.List; import org.springframework.data.repository.CrudRepository; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Repository; import com.eazybytes.model.Loans; @Repository public interface LoanRepository extends CrudRepository { - - List findByCustomerIdOrderByStartDtDesc(int customerId); + + // @PreAuthorize("hasRole('USER')") + List findByCustomerIdOrderByStartDtDesc(long customerId); } diff --git a/section_13/springsecsection_13/src/main/java/com/eazybytes/repository/NoticeRepository.java b/section_15/springsecsection_15/src/main/java/com/eazybytes/repository/NoticeRepository.java similarity index 100% rename from section_13/springsecsection_13/src/main/java/com/eazybytes/repository/NoticeRepository.java rename to section_15/springsecsection_15/src/main/java/com/eazybytes/repository/NoticeRepository.java diff --git a/section_15/springsecsection_15/src/main/resources/application.properties b/section_15/springsecsection_15/src/main/resources/application.properties new file mode 100644 index 00000000..0e3756e9 --- /dev/null +++ b/section_15/springsecsection_15/src/main/resources/application.properties @@ -0,0 +1,21 @@ +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} + +spring.security.oauth2.resourceserver.jwt.jwk-set-uri=${JWK_SET_URI:http://localhost:8180/realms/eazybankdev/protocol/openid-connect/certs} + +#spring.security.oauth2.resourceserver.opaque.introspection-uri= ${INTROSPECT_URI:http://localhost:8180/realms/eazybankdev/protocol/openid-connect/token/introspect} +#spring.security.oauth2.resourceserver.opaque.introspection-client-id=${INTROSPECT_ID:eazybankintrospect} +#spring.security.oauth2.resourceserver.opaque.introspection-client-secret=${INTROSPECT_SECRET:c1BK9Bg2REeydBbvUoUeKCbD2bvJzXGj} \ No newline at end of file diff --git a/section_15/springsecsection_15/src/main/resources/application_prod.properties b/section_15/springsecsection_15/src/main/resources/application_prod.properties new file mode 100644 index 00000000..2ad41f48 --- /dev/null +++ b/section_15/springsecsection_15/src/main/resources/application_prod.properties @@ -0,0 +1,15 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} + +spring.security.oauth2.resourceserver.jwt.jwk-set-uri=${JWK_SET_URI:http://localhost:8180/realms/eazybankdev/protocol/openid-connect/certs} diff --git a/section_15/springsecsection_15/src/main/resources/sql/scripts.sql b/section_15/springsecsection_15/src/main/resources/sql/scripts.sql new file mode 100644 index 00000000..86a4af5e --- /dev/null +++ b/section_15/springsecsection_15/src/main/resources/sql/scripts.sql @@ -0,0 +1,192 @@ +drop table `authorities`; +drop table `users`; +drop table `customer`; + +CREATE TABLE `customer` ( + `customer_id` int NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + `email` varchar(100) NOT NULL, + `mobile_number` varchar(20) NOT NULL, + `pwd` varchar(500) NOT NULL, + `role` varchar(100) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`customer_id`) +); + +INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) + VALUES ('Happy','happy@example.com','5334122365', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin',CURDATE()); + +CREATE TABLE `accounts` ( + `customer_id` int NOT NULL, + `account_number` int NOT NULL, + `account_type` varchar(100) NOT NULL, + `branch_address` varchar(200) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`account_number`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `accounts` (`customer_id`, `account_number`, `account_type`, `branch_address`, `create_dt`) + VALUES (1, 1865764534, 'Savings', '123 Main Street, New York', CURDATE()); + +CREATE TABLE `account_transactions` ( + `transaction_id` varchar(200) NOT NULL, + `account_number` int NOT NULL, + `customer_id` int NOT NULL, + `transaction_dt` date NOT NULL, + `transaction_summary` varchar(200) NOT NULL, + `transaction_type` varchar(100) NOT NULL, + `transaction_amt` int NOT NULL, + `closing_balance` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`transaction_id`), + KEY `customer_id` (`customer_id`), + KEY `account_number` (`account_number`), + CONSTRAINT `accounts_ibfk_2` FOREIGN KEY (`account_number`) REFERENCES `accounts` (`account_number`) ON DELETE CASCADE, + CONSTRAINT `acct_user_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + + + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 7 DAY), 'Coffee Shop', 'Withdrawal', 30,34500,DATE_SUB(CURDATE(), INTERVAL 7 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 6 DAY), 'Uber', 'Withdrawal', 100,34400,DATE_SUB(CURDATE(), INTERVAL 6 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 5 DAY), 'Self Deposit', 'Deposit', 500,34900,DATE_SUB(CURDATE(), INTERVAL 5 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 4 DAY), 'Ebay', 'Withdrawal', 600,34300,DATE_SUB(CURDATE(), INTERVAL 4 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 2 DAY), 'OnlineTransfer', 'Deposit', 700,35000,DATE_SUB(CURDATE(), INTERVAL 2 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 1 DAY), 'Amazon.com', 'Withdrawal', 100,34900,DATE_SUB(CURDATE(), INTERVAL 1 DAY)); + + +CREATE TABLE `loans` ( + `loan_number` int NOT NULL AUTO_INCREMENT, + `customer_id` int NOT NULL, + `start_dt` date NOT NULL, + `loan_type` varchar(100) NOT NULL, + `total_loan` int NOT NULL, + `amount_paid` int NOT NULL, + `outstanding_amount` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`loan_number`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `loan_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2020-10-13', 'Home', 200000, 50000, 150000, '2020-10-13'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2020-06-06', 'Vehicle', 40000, 10000, 30000, '2020-06-06'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2018-02-14', 'Home', 50000, 10000, 40000, '2018-02-14'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2018-02-14', 'Personal', 10000, 3500, 6500, '2018-02-14'); + +CREATE TABLE `cards` ( + `card_id` int NOT NULL AUTO_INCREMENT, + `card_number` varchar(100) NOT NULL, + `customer_id` int NOT NULL, + `card_type` varchar(100) NOT NULL, + `total_limit` int NOT NULL, + `amount_used` int NOT NULL, + `available_amount` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`card_id`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `card_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('4565XXXX4656', 1, 'Credit', 10000, 500, 9500, CURDATE()); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('3455XXXX8673', 1, 'Credit', 7500, 600, 6900, CURDATE()); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('2359XXXX9346', 1, 'Credit', 20000, 4000, 16000, CURDATE()); + +CREATE TABLE `notice_details` ( + `notice_id` int NOT NULL AUTO_INCREMENT, + `notice_summary` varchar(200) NOT NULL, + `notice_details` varchar(500) NOT NULL, + `notic_beg_dt` date NOT NULL, + `notic_end_dt` date DEFAULT NULL, + `create_dt` date DEFAULT NULL, + `update_dt` date DEFAULT NULL, + PRIMARY KEY (`notice_id`) +); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Home Loan Interest rates reduced', 'Home loan interest rates are reduced as per the goverment guidelines. The updated rates will be effective immediately', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Net Banking Offers', 'Customers who will opt for Internet banking while opening a saving account will get a $50 amazon voucher', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Mobile App Downtime', 'The mobile application of the EazyBank will be down from 2AM-5AM on 12/05/2020 due to maintenance activities', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('E Auction notice', 'There will be a e-auction on 12/08/2020 on the Bank website for all the stubborn arrears.Interested parties can participate in the e-auction', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Launch of Millennia Cards', 'Millennia Credit Cards are launched for the premium customers of EazyBank. With these cards, you will get 5% cashback for each purchase', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('COVID-19 Insurance', 'EazyBank launched an insurance policy which will cover COVID-19 expenses. Please reach out to the branch for more details', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +CREATE TABLE `contact_messages` ( + `contact_id` varchar(50) NOT NULL, + `contact_name` varchar(50) NOT NULL, + `contact_email` varchar(100) NOT NULL, + `subject` varchar(500) NOT NULL, + `message` varchar(2000) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`contact_id`) +); + +CREATE TABLE `authorities` ( + `id` int NOT NULL AUTO_INCREMENT, + `customer_id` int NOT NULL, + `name` varchar(50) NOT NULL, + PRIMARY KEY (`id`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `authorities_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) +); + +INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWACCOUNT'); + +INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWCARDS'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWLOANS'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWBALANCE'); + +DELETE FROM `authorities`; + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'ROLE_USER'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'ROLE_ADMIN'); \ No newline at end of file diff --git a/section_15/springsecsection_15/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java b/section_15/springsecsection_15/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java new file mode 100644 index 00000000..dc2d07c2 --- /dev/null +++ b/section_15/springsecsection_15/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java @@ -0,0 +1,13 @@ +package com.eazybytes; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class EazyBankBackendApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/section_16/authserver/.gitignore b/section_16/authserver/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/section_16/authserver/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/section_16/authserver/.mvn/wrapper/maven-wrapper.properties b/section_16/authserver/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..8f96f52c --- /dev/null +++ b/section_16/authserver/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,19 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.2 +distributionType=only-script +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.7/apache-maven-3.9.7-bin.zip diff --git a/section_16/authserver/mvnw b/section_16/authserver/mvnw new file mode 100755 index 00000000..d7c358e5 --- /dev/null +++ b/section_16/authserver/mvnw @@ -0,0 +1,259 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.2 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/section_16/authserver/mvnw.cmd b/section_16/authserver/mvnw.cmd new file mode 100644 index 00000000..6f779cff --- /dev/null +++ b/section_16/authserver/mvnw.cmd @@ -0,0 +1,149 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.2 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +if ($env:MAVEN_USER_HOME) { + $MAVEN_HOME_PARENT = "$env:MAVEN_USER_HOME/wrapper/dists/$distributionUrlNameMain" +} +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section_16/authserver/pom.xml b/section_16/authserver/pom.xml new file mode 100644 index 00000000..f9914590 --- /dev/null +++ b/section_16/authserver/pom.xml @@ -0,0 +1,86 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.3.1 + + + com.eazybytes + authserver + 0.0.1-SNAPSHOT + authserver + Demo project for Auth Server + + + + + + + + + + + + + + + 21 + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-jdbc + + + org.springframework.boot + spring-boot-starter-oauth2-authorization-server + + + + org.springframework.boot + spring-boot-devtools + runtime + true + + + com.mysql + mysql-connector-j + runtime + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + + + diff --git a/section_16/authserver/src/main/java/com/eazybytes/authserver/AuthserverApplication.java b/section_16/authserver/src/main/java/com/eazybytes/authserver/AuthserverApplication.java new file mode 100644 index 00000000..fa6c715f --- /dev/null +++ b/section_16/authserver/src/main/java/com/eazybytes/authserver/AuthserverApplication.java @@ -0,0 +1,13 @@ +package com.eazybytes.authserver; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class AuthserverApplication { + + public static void main(String[] args) { + SpringApplication.run(AuthserverApplication.class, args); + } + +} diff --git a/section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUserDetailsService.java b/section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUserDetailsService.java new file mode 100644 index 00000000..d3ac5a69 --- /dev/null +++ b/section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUserDetailsService.java @@ -0,0 +1,32 @@ +package com.eazybytes.authserver.config; + +import com.eazybytes.authserver.model.Customer; +import com.eazybytes.authserver.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.User; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +public class EazyBankUserDetailsService implements UserDetailsService { + + private final CustomerRepository customerRepository; + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + Customer customer = customerRepository.findByEmail(username).orElseThrow(() -> new + UsernameNotFoundException("User details not found for the user: " + username)); + List authorities = customer.getAuthorities().stream().map(authority -> new + SimpleGrantedAuthority(authority.getName())).collect(Collectors.toList()); + return new User(customer.getEmail(), customer.getPwd(), authorities); + } + +} diff --git a/section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUsernamePwdAuthenticationProvider.java b/section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUsernamePwdAuthenticationProvider.java new file mode 100644 index 00000000..0d3712ff --- /dev/null +++ b/section_16/authserver/src/main/java/com/eazybytes/authserver/config/EazyBankUsernamePwdAuthenticationProvider.java @@ -0,0 +1,38 @@ +package com.eazybytes.authserver.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Component; + +@Component +@RequiredArgsConstructor +public class EazyBankUsernamePwdAuthenticationProvider implements AuthenticationProvider { + + private final UserDetailsService userDetailsService; + private final PasswordEncoder passwordEncoder; + + @Override + public Authentication authenticate(Authentication authentication) throws AuthenticationException { + String username = authentication.getName(); + String pwd = authentication.getCredentials().toString(); + UserDetails userDetails = userDetailsService.loadUserByUsername(username); + if (passwordEncoder.matches(pwd, userDetails.getPassword())) { + return new UsernamePasswordAuthenticationToken(username, pwd, userDetails.getAuthorities()); + } else { + throw new BadCredentialsException("Invalid password!"); + } + } + + @Override + public boolean supports(Class authentication) { + return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(authentication)); + } + +} diff --git a/section_16/authserver/src/main/java/com/eazybytes/authserver/config/ProjectSecurityConfig.java b/section_16/authserver/src/main/java/com/eazybytes/authserver/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..cc86ce22 --- /dev/null +++ b/section_16/authserver/src/main/java/com/eazybytes/authserver/config/ProjectSecurityConfig.java @@ -0,0 +1,212 @@ +package com.eazybytes.authserver.config; + +import com.nimbusds.jose.jwk.JWKSet; +import com.nimbusds.jose.jwk.RSAKey; +import com.nimbusds.jose.jwk.source.ImmutableJWKSet; +import com.nimbusds.jose.jwk.source.JWKSource; +import com.nimbusds.jose.proc.SecurityContext; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.annotation.Order; +import org.springframework.http.MediaType; +import org.springframework.security.authentication.password.CompromisedPasswordChecker; +import org.springframework.security.config.Customizer; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.core.authority.AuthorityUtils; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.oauth2.core.AuthorizationGrantType; +import org.springframework.security.oauth2.core.ClientAuthenticationMethod; +import org.springframework.security.oauth2.core.oidc.OidcScopes; +import org.springframework.security.oauth2.jwt.JwtDecoder; +import org.springframework.security.oauth2.server.authorization.OAuth2TokenType; +import org.springframework.security.oauth2.server.authorization.client.InMemoryRegisteredClientRepository; +import org.springframework.security.oauth2.server.authorization.client.RegisteredClient; +import org.springframework.security.oauth2.server.authorization.client.RegisteredClientRepository; +import org.springframework.security.oauth2.server.authorization.config.annotation.web.configuration.OAuth2AuthorizationServerConfiguration; +import org.springframework.security.oauth2.server.authorization.config.annotation.web.configurers.OAuth2AuthorizationServerConfigurer; +import org.springframework.security.oauth2.server.authorization.settings.AuthorizationServerSettings; +import org.springframework.security.oauth2.server.authorization.settings.ClientSettings; +import org.springframework.security.oauth2.server.authorization.settings.OAuth2TokenFormat; +import org.springframework.security.oauth2.server.authorization.settings.TokenSettings; +import org.springframework.security.oauth2.server.authorization.token.JwtEncodingContext; +import org.springframework.security.oauth2.server.authorization.token.OAuth2TokenCustomizer; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint; +import org.springframework.security.web.authentication.password.HaveIBeenPwnedRestApiPasswordChecker; +import org.springframework.security.web.util.matcher.MediaTypeRequestMatcher; + +import java.security.KeyPair; +import java.security.KeyPairGenerator; +import java.security.interfaces.RSAPrivateKey; +import java.security.interfaces.RSAPublicKey; +import java.time.Duration; +import java.util.Collections; +import java.util.List; +import java.util.Set; +import java.util.UUID; +import java.util.stream.Collectors; + +@Configuration +@EnableWebSecurity +public class ProjectSecurityConfig { + + @Bean + @Order(1) + public SecurityFilterChain authorizationServerSecurityFilterChain(HttpSecurity http) + throws Exception { + OAuth2AuthorizationServerConfiguration.applyDefaultSecurity(http); + http.getConfigurer(OAuth2AuthorizationServerConfigurer.class) + .oidc(Customizer.withDefaults()); // Enable OpenID Connect 1.0 + http + // Redirect to the login page when not authenticated from the + // authorization endpoint + .exceptionHandling((exceptions) -> exceptions + .defaultAuthenticationEntryPointFor( + new LoginUrlAuthenticationEntryPoint("/login"), + new MediaTypeRequestMatcher(MediaType.TEXT_HTML) + ) + ) + // Accept access tokens for User Info and/or Client Registration + .oauth2ResourceServer((resourceServer) -> resourceServer + .jwt(Customizer.withDefaults())); + + return http.build(); + } + + @Bean + @Order(2) + public SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) + throws Exception { + http + .authorizeHttpRequests((authorize) -> authorize + .anyRequest().authenticated() + ) + // Form login handles the redirect to the login page from the + // authorization server filter chain + .formLogin(Customizer.withDefaults()); + + return http.build(); + } + + @Bean + public RegisteredClientRepository registeredClientRepository() { + RegisteredClient clientCredClient = RegisteredClient.withId(UUID.randomUUID().toString()) + .clientId("eazybankapi") + .clientSecret("{noop}VxubZgAXyyTq9lGjj3qGvWNsHtE4SqTq") + .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_BASIC) + .authorizationGrantType(AuthorizationGrantType.CLIENT_CREDENTIALS) + .scopes(scopeConfig -> scopeConfig.addAll(List.of(OidcScopes.OPENID, "ADMIN", "USER"))) + .tokenSettings(TokenSettings.builder().accessTokenTimeToLive(Duration.ofMinutes(10)) + .accessTokenFormat(OAuth2TokenFormat.SELF_CONTAINED).build()).build(); + + RegisteredClient introspectClient = RegisteredClient.withId(UUID.randomUUID().toString()) + .clientId("eazybankintrospect") + .clientSecret("{noop}c1BK9Bg2REeydBbvUoUeKCbD2bvJzXGj") + .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_BASIC) + .authorizationGrantType(AuthorizationGrantType.CLIENT_CREDENTIALS) + .scopes(scopeConfig -> scopeConfig.addAll(List.of(OidcScopes.OPENID))) + .tokenSettings(TokenSettings.builder().accessTokenTimeToLive(Duration.ofMinutes(10)) + .accessTokenFormat(OAuth2TokenFormat.REFERENCE).build()).build(); + + RegisteredClient authCodeClient = RegisteredClient.withId(UUID.randomUUID().toString()) + .clientId("eazybankclient") + .clientSecret("{noop}Qw3rTy6UjMnB9zXcV2pL0sKjHn5TxQqB") + .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_POST) + .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_BASIC) + .authorizationGrantType(AuthorizationGrantType.AUTHORIZATION_CODE) + .authorizationGrantType(AuthorizationGrantType.REFRESH_TOKEN) + .redirectUri("https://oauth.pstmn.io/v1/callback") + .scope(OidcScopes.OPENID).scope(OidcScopes.EMAIL) + .tokenSettings(TokenSettings.builder().accessTokenTimeToLive(Duration.ofMinutes(10)) + .refreshTokenTimeToLive(Duration.ofHours(8)).reuseRefreshTokens(false) + .accessTokenFormat(OAuth2TokenFormat.SELF_CONTAINED).build()).build(); + + RegisteredClient pkceClient = RegisteredClient.withId(UUID.randomUUID().toString()) + .clientId("eazypublicclient") + .clientAuthenticationMethod(ClientAuthenticationMethod.NONE) + .clientAuthenticationMethod(ClientAuthenticationMethod.CLIENT_SECRET_BASIC) + .authorizationGrantType(AuthorizationGrantType.AUTHORIZATION_CODE) + .authorizationGrantType(AuthorizationGrantType.REFRESH_TOKEN) + .redirectUri("https://oauth.pstmn.io/v1/callback") + .scope(OidcScopes.OPENID).scope(OidcScopes.EMAIL) + .clientSettings(ClientSettings.builder().requireProofKey(true).build()) + .tokenSettings(TokenSettings.builder().accessTokenTimeToLive(Duration.ofMinutes(10)) + .refreshTokenTimeToLive(Duration.ofHours(8)).reuseRefreshTokens(false) + .accessTokenFormat(OAuth2TokenFormat.SELF_CONTAINED).build()).build(); + + return new InMemoryRegisteredClientRepository(clientCredClient, introspectClient, authCodeClient, pkceClient); + } + + @Bean + public JWKSource jwkSource() { + KeyPair keyPair = generateRsaKey(); + RSAPublicKey publicKey = (RSAPublicKey) keyPair.getPublic(); + RSAPrivateKey privateKey = (RSAPrivateKey) keyPair.getPrivate(); + RSAKey rsaKey = new RSAKey.Builder(publicKey) + .privateKey(privateKey) + .keyID(UUID.randomUUID().toString()) + .build(); + JWKSet jwkSet = new JWKSet(rsaKey); + return new ImmutableJWKSet<>(jwkSet); + } + + private static KeyPair generateRsaKey() { + KeyPair keyPair; + try { + KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA"); + keyPairGenerator.initialize(2048); + keyPair = keyPairGenerator.generateKeyPair(); + } catch (Exception ex) { + throw new IllegalStateException(ex); + } + return keyPair; + } + + @Bean + public JwtDecoder jwtDecoder(JWKSource jwkSource) { + return OAuth2AuthorizationServerConfiguration.jwtDecoder(jwkSource); + } + + @Bean + public AuthorizationServerSettings authorizationServerSettings() { + return AuthorizationServerSettings.builder().build(); + } + + @Bean + public OAuth2TokenCustomizer jwtTokenCustomizer() { + return (context) -> { + if (context.getTokenType().equals(OAuth2TokenType.ACCESS_TOKEN)) { + context.getClaims().claims((claims) -> { + if (context.getAuthorizationGrantType().equals(AuthorizationGrantType.CLIENT_CREDENTIALS)) { + Set roles = context.getClaims().build().getClaim("scope"); + claims.put("roles", roles); + } else if (context.getAuthorizationGrantType().equals(AuthorizationGrantType.AUTHORIZATION_CODE)) { + Set roles = AuthorityUtils.authorityListToSet(context.getPrincipal().getAuthorities()) + .stream() + .map(c -> c.replaceFirst("^ROLE_", "")) + .collect(Collectors.collectingAndThen(Collectors.toSet(), Collections::unmodifiableSet)); + claims.put("roles", roles); + } + }); + } + }; + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + + /** + * From Spring Security 6.3 version + * + * @return + */ + @Bean + public CompromisedPasswordChecker compromisedPasswordChecker() { + return new HaveIBeenPwnedRestApiPasswordChecker(); + } + +} diff --git a/section_16/authserver/src/main/java/com/eazybytes/authserver/model/Authority.java b/section_16/authserver/src/main/java/com/eazybytes/authserver/model/Authority.java new file mode 100644 index 00000000..82aa1c5c --- /dev/null +++ b/section_16/authserver/src/main/java/com/eazybytes/authserver/model/Authority.java @@ -0,0 +1,21 @@ +package com.eazybytes.authserver.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +@Entity +@Getter +@Setter +@Table(name = "authorities") +public class Authority { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + + private String name; + + @ManyToOne + @JoinColumn(name = "customer_id") + private Customer customer; +} diff --git a/section_16/authserver/src/main/java/com/eazybytes/authserver/model/Customer.java b/section_16/authserver/src/main/java/com/eazybytes/authserver/model/Customer.java new file mode 100644 index 00000000..1007d4c6 --- /dev/null +++ b/section_16/authserver/src/main/java/com/eazybytes/authserver/model/Customer.java @@ -0,0 +1,41 @@ +package com.eazybytes.authserver.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; +import java.util.Set; + +@Entity +@Getter +@Setter +public class Customer { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "customer_id") + private long id; + + private String name; + + private String email; + + @Column(name = "mobile_number") + private String mobileNumber; + + @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) + private String pwd; + + private String role; + + @Column(name = "create_dt") + @JsonIgnore + private Date createDt; + + @OneToMany(mappedBy = "customer", fetch = FetchType.EAGER) + @JsonIgnore + private Set authorities; +} diff --git a/section_16/authserver/src/main/java/com/eazybytes/authserver/repository/CustomerRepository.java b/section_16/authserver/src/main/java/com/eazybytes/authserver/repository/CustomerRepository.java new file mode 100644 index 00000000..85a4e7dc --- /dev/null +++ b/section_16/authserver/src/main/java/com/eazybytes/authserver/repository/CustomerRepository.java @@ -0,0 +1,14 @@ +package com.eazybytes.authserver.repository; + +import com.eazybytes.authserver.model.Customer; +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +import java.util.Optional; + +@Repository +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); + +} diff --git a/section_16/authserver/src/main/resources/application.properties b/section_16/authserver/src/main/resources/application.properties new file mode 100644 index 00000000..75c50e6c --- /dev/null +++ b/section_16/authserver/src/main/resources/application.properties @@ -0,0 +1,12 @@ +spring.application.name=${AS_NAME:authserver} + +server.port= ${AS_SERVER_PORT:9000} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} diff --git a/section_16/authserver/src/test/java/com/eazybytes/authserver/AuthserverApplicationTests.java b/section_16/authserver/src/test/java/com/eazybytes/authserver/AuthserverApplicationTests.java new file mode 100644 index 00000000..a5a8db5e --- /dev/null +++ b/section_16/authserver/src/test/java/com/eazybytes/authserver/AuthserverApplicationTests.java @@ -0,0 +1,13 @@ +package com.eazybytes.authserver; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class AuthserverApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/section_16/springsecsection_16/.gitignore b/section_16/springsecsection_16/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/section_16/springsecsection_16/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/section_16/springsecsection_16/.mvn/wrapper/maven-wrapper.properties b/section_16/springsecsection_16/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 00000000..aeccdfdb --- /dev/null +++ b/section_16/springsecsection_16/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,18 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +wrapperVersion=3.3.1 +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip diff --git a/section_16/springsecsection_16/mvnw b/section_16/springsecsection_16/mvnw new file mode 100755 index 00000000..ba9212a0 --- /dev/null +++ b/section_16/springsecsection_16/mvnw @@ -0,0 +1,250 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.1 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl="${value-}" ;; + distributionSha256Sum) distributionSha256Sum="${value-}" ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/section_16/springsecsection_16/mvnw.cmd b/section_16/springsecsection_16/mvnw.cmd new file mode 100644 index 00000000..406932da --- /dev/null +++ b/section_16/springsecsection_16/mvnw.cmd @@ -0,0 +1,146 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM https://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.1 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/section_16/springsecsection_16/pom.xml b/section_16/springsecsection_16/pom.xml new file mode 100644 index 00000000..f7c3e98c --- /dev/null +++ b/section_16/springsecsection_16/pom.xml @@ -0,0 +1,89 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.3.0 + + + com.eazybytes + springsecsection_16 + 0.0.1-SNAPSHOT + springsecsection_16 + Demo project for Spring Boot and Spring Security + + 21 + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-oauth2-resource-server + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-jdbc + + + com.mysql + mysql-connector-j + runtime + + + org.springframework.boot + spring-boot-devtools + runtime + true + + + org.projectlombok + lombok + true + + + io.jsonwebtoken + jjwt-api + 0.12.5 + + + io.jsonwebtoken + jjwt-impl + 0.12.5 + runtime + + + io.jsonwebtoken + jjwt-jackson + 0.12.5 + runtime + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/EazyBankBackendApplication.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/EazyBankBackendApplication.java new file mode 100644 index 00000000..e194191e --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/EazyBankBackendApplication.java @@ -0,0 +1,17 @@ +package com.eazybytes; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; + +@SpringBootApplication +@EnableWebSecurity +@EnableMethodSecurity(jsr250Enabled = true,securedEnabled = true) +public class EazyBankBackendApplication { + + public static void main(String[] args) { + SpringApplication.run(EazyBankBackendApplication.class, args); + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java new file mode 100644 index 00000000..7fd1fc2c --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakOpaqueRoleConverter.java @@ -0,0 +1,32 @@ +package com.eazybytes.config; + +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.oauth2.core.OAuth2AuthenticatedPrincipal; +import org.springframework.security.oauth2.server.resource.introspection.OpaqueTokenAuthenticationConverter; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +public class KeycloakOpaqueRoleConverter implements OpaqueTokenAuthenticationConverter { + /** + * @param introspectedToken the bearer token used to perform token introspection + * @param authenticatedPrincipal the result of token introspection + * @return + */ + @Override + public Authentication convert(String introspectedToken, OAuth2AuthenticatedPrincipal authenticatedPrincipal) { + ArrayList roles = authenticatedPrincipal.getAttribute("scope"); + Collection grantedAuthorities = roles + .stream().map(roleName -> "ROLE_" + roleName) + .map(SimpleGrantedAuthority::new) + .collect(Collectors.toList()); + return new UsernamePasswordAuthenticationToken(authenticatedPrincipal.getName(), null, + grantedAuthorities); + } +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java new file mode 100644 index 00000000..3ac98e7e --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/KeycloakRoleConverter.java @@ -0,0 +1,30 @@ +package com.eazybytes.config; + +import org.springframework.core.convert.converter.Converter; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.oauth2.jwt.Jwt; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +public class KeycloakRoleConverter implements Converter> { + /** + * @param source the source object to convert, which must be an instance of {@code S} (never {@code null}) + * @return + */ + @Override + public Collection convert(Jwt source) { + ArrayList roles = (ArrayList) source.getClaims().get("roles"); + if (roles == null || roles.isEmpty()) { + return new ArrayList<>(); + } + Collection returnValue = roles.stream().map(roleName -> "ROLE_" + roleName) + .map(SimpleGrantedAuthority::new) + .collect(Collectors.toList()); + return returnValue; + } +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java new file mode 100644 index 00000000..c160f8bf --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityConfig.java @@ -0,0 +1,75 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.filter.CsrfCookieFilter; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationConverter; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +@Configuration +@Profile("!prod") +public class ProjectSecurityConfig { + + /*@Value("${spring.security.oauth2.resourceserver.opaque.introspection-uri}") + String introspectionUri; + + @Value("${spring.security.oauth2.resourceserver.opaque.introspection-client-id}") + String clientId; + + @Value("${spring.security.oauth2.resourceserver.opaque.introspection-client-secret}") + String clientSecret;*/ + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + JwtAuthenticationConverter jwtAuthenticationConverter = new JwtAuthenticationConverter(); + jwtAuthenticationConverter.setJwtGrantedAuthoritiesConverter(new KeycloakRoleConverter()); + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("http://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresInsecure()) // Only HTTP + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").authenticated() + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.oauth2ResourceServer(rsc -> rsc.jwt(jwtConfigurer -> + jwtConfigurer.jwtAuthenticationConverter(jwtAuthenticationConverter))); + /*http.oauth2ResourceServer(rsc -> rsc.opaqueToken(otc -> otc.authenticationConverter(new KeycloakOpaqueRoleConverter()) + .introspectionUri(this.introspectionUri).introspectionClientCredentials(this.clientId,this.clientSecret)));*/ + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java new file mode 100644 index 00000000..0e2b4566 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/config/ProjectSecurityProdConfig.java @@ -0,0 +1,63 @@ +package com.eazybytes.config; + +import com.eazybytes.exceptionhandling.CustomAccessDeniedHandler; +import com.eazybytes.filter.CsrfCookieFilter; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationConverter; +import org.springframework.security.web.SecurityFilterChain; +import org.springframework.security.web.authentication.www.BasicAuthenticationFilter; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; +import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; + +import java.util.Arrays; +import java.util.Collections; + +@Configuration +@Profile("prod") +public class ProjectSecurityProdConfig { + + @Bean + SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception { + JwtAuthenticationConverter jwtAuthenticationConverter = new JwtAuthenticationConverter(); + jwtAuthenticationConverter.setJwtGrantedAuthoritiesConverter(new KeycloakRoleConverter()); + CsrfTokenRequestAttributeHandler csrfTokenRequestAttributeHandler = new CsrfTokenRequestAttributeHandler(); + http.sessionManagement(sessionConfig -> sessionConfig.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .cors(corsConfig -> corsConfig.configurationSource(new CorsConfigurationSource() { + @Override + public CorsConfiguration getCorsConfiguration(HttpServletRequest request) { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOrigins(Collections.singletonList("https://localhost:4200")); + config.setAllowedMethods(Collections.singletonList("*")); + config.setAllowCredentials(true); + config.setAllowedHeaders(Collections.singletonList("*")); + config.setExposedHeaders(Arrays.asList("Authorization")); + config.setMaxAge(3600L); + return config; + } + })) + .csrf(csrfConfig -> csrfConfig.csrfTokenRequestHandler(csrfTokenRequestAttributeHandler) + .ignoringRequestMatchers("/contact", "/register") + .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())) + .addFilterAfter(new CsrfCookieFilter(), BasicAuthenticationFilter.class) + .requiresChannel(rcc -> rcc.anyRequest().requiresSecure()) // Only HTTPS + .authorizeHttpRequests((requests) -> requests + .requestMatchers("/myAccount").hasRole("USER") + .requestMatchers("/myBalance").hasAnyRole("USER", "ADMIN") + .requestMatchers("/myLoans").authenticated() + .requestMatchers("/myCards").hasRole("USER") + .requestMatchers("/user").authenticated() + .requestMatchers("/notices", "/contact", "/error", "/register").permitAll()); + http.oauth2ResourceServer(rsc -> rsc.jwt(jwtConfigurer -> + jwtConfigurer.jwtAuthenticationConverter(jwtAuthenticationConverter))); + http.exceptionHandling(ehc -> ehc.accessDeniedHandler(new CustomAccessDeniedHandler())); + return http.build(); + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/constants/ApplicationConstants.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/constants/ApplicationConstants.java new file mode 100644 index 00000000..69df255a --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/constants/ApplicationConstants.java @@ -0,0 +1,5 @@ +package com.eazybytes.constants; + +public final class ApplicationConstants { + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/AccountController.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/AccountController.java new file mode 100644 index 00000000..14775a22 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/AccountController.java @@ -0,0 +1,36 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Accounts; +import com.eazybytes.model.Customer; +import com.eazybytes.repository.AccountsRepository; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Optional; + +@RestController +@RequiredArgsConstructor +public class AccountController { + + private final AccountsRepository accountsRepository; + private final CustomerRepository customerRepository; + + @GetMapping("/myAccount") + public Accounts getAccountDetails(@RequestParam String email) { + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { + Accounts accounts = accountsRepository.findByCustomerId(optionalCustomer.get().getId()); + if (accounts != null) { + return accounts; + } else { + return null; + } + } else { + return null; + } + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/BalanceController.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/BalanceController.java new file mode 100644 index 00000000..8aaf4d11 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/BalanceController.java @@ -0,0 +1,38 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.AccountTransactions; +import com.eazybytes.model.Accounts; +import com.eazybytes.model.Customer; +import com.eazybytes.repository.AccountTransactionsRepository; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.Optional; + +@RestController +@RequiredArgsConstructor +public class BalanceController { + + private final AccountTransactionsRepository accountTransactionsRepository; + private final CustomerRepository customerRepository; + + @GetMapping("/myBalance") + public List getBalanceDetails(@RequestParam String email) { + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { + List accountTransactions = accountTransactionsRepository. + findByCustomerIdOrderByTransactionDtDesc(optionalCustomer.get().getId()); + if (accountTransactions != null) { + return accountTransactions; + } else { + return null; + } + } else { + return null; + } + } +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/CardsController.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/CardsController.java new file mode 100644 index 00000000..833c7a95 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/CardsController.java @@ -0,0 +1,37 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Cards; +import com.eazybytes.model.Customer; +import com.eazybytes.repository.CardsRepository; +import com.eazybytes.repository.CustomerRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.Optional; + +@RestController +@RequiredArgsConstructor +public class CardsController { + + private final CardsRepository cardsRepository; + private final CustomerRepository customerRepository; + + @GetMapping("/myCards") + public List getCardDetails(@RequestParam String email) { + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { + List cards = cardsRepository.findByCustomerId(optionalCustomer.get().getId()); + if (cards != null) { + return cards; + } else { + return null; + } + } else { + return null; + } + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/ContactController.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/ContactController.java new file mode 100644 index 00000000..6f02d39b --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/ContactController.java @@ -0,0 +1,43 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Contact; +import com.eazybytes.repository.ContactRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.access.prepost.PostFilter; +import org.springframework.security.access.prepost.PreFilter; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.sql.Date; +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + +@RestController +@RequiredArgsConstructor +public class ContactController { + + private final ContactRepository contactRepository; + + @PostMapping("/contact") + // @PreFilter("filterObject.contactName != 'Test'") + @PostFilter("filterObject.contactName != 'Test'") + public List saveContactInquiryDetails(@RequestBody List contacts) { + List returnContacts = new ArrayList<>(); + if(!contacts.isEmpty()) { + Contact contact = contacts.getFirst(); + contact.setContactId(getServiceReqNumber()); + contact.setCreateDt(new Date(System.currentTimeMillis())); + Contact savedContact = contactRepository.save(contact); + returnContacts.add(savedContact); + } + return returnContacts; + } + + public String getServiceReqNumber() { + Random random = new Random(); + int ranNum = random.nextInt(999999999 - 9999) + 9999; + return "SR" + ranNum; + } +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/LoansController.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/LoansController.java new file mode 100644 index 00000000..824106dc --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/LoansController.java @@ -0,0 +1,39 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Customer; +import com.eazybytes.model.Loans; +import com.eazybytes.repository.CustomerRepository; +import com.eazybytes.repository.LoanRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.security.access.prepost.PostAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.Optional; + +@RestController +@RequiredArgsConstructor +public class LoansController { + + private final LoanRepository loanRepository; + private final CustomerRepository customerRepository; + + @GetMapping("/myLoans") + @PostAuthorize("hasRole('USER')") + public List getLoanDetails(@RequestParam String email) { + Optional optionalCustomer = customerRepository.findByEmail(email); + if (optionalCustomer.isPresent()) { + List loans = loanRepository.findByCustomerIdOrderByStartDtDesc(optionalCustomer.get().getId()); + if (loans != null) { + return loans; + } else { + return null; + } + } else { + return null; + } + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/NoticesController.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/NoticesController.java new file mode 100644 index 00000000..277f7abc --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/NoticesController.java @@ -0,0 +1,32 @@ +package com.eazybytes.controller; + +import com.eazybytes.model.Notice; +import com.eazybytes.repository.NoticeRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.http.CacheControl; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.concurrent.TimeUnit; + +@RestController +@RequiredArgsConstructor +public class NoticesController { + + private final NoticeRepository noticeRepository; + + @GetMapping("/notices") + public ResponseEntity> getNotices() { + List notices = noticeRepository.findAllActiveNotices(); + if (notices != null) { + return ResponseEntity.ok() + .cacheControl(CacheControl.maxAge(60, TimeUnit.SECONDS)) + .body(notices); + } else { + return null; + } + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/UserController.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/UserController.java new file mode 100644 index 00000000..fbcad0d5 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/controller/UserController.java @@ -0,0 +1,43 @@ +package com.eazybytes.controller; + +import com.eazybytes.constants.ApplicationConstants; +import com.eazybytes.model.Customer; +import com.eazybytes.model.LoginRequestDTO; +import com.eazybytes.model.LoginResponseDTO; +import com.eazybytes.repository.CustomerRepository; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.security.Keys; +import lombok.RequiredArgsConstructor; +import org.springframework.core.env.Environment; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.authentication.ProviderManager; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.crypto.SecretKey; +import java.nio.charset.StandardCharsets; +import java.sql.Date; +import java.util.Optional; +import java.util.stream.Collectors; + +@RestController +@RequiredArgsConstructor +public class UserController { + + private final CustomerRepository customerRepository; + + @RequestMapping("/user") + public Customer getUserDetailsAfterLogin(Authentication authentication) { + Optional optionalCustomer = customerRepository.findByEmail(authentication.getName()); + return optionalCustomer.orElse(null); + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthenticationEvents.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthenticationEvents.java new file mode 100644 index 00000000..4674648a --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthenticationEvents.java @@ -0,0 +1,24 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthenticationEvents { + + @EventListener + public void onSuccess(AuthenticationSuccessEvent successEvent) { + log.info("Login successful for the user : {}", successEvent.getAuthentication().getName()); + } + + @EventListener + public void onFailure(AbstractAuthenticationFailureEvent failureEvent) { + log.error("Login failed for the user : {} due to : {}", failureEvent.getAuthentication().getName(), + failureEvent.getException().getMessage()); + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthorizationEvents.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthorizationEvents.java new file mode 100644 index 00000000..69193055 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/events/AuthorizationEvents.java @@ -0,0 +1,20 @@ +package com.eazybytes.events; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.event.EventListener; +import org.springframework.security.authentication.event.AbstractAuthenticationFailureEvent; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.authorization.event.AuthorizationDeniedEvent; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class AuthorizationEvents { + + @EventListener + public void onFailure(AuthorizationDeniedEvent deniedEvent) { + log.error("Authorization failed for the user : {} due to : {}", deniedEvent.getAuthentication().get().getName(), + deniedEvent.getAuthorizationDecision().toString()); + } + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java new file mode 100644 index 00000000..34fc860c --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomAccessDeniedHandler.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.web.access.AccessDeniedHandler; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomAccessDeniedHandler implements AccessDeniedHandler { + @Override + public void handle(HttpServletRequest request, HttpServletResponse response, + AccessDeniedException accessDeniedException) throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (accessDeniedException != null && accessDeniedException.getMessage() != null) ? + accessDeniedException.getMessage() : "Authorization failed"; + String path = request.getRequestURI(); + response.setHeader("eazybank-denied-reason", "Authorization failed"); + response.setStatus(HttpStatus.FORBIDDEN.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.FORBIDDEN.value(), HttpStatus.FORBIDDEN.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java new file mode 100644 index 00000000..20555494 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/exceptionhandling/CustomBasicAuthenticationEntryPoint.java @@ -0,0 +1,32 @@ +package com.eazybytes.exceptionhandling; + +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.AuthenticationEntryPoint; + +import java.io.IOException; +import java.time.LocalDateTime; + +public class CustomBasicAuthenticationEntryPoint implements AuthenticationEntryPoint { + @Override + public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) + throws IOException, ServletException { + // Populate dynamic values + LocalDateTime currentTimeStamp = LocalDateTime.now(); + String message = (authException != null && authException.getMessage() != null) ? authException.getMessage() + : "Unauthorized"; + String path = request.getRequestURI(); + response.setHeader("eazybank-error-reason", "Authentication failed"); + response.setStatus(HttpStatus.UNAUTHORIZED.value()); + response.setContentType("application/json;charset=UTF-8"); + // Construct the JSON response + String jsonResponse = + String.format("{\"timestamp\": \"%s\", \"status\": %d, \"error\": \"%s\", \"message\": \"%s\", \"path\": \"%s\"}", + currentTimeStamp, HttpStatus.UNAUTHORIZED.value(), HttpStatus.UNAUTHORIZED.getReasonPhrase(), + message, path); + response.getWriter().write(jsonResponse); + } +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java new file mode 100644 index 00000000..be9f9438 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/filter/CsrfCookieFilter.java @@ -0,0 +1,23 @@ +package com.eazybytes.filter; + +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.security.web.csrf.CsrfToken; +import org.springframework.web.filter.OncePerRequestFilter; + +import java.io.IOException; + +public class CsrfCookieFilter extends OncePerRequestFilter { + + + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) + throws ServletException, IOException { + CsrfToken csrfToken = (CsrfToken) request.getAttribute(CsrfToken.class.getName()); + // Render the token value to a cookie by causing the deferred token to be loaded + csrfToken.getToken(); + filterChain.doFilter(request, response); + } +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/AccountTransactions.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/AccountTransactions.java new file mode 100644 index 00000000..b2833f59 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/AccountTransactions.java @@ -0,0 +1,46 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter +@Setter +@Table(name="account_transactions") +public class AccountTransactions { + + @Id + @Column(name = "transaction_id") + private String transactionId; + + @Column(name="account_number") + private long accountNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name="transaction_dt") + private Date transactionDt; + + @Column(name = "transaction_summary") + private String transactionSummary; + + @Column(name="transaction_type") + private String transactionType; + + @Column(name = "transaction_amt") + private int transactionAmt; + + @Column(name = "closing_balance") + private int closingBalance; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Accounts.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Accounts.java new file mode 100644 index 00000000..30a6bcba --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Accounts.java @@ -0,0 +1,32 @@ +package com.eazybytes.model; + + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +public class Accounts { + + @Column(name = "customer_id") + private long customerId; + + @Id + @Column(name="account_number") + private long accountNumber; + + @Column(name="account_type") + private String accountType; + + @Column(name = "branch_address") + private String branchAddress; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Authority.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Authority.java new file mode 100644 index 00000000..706f8137 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Authority.java @@ -0,0 +1,22 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +@Entity +@Getter @Setter +@Table(name="authorities") +public class Authority { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + + private String name; + + @ManyToOne + @JoinColumn(name="customer_id") + private Customer customer; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Cards.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Cards.java new file mode 100644 index 00000000..8a090acb --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Cards.java @@ -0,0 +1,39 @@ +package com.eazybytes.model; + +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "cards") +public class Cards { + + @Id + @Column(name = "card_id") + private long cardId; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "card_number") + private String cardNumber; + + @Column(name = "card_type") + private String cardType; + + @Column(name = "total_limit") + private int totalLimit; + + @Column(name = "amount_used") + private int amountUsed; + + @Column(name = "available_amount") + private int availableAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Contact.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Contact.java new file mode 100644 index 00000000..3de986d5 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Contact.java @@ -0,0 +1,34 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "contact_messages") +public class Contact { + + @Id + @Column(name = "contact_id") + private String contactId; + + @Column(name = "contact_name") + private String contactName; + + @Column(name = "contact_email") + private String contactEmail; + + private String subject; + + private String message; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Customer.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Customer.java new file mode 100644 index 00000000..0395ce85 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Customer.java @@ -0,0 +1,41 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.persistence.*; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; +import java.util.Set; + +@Entity +@Getter @Setter +public class Customer { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "customer_id") + private long id; + + private String name; + + private String email; + + @Column(name = "mobile_number") + private String mobileNumber; + + @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) + private String pwd; + + private String role; + + @Column(name = "create_dt") + @JsonIgnore + private Date createDt; + + @OneToMany(mappedBy = "customer", fetch = FetchType.EAGER) + @JsonIgnore + private Set authorities; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Loans.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Loans.java new file mode 100644 index 00000000..f779eb20 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Loans.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "loans") +public class Loans { + + @Id + @Column(name = "loan_number") + private long loanNumber; + + @Column(name = "customer_id") + private long customerId; + + @Column(name = "start_dt") + private Date startDt; + + @Column(name = "loan_type") + private String loanType; + + @Column(name = "total_loan") + private int totalLoan; + + @Column(name = "amount_paid") + private int amountPaid; + + @Column(name = "outstanding_amount") + private int outstandingAmount; + + @Column(name = "create_dt") + private Date createDt; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginRequestDTO.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginRequestDTO.java new file mode 100644 index 00000000..3cedcfd4 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginRequestDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginRequestDTO(String username, String password) { +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginResponseDTO.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginResponseDTO.java new file mode 100644 index 00000000..bb263c5a --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/LoginResponseDTO.java @@ -0,0 +1,4 @@ +package com.eazybytes.model; + +public record LoginResponseDTO(String status, String jwtToken) { +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Notice.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Notice.java new file mode 100644 index 00000000..7ed13868 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/model/Notice.java @@ -0,0 +1,42 @@ +package com.eazybytes.model; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; + +import java.sql.Date; + +@Entity +@Getter @Setter +@Table(name = "notice_details") +public class Notice { + + @Id + @Column(name = "notice_id") + private long noticeId; + + @Column(name = "notice_summary") + private String noticeSummary; + + @Column(name = "notice_details") + private String noticeDetails; + + @Column(name = "notic_beg_dt") + private Date noticBegDt; + + @Column(name = "notic_end_dt") + private Date noticEndDt; + + @JsonIgnore + @Column(name = "create_dt") + private Date createDt; + + @JsonIgnore + @Column(name = "update_dt") + private Date updateDt; + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java new file mode 100644 index 00000000..a06c2fd7 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountTransactionsRepository.java @@ -0,0 +1,15 @@ +package com.eazybytes.repository; + +import java.util.List; + +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +import com.eazybytes.model.AccountTransactions; + +@Repository +public interface AccountTransactionsRepository extends CrudRepository { + + List findByCustomerIdOrderByTransactionDtDesc(long customerId); + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountsRepository.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountsRepository.java new file mode 100644 index 00000000..6ae5d8f4 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/AccountsRepository.java @@ -0,0 +1,12 @@ +package com.eazybytes.repository; + +import com.eazybytes.model.Accounts; +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface AccountsRepository extends CrudRepository { + + Accounts findByCustomerId(long customerId); + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CardsRepository.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CardsRepository.java new file mode 100644 index 00000000..61e1f4f5 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CardsRepository.java @@ -0,0 +1,16 @@ +package com.eazybytes.repository; + +import java.util.List; + +import com.eazybytes.model.Loans; +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +import com.eazybytes.model.Cards; + +@Repository +public interface CardsRepository extends CrudRepository { + + List findByCustomerId(long customerId); + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/ContactRepository.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/ContactRepository.java new file mode 100644 index 00000000..0ec283fd --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/ContactRepository.java @@ -0,0 +1,12 @@ +package com.eazybytes.repository; + +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +import com.eazybytes.model.Contact; + +@Repository +public interface ContactRepository extends CrudRepository { + + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CustomerRepository.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CustomerRepository.java new file mode 100644 index 00000000..f8535711 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/CustomerRepository.java @@ -0,0 +1,14 @@ +package com.eazybytes.repository; + +import com.eazybytes.model.Customer; +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +import java.util.Optional; + +@Repository +public interface CustomerRepository extends CrudRepository { + + Optional findByEmail(String email); + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/LoanRepository.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/LoanRepository.java new file mode 100644 index 00000000..ea804983 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/LoanRepository.java @@ -0,0 +1,17 @@ +package com.eazybytes.repository; + +import java.util.List; + +import org.springframework.data.repository.CrudRepository; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.stereotype.Repository; + +import com.eazybytes.model.Loans; + +@Repository +public interface LoanRepository extends CrudRepository { + + // @PreAuthorize("hasRole('USER')") + List findByCustomerIdOrderByStartDtDesc(long customerId); + +} diff --git a/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/NoticeRepository.java b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/NoticeRepository.java new file mode 100644 index 00000000..3e50bf67 --- /dev/null +++ b/section_16/springsecsection_16/src/main/java/com/eazybytes/repository/NoticeRepository.java @@ -0,0 +1,17 @@ +package com.eazybytes.repository; + +import java.util.List; + +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.CrudRepository; +import org.springframework.stereotype.Repository; + +import com.eazybytes.model.Notice; + +@Repository +public interface NoticeRepository extends CrudRepository { + + @Query(value = "from Notice n where CURDATE() BETWEEN noticBegDt AND noticEndDt") + List findAllActiveNotices(); + +} diff --git a/section_16/springsecsection_16/src/main/resources/application.properties b/section_16/springsecsection_16/src/main/resources/application.properties new file mode 100644 index 00000000..c2dbfbd8 --- /dev/null +++ b/section_16/springsecsection_16/src/main/resources/application.properties @@ -0,0 +1,21 @@ +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:TRACE} + +spring.config.import = application_prod.properties +spring.profiles.active = default + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:true} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:true} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:20m} + +spring.security.oauth2.resourceserver.jwt.jwk-set-uri=${JWK_SET_URI:http://localhost:9000/oauth2/jwks} + +#spring.security.oauth2.resourceserver.opaque.introspection-uri= ${INTROSPECT_URI:http://localhost:9000/oauth2/introspect} +#spring.security.oauth2.resourceserver.opaque.introspection-client-id=${INTROSPECT_ID:eazybankintrospect} +#spring.security.oauth2.resourceserver.opaque.introspection-client-secret=${INTROSPECT_SECRET:c1BK9Bg2REeydBbvUoUeKCbD2bvJzXGj} \ No newline at end of file diff --git a/section_16/springsecsection_16/src/main/resources/application_prod.properties b/section_16/springsecsection_16/src/main/resources/application_prod.properties new file mode 100644 index 00000000..2ad41f48 --- /dev/null +++ b/section_16/springsecsection_16/src/main/resources/application_prod.properties @@ -0,0 +1,15 @@ +spring.config.activate.on-profile= prod +spring.application.name=${SPRING_APP_NAME:eazybankbackend} +logging.level.org.springframework.security=${SPRING_SECURITY_LOG_LEVEL:ERROR} + +spring.datasource.url=jdbc:mysql://${DATABASE_HOST:localhost}:${DATABASE_PORT:3306}/${DATABASE_NAME:eazybank} +spring.datasource.username=${DATABASE_USERNAME:root} +spring.datasource.password=${DATABASE_PASSWORD:root} +spring.jpa.show-sql=${JPA_SHOW_SQL:false} +spring.jpa.properties.hibernate.format_sql=${HIBERNATE_FORMAT_SQL:false} + +logging.pattern.console = ${LOGPATTERN_CONSOLE:%green(%d{HH:mm:ss.SSS}) %blue(%-5level) %red([%thread]) %yellow(%logger{15}) - %msg%n} + +server.servlet.session.timeout=${SESSION_TIMEOUT:10m} + +spring.security.oauth2.resourceserver.jwt.jwk-set-uri=${JWK_SET_URI:http://localhost:8180/realms/eazybankdev/protocol/openid-connect/certs} diff --git a/section_16/springsecsection_16/src/main/resources/sql/scripts.sql b/section_16/springsecsection_16/src/main/resources/sql/scripts.sql new file mode 100644 index 00000000..86a4af5e --- /dev/null +++ b/section_16/springsecsection_16/src/main/resources/sql/scripts.sql @@ -0,0 +1,192 @@ +drop table `authorities`; +drop table `users`; +drop table `customer`; + +CREATE TABLE `customer` ( + `customer_id` int NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + `email` varchar(100) NOT NULL, + `mobile_number` varchar(20) NOT NULL, + `pwd` varchar(500) NOT NULL, + `role` varchar(100) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`customer_id`) +); + +INSERT INTO `customer` (`name`,`email`,`mobile_number`, `pwd`, `role`,`create_dt`) + VALUES ('Happy','happy@example.com','5334122365', '{bcrypt}$2a$12$88.f6upbBvy0okEa7OfHFuorV29qeK.sVbB9VQ6J6dWM1bW6Qef8m', 'admin',CURDATE()); + +CREATE TABLE `accounts` ( + `customer_id` int NOT NULL, + `account_number` int NOT NULL, + `account_type` varchar(100) NOT NULL, + `branch_address` varchar(200) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`account_number`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `accounts` (`customer_id`, `account_number`, `account_type`, `branch_address`, `create_dt`) + VALUES (1, 1865764534, 'Savings', '123 Main Street, New York', CURDATE()); + +CREATE TABLE `account_transactions` ( + `transaction_id` varchar(200) NOT NULL, + `account_number` int NOT NULL, + `customer_id` int NOT NULL, + `transaction_dt` date NOT NULL, + `transaction_summary` varchar(200) NOT NULL, + `transaction_type` varchar(100) NOT NULL, + `transaction_amt` int NOT NULL, + `closing_balance` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`transaction_id`), + KEY `customer_id` (`customer_id`), + KEY `account_number` (`account_number`), + CONSTRAINT `accounts_ibfk_2` FOREIGN KEY (`account_number`) REFERENCES `accounts` (`account_number`) ON DELETE CASCADE, + CONSTRAINT `acct_user_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + + + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 7 DAY), 'Coffee Shop', 'Withdrawal', 30,34500,DATE_SUB(CURDATE(), INTERVAL 7 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 6 DAY), 'Uber', 'Withdrawal', 100,34400,DATE_SUB(CURDATE(), INTERVAL 6 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 5 DAY), 'Self Deposit', 'Deposit', 500,34900,DATE_SUB(CURDATE(), INTERVAL 5 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 4 DAY), 'Ebay', 'Withdrawal', 600,34300,DATE_SUB(CURDATE(), INTERVAL 4 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 2 DAY), 'OnlineTransfer', 'Deposit', 700,35000,DATE_SUB(CURDATE(), INTERVAL 2 DAY)); + +INSERT INTO `account_transactions` (`transaction_id`, `account_number`, `customer_id`, `transaction_dt`, `transaction_summary`, `transaction_type`,`transaction_amt`, +`closing_balance`, `create_dt`) VALUES (UUID(), 1865764534, 1, DATE_SUB(CURDATE(), INTERVAL 1 DAY), 'Amazon.com', 'Withdrawal', 100,34900,DATE_SUB(CURDATE(), INTERVAL 1 DAY)); + + +CREATE TABLE `loans` ( + `loan_number` int NOT NULL AUTO_INCREMENT, + `customer_id` int NOT NULL, + `start_dt` date NOT NULL, + `loan_type` varchar(100) NOT NULL, + `total_loan` int NOT NULL, + `amount_paid` int NOT NULL, + `outstanding_amount` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`loan_number`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `loan_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2020-10-13', 'Home', 200000, 50000, 150000, '2020-10-13'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2020-06-06', 'Vehicle', 40000, 10000, 30000, '2020-06-06'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2018-02-14', 'Home', 50000, 10000, 40000, '2018-02-14'); + +INSERT INTO `loans` ( `customer_id`, `start_dt`, `loan_type`, `total_loan`, `amount_paid`, `outstanding_amount`, `create_dt`) + VALUES ( 1, '2018-02-14', 'Personal', 10000, 3500, 6500, '2018-02-14'); + +CREATE TABLE `cards` ( + `card_id` int NOT NULL AUTO_INCREMENT, + `card_number` varchar(100) NOT NULL, + `customer_id` int NOT NULL, + `card_type` varchar(100) NOT NULL, + `total_limit` int NOT NULL, + `amount_used` int NOT NULL, + `available_amount` int NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`card_id`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `card_customer_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) ON DELETE CASCADE +); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('4565XXXX4656', 1, 'Credit', 10000, 500, 9500, CURDATE()); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('3455XXXX8673', 1, 'Credit', 7500, 600, 6900, CURDATE()); + +INSERT INTO `cards` (`card_number`, `customer_id`, `card_type`, `total_limit`, `amount_used`, `available_amount`, `create_dt`) + VALUES ('2359XXXX9346', 1, 'Credit', 20000, 4000, 16000, CURDATE()); + +CREATE TABLE `notice_details` ( + `notice_id` int NOT NULL AUTO_INCREMENT, + `notice_summary` varchar(200) NOT NULL, + `notice_details` varchar(500) NOT NULL, + `notic_beg_dt` date NOT NULL, + `notic_end_dt` date DEFAULT NULL, + `create_dt` date DEFAULT NULL, + `update_dt` date DEFAULT NULL, + PRIMARY KEY (`notice_id`) +); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Home Loan Interest rates reduced', 'Home loan interest rates are reduced as per the goverment guidelines. The updated rates will be effective immediately', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Net Banking Offers', 'Customers who will opt for Internet banking while opening a saving account will get a $50 amazon voucher', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Mobile App Downtime', 'The mobile application of the EazyBank will be down from 2AM-5AM on 12/05/2020 due to maintenance activities', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('E Auction notice', 'There will be a e-auction on 12/08/2020 on the Bank website for all the stubborn arrears.Interested parties can participate in the e-auction', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('Launch of Millennia Cards', 'Millennia Credit Cards are launched for the premium customers of EazyBank. With these cards, you will get 5% cashback for each purchase', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +INSERT INTO `notice_details` ( `notice_summary`, `notice_details`, `notic_beg_dt`, `notic_end_dt`, `create_dt`, `update_dt`) +VALUES ('COVID-19 Insurance', 'EazyBank launched an insurance policy which will cover COVID-19 expenses. Please reach out to the branch for more details', +CURDATE() - INTERVAL 30 DAY, CURDATE() + INTERVAL 30 DAY, CURDATE(), null); + +CREATE TABLE `contact_messages` ( + `contact_id` varchar(50) NOT NULL, + `contact_name` varchar(50) NOT NULL, + `contact_email` varchar(100) NOT NULL, + `subject` varchar(500) NOT NULL, + `message` varchar(2000) NOT NULL, + `create_dt` date DEFAULT NULL, + PRIMARY KEY (`contact_id`) +); + +CREATE TABLE `authorities` ( + `id` int NOT NULL AUTO_INCREMENT, + `customer_id` int NOT NULL, + `name` varchar(50) NOT NULL, + PRIMARY KEY (`id`), + KEY `customer_id` (`customer_id`), + CONSTRAINT `authorities_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`customer_id`) +); + +INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWACCOUNT'); + +INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWCARDS'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWLOANS'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'VIEWBALANCE'); + +DELETE FROM `authorities`; + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'ROLE_USER'); + + INSERT INTO `authorities` (`customer_id`, `name`) + VALUES (1, 'ROLE_ADMIN'); \ No newline at end of file diff --git a/section_16/springsecsection_16/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java b/section_16/springsecsection_16/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java new file mode 100644 index 00000000..dc2d07c2 --- /dev/null +++ b/section_16/springsecsection_16/src/test/java/com/eazybytes/EazyBankBackendApplicationTests.java @@ -0,0 +1,13 @@ +package com.eazybytes; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class EazyBankBackendApplicationTests { + + @Test + void contextLoads() { + } + +}

mRe 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/icon-1.png b/section7/eazyschool-start/src/main/resources/static/assets/images/icon-1.png new file mode 100644 index 0000000000000000000000000000000000000000..e9ac53a69980e3c53e3b7409046ba312611ccffe GIT binary patch literal 1524 zcmVQi>>dKh9M$RlZBWlEm1n#}( zefmTEaj)F-fZKf7|Y;Ws{mloL$7*IdE@=3!NI1ONg%^_`?Tc4D7tmIm>wTWm?aAw6mVfc+|FpmH;Y+mVx-`IP8 zO-%Y$eb2f3L7?}7d z7?1(x$VL)I4!QvibE?t}pZ_&x%mw&K00N*ZM5xhRu1&eME89#1Fzb<406>=d>In;(EubsSBX%gxm}xbkDBWo5_Wv=EEfl*CUUsMR|A)Ef6#(&tw3i0GtUeZr+3 zc5FaiZE-7zn(aLQnp@vvB{=8Pq5u&cu#v3;Q>&L)9*OnOY262in)7Ol!&a#2)+98s z)iV2I=4K*oirOOvYvsqS7S$7vs~C51PfW{7kFMFJHq_-sd6- z+L@G*wmjRSS)H1z1bJmJ~aKty#y*P4cnO27DQ#k`<7pZjQmY+SIjxUci?agZ|f0LAj{Gi(L4Y-tv4 z-tRp!U{nK035x2{CwY#SoVk5}rsNCJ^;6qiX~>rWo(9G+hYPj`p%b95geG2L{WKeVKp@)nKgH-__N(|Lz^!Xf&$5fx;zB{0000vsu+S&cR;Wd+6*ZY6H6-w zLvgiWI3;=1y!y0@Nl>eEtkLC{%IW;O|-q zc~XX)zwh0@_x=2R0wH0x{DOL2FU{N$96U-`2^<$j2}F%p*aTd)?uCI@pzq!BbC;m# zSFwRtV3a`A2<$>ZT_)%=HT(*M?K*yZehLr20{tRW*_^OsbA>>Q1e^f?0qh8fyrz!l z3aRA-PCixz(xx$4mzL>()(J?u8x$iT>44Vj(lXPgG0DmKr@oF_>s~dPsccTvrDXz` z>Wu3$Z!NBBx|b6Du7gbhOEy>9i}%5l8_NQ=1PHVkM(i;r@cV(~j`f453vu=Fhv)g% zZ)LCh*c1@JP8hL%V0#Y;h&+Lk?f<=YT0rEvc-a)t)bSjE+7Uu)ZY&G>?uEQ+w2)dp zNSj8cMX~^IJFSfgHPh>D9BD69)U&&BRnrxSRRL51*Z^z+R27KTxT@(zJ-f@v$=(aO zyZhArg^uCxM#DbW3Cb7R!PeF48|7Q`=XC%$IhJ_+?(8)u3?4QY>cqThoZD-De@?(O z0PMAX+?+R!yYKbv7j8aQ1=8lrQ#Q#bHp!*VaRR1olAkY@H{QmCdcUaO`pU)0lECH4 zs}pr;-D{Ek06@YkjzCK-vaeh!Z#<5x+Ow_HjYd%Jz%Ddr<`(v4W7`3(^;&!f5)No> zUpBVq%-ljy{=hCI$=T{QE+9TBLU{-P4mpnqbpBAtY4_g0=8xQk+6(`nXG@*ynlp`A zk3<52-Gx5R+`iCl+)b$D_dW36oePZ;h#CXm3k|#iqXeRc;6DHNt6^@wkpfX;;1&1< XL17x9I-ZOc00000NkvXXu0mjfs25Y_ literal 0 HcmV?d00001 diff --git a/section7/eazyschool-start/src/main/resources/static/assets/images/icon-3.png b/section7/eazyschool-start/src/main/resources/static/assets/images/icon-3.png new file mode 100644 index 0000000000000000000000000000000000000000..98daf8d0928634cfd2a46fc3a6a1aabfee4ec1c0 GIT binary patch literal 940 zcmV;d15^BoP)mkx_I?Sx5KbI-0no z$vN-iMH5M~tXb1+$HDo*fy0x$&;S2_auRsoKuAbPNRUWn!6pWL;3lvLavk9cFb~YC z$e)PJc#+6-^RW}x8fj!{@9sz3T&@q*UQvAlhyz_HG0=yAc3_=@H(y^bp1)1d7g60vCKIPr><)2Py<#~e zKpfS$z{`@)VH1Nh2wz&){nR}^ap5+mdyMA|pzI=_>#a|_oGOpdYpWkaWlNE-)R<9c zEO`dN9~s&#)*e80M?F(6#f(pud3KA2D_{6;*2diq+AXSa;3;4|s(qmAs!J%S?i62l z+Tp>I0Qi1?ZR2tik!j#O@P~@bf?N{oovQZkqVJlIkn>UUo61`1@LO)njfFn(?el_e zM|B%$v`Ucv6%1z)IjzVkb<7W$2Ro+Q4u9xXF}k9^y1oMip zK@$cDnlM1ngaLvk3=lN;eSn&qdOJM$IdBD-Q<1;am<#!6%S_9A<7+-qC?)fDqO~cT z=@o0A6xGLp$AB2R@=mn&sf5~Bi?^a6)~7k`VG{$tBl0uwlXaZ$Qk`ADcI+FyqkZqf z(F3OK^87Q#_qPJiq53T8RL{LW8|^{02iRpi%L8*4=k4&|*J{ic*|zp?xpBR0#Xkq% zaHFZkm&Dpvn7gyn&?d3=2&!8Fi^!B3bI2J>p1m7-At50l!SOE{3QO0m`vXJ( O0000GkYG=^Zqfd)?6lO&k_ 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

ev9p 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 `t{Gpkf&}CQ*O{e+u0(`zB;{r0=C{C=GXZ*o2 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

mRe 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 literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/icon-1.png b/section7/eazyschool-end/src/main/resources/static/assets/images/icon-1.png new file mode 100644 index 0000000000000000000000000000000000000000..e9ac53a69980e3c53e3b7409046ba312611ccffe GIT binary patch literal 1524 zcmVQi>>dKh9M$RlZBWlEm1n#}( zefmTEaj)F-fZKf7|Y;Ws{mloL$7*IdE@=3!NI1ONg%^_`?Tc4D7tmIm>wTWm?aAw6mVfc+|FpmH;Y+mVx-`IP8 zO-%Y$eb2f3L7?}7d z7?1(x$VL)I4!QvibE?t}pZ_&x%mw&K00N*ZM5xhRu1&eME89#1Fzb<406>=d>In;(EubsSBX%gxm}xbkDBWo5_Wv=EEfl*CUUsMR|A)Ef6#(&tw3i0GtUeZr+3 zc5FaiZE-7zn(aLQnp@vvB{=8Pq5u&cu#v3;Q>&L)9*OnOY262in)7Ol!&a#2)+98s z)iV2I=4K*oirOOvYvsqS7S$7vs~C51PfW{7kFMFJHq_-sd6- z+L@G*wmjRSS)H1z1bJmJ~aKty#y*P4cnO27DQ#k`<7pZjQmY+SIjxUci?agZ|f0LAj{Gi(L4Y-tv4 z-tRp!U{nK035x2{CwY#SoVk5}rsNCJ^;6qiX~>rWo(9G+hYPj`p%b95geG2L{WKeVKp@)nKgH-__N(|Lz^!Xf&$5fx;zB{0000vsu+S&cR;Wd+6*ZY6H6-w zLvgiWI3;=1y!y0@Nl>eEtkLC{%IW;O|-q zc~XX)zwh0@_x=2R0wH0x{DOL2FU{N$96U-`2^<$j2}F%p*aTd)?uCI@pzq!BbC;m# zSFwRtV3a`A2<$>ZT_)%=HT(*M?K*yZehLr20{tRW*_^OsbA>>Q1e^f?0qh8fyrz!l z3aRA-PCixz(xx$4mzL>()(J?u8x$iT>44Vj(lXPgG0DmKr@oF_>s~dPsccTvrDXz` z>Wu3$Z!NBBx|b6Du7gbhOEy>9i}%5l8_NQ=1PHVkM(i;r@cV(~j`f453vu=Fhv)g% zZ)LCh*c1@JP8hL%V0#Y;h&+Lk?f<=YT0rEvc-a)t)bSjE+7Uu)ZY&G>?uEQ+w2)dp zNSj8cMX~^IJFSfgHPh>D9BD69)U&&BRnrxSRRL51*Z^z+R27KTxT@(zJ-f@v$=(aO zyZhArg^uCxM#DbW3Cb7R!PeF48|7Q`=XC%$IhJ_+?(8)u3?4QY>cqThoZD-De@?(O z0PMAX+?+R!yYKbv7j8aQ1=8lrQ#Q#bHp!*VaRR1olAkY@H{QmCdcUaO`pU)0lECH4 zs}pr;-D{Ek06@YkjzCK-vaeh!Z#<5x+Ow_HjYd%Jz%Ddr<`(v4W7`3(^;&!f5)No> zUpBVq%-ljy{=hCI$=T{QE+9TBLU{-P4mpnqbpBAtY4_g0=8xQk+6(`nXG@*ynlp`A zk3<52-Gx5R+`iCl+)b$D_dW36oePZ;h#CXm3k|#iqXeRc;6DHNt6^@wkpfX;;1&1< XL17x9I-ZOc00000NkvXXu0mjfs25Y_ literal 0 HcmV?d00001 diff --git a/section7/eazyschool-end/src/main/resources/static/assets/images/icon-3.png b/section7/eazyschool-end/src/main/resources/static/assets/images/icon-3.png new file mode 100644 index 0000000000000000000000000000000000000000..98daf8d0928634cfd2a46fc3a6a1aabfee4ec1c0 GIT binary patch literal 940 zcmV;d15^BoP)mkx_I?Sx5KbI-0no z$vN-iMH5M~tXb1+$HDo*fy0x$&;S2_auRsoKuAbPNRUWn!6pWL;3lvLavk9cFb~YC z$e)PJc#+6-^RW}x8fj!{@9sz3T&@q*UQvAlhyz_HG0=yAc3_=@H(y^bp1)1d7g60vCKIPr><)2Py<#~e zKpfS$z{`@)VH1Nh2wz&){nR}^ap5+mdyMA|pzI=_>#a|_oGOpdYpWkaWlNE-)R<9c zEO`dN9~s&#)*e80M?F(6#f(pud3KA2D_{6;*2diq+AXSa;3;4|s(qmAs!J%S?i62l z+Tp>I0Qi1?ZR2tik!j#O@P~@bf?N{oovQZkqVJlIkn>UUo61`1@LO)njfFn(?el_e zM|B%$v`Ucv6%1z)IjzVkb<7W$2Ro+Q4u9xXF}k9^y1oMip zK@$cDnlM1ngaLvk3=lN;eSn&qdOJM$IdBD-Q<1;am<#!6%S_9A<7+-qC?)fDqO~cT z=@o0A6xGLp$AB2R@=mn&sf5~Bi?^a6)~7k`VG{$tBl0uwlXaZ$Qk`ADcI+FyqkZqf z(F3OK^87Q#_qPJiq53T8RL{LW8|^{02iRpi%L8*4=k4&|*J{ic*|zp?xpBR0#Xkq% zaHFZkm&Dpvn7gyn&?d3=2&!8Fi^!B3bI2J>p1m7-At50l!SOE{3QO0m`vXJ( O0000GkYG=^Zqfd)?6lO&k_ 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

ev9p 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 `t{Gpkf&}CQ*O{e+u0(`zB;{r0=C{C=GXZ*o2 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